Вопрос или проблема
Я только что создал сайт на своем Multisite домене (example.com), например site1.example.com
После этого я пытаюсь зайти на https://site1.example.com/wp-admin, но меня перенаправляет на https://www.example.com/wp-signup.php?new=example.com
Мой .htaccess содержит следующие строки:
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]
Я установил, среди прочего, следующие плагины:
- wordfence Security
- Loginizer
- WP Maintenance Mode (включен статус)
Почему WordPress Multisite перенаправляет меня на wp-signup, если сайт уже существует?
Проблема заключается в SSL-сертификате, потому что я пытался войти по HTTP, и все в порядке
Как это решить? Могу ли я что-то изменить в файле .htaccess?
Этот файл .htaccess выглядит так, как будто он предназначен для сети, использующей подкаталоги, но URL-адрес, который вы указываете, предназначен для сети, использующей поддомены. Какой тип вы используете? Вы правильно следовали шагам на странице /wp-admin/network/setup.php?
Еще одна идея заключается в том, что вы добавили SSL, но сайт, возможно, все еще использует старые URL-адреса http. Нажмите “Изменить” на одном из сайтов, чтобы увидеть поле Адрес сайта (URL). Указано ли там https или только http?
Перенаправление идет на главный сайт WordPress, и именно так работает WordPress Multisite. Регистрация всегда происходит на главном сайте сети/Multisite.
Если вы хотите разрешить регистрацию только на подсайте, попробуйте https://wordpress.org/plugins/network-subsite-user-registration/
Ответ или решение
Проблема с перенаправлением на wp-signup.php
, когда вы пытаетесь получить доступ к панели управления сайта в сети WordPress Multisite, может возникнуть по нескольким причинам. Давайте разберем основные моменты и предложим возможные решения.
Причины перенаправления на wp-signup.php
-
Проблемы с настройками SSL: Вы упомянули, что пробовали зайти через HTTP, и это сработало. Возможно, Ваш сайт не настроен должным образом для работы с HTTPS. Убедитесь, что вы правильно настроили SSL-сертификат, и все ссылки на сайте ведут на защищенный протокол (https).
-
Некорректные URL-адреса сайтов в настройках: Перейдите в админку WordPress, затем в раздел "Мои сайты" > "Администрирование" > "Сайты" и проверьте, корректны ли URL-адреса ваших сайтов. Для каждого сайта поле "URL" должно использовать HTTPS, если вы хотите использовать его в защищенном режиме.
-
Проблемы с .htaccess: Ваш файл .htaccess выглядит как для сети, использующей подкаталоги. Если у вас установлена сеть Multisite с поддоменами, убедитесь, что ваш .htaccess соответствует необходимым требованиям. Для поддоменов можно использовать следующий пример .htaccess:
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]
-
Конфликты с плагинами: Иногда плагины безопасности или ограничивающие доступ к панели могут вызывать такие проблемы. Попробуйте временно деактивировать плагины, такие как Wordfence и Loginizer, чтобы проверить, не они ли являются источником проблемы.
Рекомендации по решению проблемы
-
Проверьте и обновите URL-адреса сайтов: Зайти в админку и убедиться, что все сайты имеют правильный URL (начинающийся с
https://
). -
Проверьте файлы конфигурации: Убедитесь, что файлы
wp-config.php
корректно настроены для работы с поддоменами. Например, должен быть установлен следующий код:define('SUBDOMAIN_INSTALL', true); // для использования поддоменов
-
Настройте SSL: Убедитесь, что SSL-сертификат настроен на сервере правильно, и все запросы перенаправляются на HTTPS.
-
Очистка кэша: Очистите кэш браузера и любые плагины кэширования, чтобы быть уверенным, что проблема не вызвана кэшированием старых данных.
-
Проверка инструментов разработчика: Используйте инструменты разработчика в вашем браузере, чтобы отследить, почему происходит перенаправление. Это может помочь выявить причины проблемы.
Применение этих рекомендаций должно помочь вам решить проблему с перенаправлением на wp-signup.php
. Если проблема сохраняется, возможно, обладают более глубокими техническими знаниями о сервере и конфигурациях будет необходимо обратиться к специалисту.