решение по развертыванию wordpress, идеи?

Я разрабатываю на локальной машине сайт Wordpress и сейчас ищу механизм для его простого и быстрого развертывания. Я думаю о среде DEV (расположенной на моем локальном компьютере), среде STAGING (субдомен на странице клиента, возможно, staging.example.com) и, конечно же, среде LIVE (example.com)!

Мой текущий обходной путь: работая с Aptana, я могу синхронизировать измененные файлы с механизмом развертывания, предоставляемым IDE. Экспорт моей локальной базы данных, поиск/замена постоянных ссылок и импорт всего этого - готово! Чтобы развернуть в реальном времени, мне нужно заменить все промежуточные файлы файлами в реальном времени.

Это должно быть проще! Есть ли кто-нибудь, у кого рабочий процесс лучше? Я открыт и очень рад вашим идеям!

Спасибо большое привет


person ChristianB    schedule 28.10.2011    source источник


Ответы (3)


Да, это разочаровывает и совершенно безумно, что Wordpress требует этого процесса, потому что они помещают абсолютные URL-адреса в базу данных. Я разрабатываю аналогичным образом, используя несколько промежуточных сайтов для контроля качества и отзывов клиентов. После моего первого развертывания с Wordpress я почти полностью отказался от этой платформы. Все решения, рекомендованные основными разработчиками и другими, просто не работали.

Поэтому я написал плагин: http://wordpress.org/extend/plugins/root-relative-urls/, которые устраняют проблему. С этим плагином вам не нужно искать и заменять ваш контент. Никаких взломов файлов hosts или трюков с DNS. С моим плагином вы можете получить доступ к сайту через IP-адрес или имя компьютера или любой тип переадресованного хоста. А поскольку он преобразует URL-адреса в относительные корневые до того, как они попадут в базу данных, вам не придется беспокоиться об их работе между различными форматами доменов. И поскольку они не жестко кодируют схему (http/s) в URL-адресе, вам не придется беспокоиться о 520 или около того ошибках, о которых сообщалось в базе данных wordpress trac, если вы используете SSL.

Это основной продукт для любого проекта WordPress, над которым я работаю в эти дни. И я написал пару других плагинов для решения идиосинкразий, существующих на платформе, которые вы можете проверить здесь: http://wordpress.org/extend/plugins/profile/marcuspope

Надеюсь, это ответит на вашу проблему.

person Marcus Pope    schedule 17.11.2011

Я использую Capistrano https://github.com/capistrano/capistrano/wiki/ для всех моих потребности развертывания, и это действительно хорошее решение. Вы можете просто написать что угодно, и это просто работает.

Это может работать и для вашей схемы развертывания.

person Petr    schedule 28.10.2011
comment
capistrano кажется хорошим инструментом, но немного большим для моей цели. возможно ли написать php-скрипт, который генерирует дамп БД, выполняет поиск/замену по всем URL-адресам, очищает живую БД и импортирует дамп и, наконец, копирует папку загрузки из промежуточной в живую.... может ли это выполнить php-скрипт? - person ChristianB; 17.11.2011

Я также использую Capistrano для развертывания WordPress и Drupal. Обычно я устанавливаю модули локально для тестирования, а затем отправляю их в тестовую и производственную среды. Для загрузки и т. д. Я добавляю пользовательские задачи для управления синхронизацией файлов, хранящихся в scm, и тех, которые не хранятся. Вот простое руководство, которое я собрал.

http://www.celerify.com/deploy-wordpress-drupal-using-capistrano

person pattersonc    schedule 14.09.2013