Самый Безупречный Способ Перехода от Разработчика к Производителю [дубликат]


Возможный Дубликат:
Легко переместить установку WordPress из разработки в Производство?

Итак, я уже некоторое время работаю с WordPress и обычно разрабатываю локально, а затем загружаю все на свой сервер Prod... тем не менее, я испытал много разных результатов, особенно при использовании плагинов.

Обычно я экспортирую базу данных, но такие вещи, как местоположение домена, не всегда меняются, даже после предварительного изменения их в администраторе WP.

Как лучше всего перейти от разработки к разработке и сохранить все в целости?

Тогда, каков наилучший способ переместить ваш сайт из подкаталога в том же домене?

Пожалуйста, не указывайте мне в направлении документов WP... это первое место, куда я заглянул.

Author: Community, 2011-11-18

6 answers

Любая разница между dev и prod плохая. Вот что я делаю:

  • Имеют другой ip-адрес для сервера разработки (Неважно, внутренний, внешний или на локальном компьютере) - но сервер разработки должен иметь точно такую же настройку (см. Нижний абзац)
  • Измените файл hosts (см. Здесь) ( на вашем или тестовом компьютере или виртуальной машине), чтобы указать ip-адрес сервера разработки
  • Результат: HTTP-запросы, отправленные на сервер разработки, имеют хост поле заголовка устанавливается как "example.com " точно так же, как это будет для сервера prod.

Этот метод устраняет два различия, часто встречающиеся в противном случае:

  1. необходимость изменить доменное имя
  2. имея код разработчика в подкаталоге, но код продукта в корневом или другом подкаталоге. Это потому, что я использую git для передачи файлов между разработчиком и производителем.

.

.

Сервер разработки настроен точно так же, как и сервер prod (см. Шеф-повар или Марионетка для программного управления серверами).

 1
Author: Alexander Bird, 2011-11-21 19:13:14

По моему опыту, я использовал Плагин поиска и замены , чтобы повторно ссылаться на все ссылки на старый домен. Не самое чистое решение, но, похоже, работает.

 1
Author: GavinR, 2011-11-18 17:44:32

Я регулярно выполняю одно и то же развертывание разработки, поэтому я разработал для него несколько стандартных запросов:

  1. Обновите URL-адрес сайта:

    ОБНОВИТЬ ПАРАМЕТРЫ wp_options УСТАНОВИТЬ значение параметра option_value = заменить(значение параметра, '[DEV_URL]', '[PROD_URL]'), ГДЕ имя параметра = 'главная' ИЛИ имя параметра = 'siteurl' ИЛИ имя параметра = 'загружаемый файл_url';

  2. Обновите путь загрузки:

    ОБНОВИТЕ параметры wp_options, УСТАНОВИТЕ значение option_value = '[ПУТЬ к сайту]/wp-контент/загрузки', ГДЕ имя_параметра = 'путь к загрузке';

  3. Обновите идентификаторы сообщений:

    ОБНОВИТЬ wp_posts, УСТАНОВИТЬ идентификатор guid = заменить(идентификатор guid, '[DEV_URL]', '[PROD_URL]');

  4. Обновите URL-адреса в сообщениях:

    ОБНОВИТЬ wp_posts, УСТАНОВИТЬ post_content = заменить(post_content, '[DEV_URL]', '[PROD_URL]');

Замените заключенные в квадратные скобки переменные фактическими значениями, например

[DEV_URL] ->http://example-local-pc.com [ПРОД_УРЛ] -> http://example-online-server.com [SITE_ROOT_PATH] ->/главная страница/клиент/домены/пример-онлайн-сервер.com/html

, который обычно обрабатывает любые ссылки на среду разработки. Однако вы должны отметить, что:

I) Многие плагины также хранят абсолютные URL-адреса либо в wp_options, либо в пользовательских таблицах. Их вы должны расследовать в каждом конкретном случае.

Ii) Выполнение запроса на замену обновления (например, 1. и 2. выше) почти наверняка приведет к повреждению данных в сериализованные поля. Я еще не сталкивался с чистой и быстрой техникой выполнения этой замены, кроме как позволить связанным плагинам самим выполнять обновление. Успех этого зависит от надежности плагина.

 1
Author: KalenGi, 2011-11-18 23:17:47

Мне нравится разрабатывать в подкаталоге, чтобы я мог предоставить своим клиентам доступ к тестовому сайту. когда я буду готов опубликовать, я использую плагин (рекомендации ниже), чтобы скопировать все это в другой подкаталог, а затем просто указать WordPress для загрузки из нового. Оставляя область разработки активной для тестирования.

Используйте плагин, такой как дубликатор (бесплатный) или резервное копирование (платное). Также посмотрите, поможет ли вам мой вопрос здесь.

 0
Author: Drai, 2017-04-13 12:37:32

Нет безупречного способа из-за того, как WordPress хранит контент в базе данных.

Для распространения кода это может быть так же безупречно, как использование git/mercurial/svn или даже просто перезапись файлов.

Но это не относится к любому контенту, хранящемуся в базе данных (плагины, сообщения, категории и т.д.), и нет хорошего способа синхронизации двух баз данных. Как: Легко перенести установку WordPress из разработки в производство?

 0
Author: Wyck, 2017-04-13 12:37:42

Я использую этот инструмент замены поиска:

Https://interconnectit.com/products/search-and-replace-for-wordpress-databases/

Это работает как для другого программного обеспечения, так и для wordpress.

Что касается развертывания, я настроил среду на сервере, которую затем могу переключить через сопоставление доменов/vhosts, чтобы сделать ее живой. Разработчик установки всегда находится на отдельном сервере и никогда не запускается в режиме реального времени.

 0
Author: Tom J Nowell, 2015-01-09 15:21:55