Intereting Posts
Создавайте собственные постоянные ссылки на YouTube для нескольких пользовательских типов сообщений Как изменить цвет фона в поле контакта? Предупреждение: join (): недопустимые аргументы, переданные в post-template.php Я могу получить доступ к подкаталогу, но не к ним. Я не могу загрузить новую тему WordPress из заархивированного файла Получить внешний прикрепленный URL-адрес изображения WordPress Uploads Directory не использует даты в ссылках Содержимое WordPress на не-WP-сайте, находящемся в удаленном домене, – как отображать сообщения? Удаление сообщения из результатов запроса WP Запись количества просмотров с общим кэшем w3 Изображения внутри заголовка сообщения Как удалить или скрыть страницу архива? Разрешить пользователю повторно заказывать (заказывать еще раз) заказ другого пользователя в woocommerce Как включить PHP-код в свой пост? Термины связи сломаны, пользовательские таксономии ушли, когда я изменил структуру постоянных ссылок

Сетевой администратор Multisite – ошибка URL / перенаправления

Я последовал этому руководству о том, как настроить установку WordPress, оптимизированную для развертывания git.

В принципе, WordPress перемещается во вложенную папку, называемую wordpress , index.php и wp-config.php , перемещаются из подпапки, а также wp-content .
Для выполнения этой работы настраивается путь к wp-blog-header.php , а также путь к wp-content .

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

Кроме предупреждения Warning! Subdirectory networks may not be fully compatible with custom wp-content directories. Warning! Subdirectory networks may not be fully compatible with custom wp-content directories. все работало как обычно, с одной проблемой:

Я не могу получить доступ к экранам сетевого администратора.

URL-адрес администратора сайта выглядит так: http://local.dev/wordpress/wp-admin/ , но ссылки на сетевой администратор выглядят следующим образом: http://wp1.dev/wp-admin/network/sites.php .
Итак, вы видите, /wordpress/ отсутствует. Если я добавлю вручную, сетевые админ-экраны загрузятся, как ожидалось.

Мой .htaccess выглядит так:

 # BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [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).*) wordpress/$2 [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ wordpress/$2 [L] RewriteRule . index.php [L] # END WordPress 

и соответствующие части моего wp-config.php выглядят так:

 define( 'WP_ALLOW_MULTISITE', true ); define('MULTISITE', true); define('SUBDOMAIN_INSTALL', false); define('DOMAIN_CURRENT_SITE', 'local.dev'); define('PATH_CURRENT_SITE', '/'); define('SITE_ID_CURRENT_SITE', 1); define('BLOG_ID_CURRENT_SITE', 1); 

Я уже пытался изменить PATH_CURRENT_SITE с / на /wordpress/ .
Это исправляет URL-адрес, но экран сетевого администратора не будет загружаться, потому что слишком много перенаправлений, поэтому кажется, что проблема в моем .htaccess .

Там я уже пробовал это (как предложено здесь ), но это не решает проблему – та же ошибка сохраняется:

 RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L] 

Версия WordPress 4.0, сеть также была запущена в этой версии.

Вы видите, что случилось с этой настройкой? Как исправить ошибку слишком много переадресаций?

Edit: Я исследовал проблему немного дальше. Я попытался сделать то же самое с установкой одного сайта, и он работал без проблем. Я предполагаю, что предупреждающее сообщение, которое я цитировал, существует не просто так. Тем не менее, я хотел бы знать, есть ли исправление или обходное решение для этого. Кроме того, теперь я уверен, что PATH_CURRENT_SITE должен быть / , что означает, что это явно проблема .htaccess .