2009-02-11 4 views
27

У меня есть сайт Wordpress в нашей домашней интрасети, которая теперь столкнулась с проблемой, когда IP-адрес изменился - загружается страница индекса, но не CSS, и я не могу войти на сайт панель администрирования.IP-адрес Wordpress изменен

К сожалению, я немного отстаю от резервных копий. Есть ли способ заставить Wordpress ссылаться на новый IP-адрес?

ответ

40

У вас есть два места, чтобы обновить это (ну три, но мы будем придерживаться двух).

Если вы все еще можете войти в раздел администрирования, введите следующую команду для URI /wp-admin/options.php - так, например, если ваш сайт http://localhost тогда ваш полный URL будет http://localhost/wp-admin/options.php. После того, как вы вошли в свой сайт, вы должны увидеть два поля (ну, вы увидите много полей), но вы захотите найти два с URL-адресами в них: URL-адрес сайта и URL-адрес блога (в WP 2.7 поля помечены как «home» и «siteurl», не уверены в других версиях).

Или вы можете войти в базу данных MySQL и запустить следующее.

Select * from wp_options where option_name IN('siteurl','home'); 

Я только что запустил это сегодня на одной из моих установок. Если вы OPTION_VALUE установлен на ваш локальный хост - вы можете выполнить следующую команду:

update wp_options set option_value='http://www.yourblogname.com' where option_name = 'siteurl'; 
update wp_options set option_value='http://www.yourblogname.com' where option_name = 'home'; 

Это должно обновить структуру таблицы.

+0

Спасибо, Schoffelman, вы за человека – DextrousDave

+0

Это решение касается смены доменных имен, где речь идет о IP-адресах. Что делать, когда имя остается неизменным и происходит полная миграция сервера, включая DN? – challet

+0

Ответ предоставил решение, которое в конечном итоге устранило проблему. Если на ваш вопрос не ответил, возможно, создайте новый вопрос с подробной информацией о том, что вы используете, и прокомментируйте ссылку на этот вопрос в этом потоке. – Schoffelman

1

Я столкнулся с этой проблемой один раз. Зарегистрируйте свою БД и проверьте свои wp_options (если wp_ - это префикс таблицы), а затем выполните поиск всех записей и замените старый ip новым.

Возможные столбцы, чтобы старый ip был «permalinks» и т. Д. Извините, я не могу видеть структуру таблицы моего блога, иначе я бы разместил правильное имя столбца.

1

Я столкнулся с этой проблемой раньше, когда я переносил сайт с теста на производство. Удобно, MySQL имеет функцию замены строки.

попробовать что-то вроде этого:

UPDATE wp_posts SET post_content = REPLACE(post_content,"http://localhost","http://www.myblog.com") 
+0

Извините, это то, что вы сделали бы, чтобы все ссылки работали ... вам нужно исправить свой IP-адрес в таблице wp_options, чтобы иметь возможность входа в систему. Попробуйте очистить Google, есть много сообщений, рассказывающих вам, как это сделать. – cdmckay

10

Вы должны изменить «дом» и «SITEURL» в настройках. Поскольку вы не можете открыть административную сторону wordpress, откройте базу данных в phpMyAdmin (или что-то подобное).

Параметры можно найти в таблице «wp_options» (префикс wp_ может быть другим). Найти необходимую настройку с помощью этого запроса ...

SELECT * FROM `wp_options` WHERE `option_name` IN ('siteurl', 'home') 

Измените значения обоих параметров на новый IP.

+0

Это работает в Wordpress 4.0. – Marcin

7

Если вы не хотите, чтобы взломать базу данных напрямую, используйте этот код в ваш WP-config.php:

define('WP_HOME','http://example.com'); 
define('WP_SITEURL','http://example.com'); 

или вы можете добавить к вашей functions.php:

update_option('siteurl','http://example.com/'); 
update_option('home','http://example.com/'); 
+0

Спасибо за это! Именно то, что я искал. Это намного более полезно для тех из нас, кто постоянно меняет сети и IP-адреса. –