Как сделать существенное изменение контента в Drupal, не зная пользователей - PullRequest
1 голос
/ 20 апреля 2011

Я управляю веб-сайтом drupal 6 для своего бизнеса, и он работает так, как я хочу.

Только я планирую серьезное обновление, в котором я буду менять тему и большинствомои страницы.Я хотел бы знать, как я могу в основном изменить все страницы, но публиковать изменения только тогда, когда я буду готов (если это возможно)?

Я думал о создании целого нового веб-сайта Drupal, а затем о его перемещении для выполненияжелаемый каталог, но тогда я потерял бы все остальное в моей базе данных (например, заказы) и все свои обширные настройки, которые не могут произойти!

Я бы тоже не хотел переводить сайт в автономный режим для обслуживания, потому чтосайт отлично функционирует, и мне нужно как можно больше шансов для посетителей и рекламы!

Так что, если кто-нибудь узнает о решении для моей ситуации, было бы очень полезно, если бы вы мне сказали!

Заранее спасибо,

Энди

Ответы [ 4 ]

3 голосов
/ 20 апреля 2011

Вы можете загрузить свою тему Drupal 6 в / sites / all / themes /, и когда вы будете готовы развернуть ее, просто переключите тему в ваших настройках и очистите кеш. Весь ваш контент должен оставаться прежним.

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

Если режим обслуживания действительно не работает (и вам необходимо скрыть информацию от своих пользователей), я бы создал скрипт для копирования всех заказов и других изменчивых данных на новый веб-сайт сразу после запуска. Да, это взлом, но другого выхода нет.

0 голосов
/ 21 апреля 2011

Как я понимаю ваш вопрос, вы хотите сохранить данные с вашего существующего сайта и иметь минимальное время простоя при переходе на измененный сайт.

Сначала убедитесь, что ваш сайт использует друпал-директория от корня документа (в отличие от установки Drupal непосредственно в корне документа).Это позволит вам переключаться между сайтами так, чтобы ваши пользователи ничего не знали.Для этого требуется следующий файл .htaccess в базовом каталоге:

RewriteEngine on
RewriteRule ^(.*) drupal6/$1 [L]

Обратите внимание, что drupal6 необходимо заменить тем именем каталога, которое вы выберете для установки различных установок D6.Также требуется, чтобы в sites/default/settings.php была определена переменная $ base_url.Если ваш файл settings.php определен где-то еще, измените его в этом месте.

Я бы порекомендовал вам сделать резервную копию данных с существующего сайта и использовать его на вашем новом сайте (он должен быть совместимым, я бынадеюсь).Если нет, вам может потребоваться установить один и тот же модуль и тему, но при необходимости отключите ненужные модули / темы.Используя данные существующего сайта, вы можете при необходимости реструктурировать свой сайт разработки.

Когда вы будете готовы перейти на обновленный сайт, сделайте следующее:

  • переведите существующий сайт в автономный режими выполните резервное копирование данных.
  • , используя резервную копию, восстановите данные на новом сайте.
  • проверьте, что новый сайт все еще функционирует.
  • измените базуФайл .htaccess, указывающий на новый сайт.

Это должно сделать ваше время простоя очень коротким (особенно если вы проверяли ваш новый сайт с существующими данными сайтов до переключения).Это также даст вам гибкость в будущем при обновлении до новых версий ядра Drupal (например, D7).

0 голосов
/ 21 апреля 2011

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

Я бы создал новый сайт рядом с существующим, и когда он будет готов, обновите DNS или укажите виртуальный хост на новую папку, а затем скопируйте таблицу заказов (и все остальное, что вам нужно) в новую базу данных как @jmkeyes предлагается.

0 голосов
/ 21 апреля 2011

Если вы используете одни и те же таблицы, вы можете, по сути, включить их обе и просто изменить dns, если на другом сервере, или изменить настройки htaccess, чтобы они указывали на сайт на том же сервере.

...