Мультинформационная панель не работает

Вопрос или проблема

Я пытаюсь настроить многосайтовую среду с подкаталогами, но когда я добавляю новый сайт и затем перехожу на панель управления нового сайта, он показывает совершенно белую страницу с ссылками на различные админ-меню, и все ссылки ведут на белую страницу с сообщением «Файл не найден».

Вот скриншот того, как выглядит админская страница https://i.sstatic.net/7dTFz.jpg

Вот мой файл htaccess:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# добавляем завершающий слеш к /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]
</IfModule>

# END WordPress

А это мой раздел многосайтовой настройки в wp-config.php:

define('WP_ALLOW_MULTISITE', true);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'fresenia.man.poznan.pl');
define('PATH_CURRENT_SITE', "https://wordpress.stackexchange.com/");
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

Вам просто нужно вставить этот код в файл .htaccess

# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# добавляем завершающий слеш к /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]

# END WordPress

и этот код в файл wp-config.php

define('WP_DEBUG', false);
define('WP_ALLOW_MULTISITE', true);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'fresenia.man.poznan.pl');
define('PATH_CURRENT_SITE', "https://wordpress.stackexchange.com/");
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

Это рабочий и протестированный код с моей стороны.

У меня была похожая проблема, когда я настроил многосайт, и панель управления нового сайта постоянно вылетала. Я немного покопался и выяснил, что причиной была плагин “Page Optimize” от WordPress.

Надеюсь, это поможет кому-то.

Ответ или решение

Когда вы сталкиваетесь с проблемой, когда панель управления нового сайта в вашей многосайтовой среде отображает белую страницу и ссылки на различные административные меню ведут на страницу с сообщением "Файл не найден", это может быть вызвано несколькими факторами. Давайте рассмотрим детали и возможные решения этой проблемы.

1. Проверка конфигурации .htaccess

Ваш файл .htaccess критически важен для правильной работы многосайтовой сети. Он отвечает за перенаправление запросов к нужным ресурсам. Согласно предоставленной вами информации, ваш текущий файл .htaccess выглядит следующим образом:

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

Убедитесь, что на сервере включен модуль mod_rewrite и что настройки вашего веб-сервера позволяют использовать .htaccess файлы.

2. Подкорректируйте настройки в wp-config.php

Ваш файл wp-config.php также ключевой для работы многосайтовой сети. Рассмотрите его текущую конфигурацию:

define('WP_ALLOW_MULTISITE', true);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'fresenia.man.poznan.pl');
define('PATH_CURRENT_SITE', "https://wordpress.stackexchange.com/");
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

Обратите внимание, что PATH_CURRENT_SITE должен содержать относительный путь вашего сайта, а не полный URL. Попробуйте изменить его на:

define('PATH_CURRENT_SITE', '/');

Это должно помочь правильно маршрутизировать запросы.

3. Дебаггинг и отладка

Включите режим отладки, добавив в ваш wp-config.php:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

После этого попытайтесь снова зайти в панель управления нового сайта. Ошибки будут записаны в файл wp-content/debug.log, что поможет вам выявить, где произошел сбой.

4. Конфликтующие плагины

Ваша ссылка на плагин "Page Optimize" указывает на потенциальные проблемы с совместимостью. Если вы устанавливали какие-либо плагины, временно отключите их и проверьте, будет ли работать панель управления. Неправильно настроенные или конфликтующие плагины могут приводить к ошибкам на сайте.

5. Проверьте права доступа

Убедитесь, что директории и файлы вашего WordPress имеют правильные права доступа. Обычно папки должны иметь права 755, а файлы — 644. Неправильные права могут привести к ошибкам доступа.

Заключение

Проблема с отображением панели управления нового сайта в многосайтовой сети может быть вызвана неправильными настройками .htaccess, конфликтующими плагинами или неправильной конфигурацией в wp-config.php. Просмотрите данные пункты и внесите необходимые изменения. Не забудьте проверить логи на наличие ошибок, что существенно поможет в диагностике проблемы.

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

Оцените материал
Добавить комментарий

Капча загружается...