WordPress multi site .htaccess не работает с IP-адресом и тильдой URL
Мне нужно перенести мультисайт WordPress с одного сервера на другой. Я продублировал все мои файлы и базу данных, и теперь я хотел бы проверить это, просматривая несколько установленных блогов. К сожалению, я не могу получить к ним доступ, потому что правила перезаписи URL в моем.htaccess перенаправляют меня на корневой URL.
Например, скажем, имя хоста мультисайта WP - example.com, а один из URL-адресов блога установки - example.com/installedblog/. На новом сервере я еще не настроил свой DNS, и я могу получить доступ к своему сайту только по IP-адресу и имени пользователя, например: 127.0.0.1/~username/. Этот URL работает, но если попробовать 127.0.0.1/~username/installedblog/ или 127.0.0.1/~username/wp-admin, я перенаправлюсь на страницу Apache 404.
Мой.htaccess по умолчанию для Wordpress MU, который работает на сервере с настройкой DNS:
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
Я также попытался изменить RewriteBase на / ~ username /, и это тоже не сработало.
Я думаю, проблема в том, что URL-адрес сайта моего WordPress - example.com/, а не 127.0.0.1/~username/, поэтому, если я хочу протестировать его на новом сервере, мне придется изменить его на 127.0. 0.1 / ~ username /, а затем вернемся к example.com, что является ненужным хлопотом.
Так как я не могу удалить свое сообщение, пожалуйста, закройте его, потому что я, похоже, ответил на свой вопрос.
1 ответ
Не меняйте.htaccess, просто замените ваш wp-config.php новым DNS (имя или IP-адрес).
Попробуйте изменить эти переменные:
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', false );
$base = '/';
define( 'DOMAIN_CURRENT_SITE', '127.0.0.1/~username/installedblog/' );
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );