Не работают поддомены в Multisite

23 сент. 2017 г., 23:42:23
Просмотры: 15.9K
Голосов: 0

Это мой первый опыт с WordPress Multisite, и я следовал всем инструкциям из Codex, чтобы сделать мой сайт мультисайтом.
Но мои поддомены не работают, и Chrome отображает это сообщение для моих поддоменов:
Не удалось найти DNS-адрес.
Нужно ли каждый раз создавать поддомен в cPanel перед созданием нового сайта (поддомена) в WordPress? У меня уже есть несколько поддоменов, которые работают идеально, но это отдельные сайты. Теперь я сделал основной домен мультисайтом, но все поддомены не работают.

Вот мой код .htaccess, который предоставил 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]

Я также добавил код в файл wp-config, который предоставил WordPress, и могу войти в панель сети и создавать поддомены, но когда я пытаюсь посетить любой из поддоменов, появляется ошибка DNS. Буду очень благодарен, если кто-нибудь подскажет решение этой проблемы. Спасибо!

0
Все ответы на вопрос 3
5

Нужно ли каждый раз создавать поддомен в cPanel перед созданием нового сайта (поддомена) в WordPress?

Вам необходимо убедиться, что поддомены созданы где-то. WordPress не имеет возможности создавать DNS-записи за вас.

Если у вас настроен WordPress на example.com и вы хотите создать site1.example.com, site2.example.com и т.д., вам нужно убедиться, что DNS-записи для site1.example.com, site2.example.com и т.д. активны.

В зависимости от вашего хостинга, у вас может быть возможность создать wildcard поддомены, что означает добавление записи *.example.com в ваши DNS-записи. Это позволит перенаправлять любой поддомен, оканчивающийся на .example.com, на вашу Multisite-установку. Однако вам нужно уточнить эту возможность у вашего хостинг-провайдера, мы не можем предоставить конкретные инструкции по этому вопросу.

Кодекс: Перед созданием сети » На основе домена

23 сент. 2017 г. 23:56:20
Комментарии

Спасибо за ваш ответ. Но я уже пытался создать поддомен в своем аккаунте перед тем как сделать это в WordPress, однако при посещении он указывает на пустую директорию (Index of /cgi-bin/). Как я уже упоминал, у меня уже есть несколько поддоменных сайтов на хостинге, но это отдельные сайты, и они работают идеально, значит мой хостинг позволяет создавать поддомены.

wplearner wplearner
24 сент. 2017 г. 03:54:03

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

Pat J Pat J
24 сент. 2017 г. 06:57:45

Для моего поддомена путь указан как public_html/site1. Должен ли это быть просто public_html или мне нужно указать полный путь? Мой основной сайт установлен в корневой директории.

wplearner wplearner
24 сент. 2017 г. 07:22:08

Теперь всё работает. Раньше я указывал этот поддомен на public_html/site1, и когда я убрал site1 из пути поддомена, всё начало работать идеально. Большое спасибо за вашу помощь и время. Я очень признателен и собираюсь проголосовать за ваш ответ и принять его.

wplearner wplearner
24 сент. 2017 г. 07:46:33

Отлично, рад слышать, что у вас всё заработало.

Pat J Pat J
24 сент. 2017 г. 07:51:55
0

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

При создании поддомена в cPanel установите галочку "share document root", чтобы использовать корневую папку /public_html, а не создавать отдельную папку за ее пределами.

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

20 мар. 2023 г. 10:28:32
0

Спасибо за ваш ответ, wplearner и Pat J — это помогло мне решить мою проблему. Я столкнулся с тем, что после перевода WordPress на мультисайт с использованием поддоменов мой основной сайт работал (mainsite.com), а training.example.com — нет. Вместо этого я получал страницу с ошибкой «Internal Server Error».

Решение:

  1. Я зашел в CPanel → Поддомены.
  2. Добавил поддомен training.example.com и указал его корневой директорией /public-html/.
  3. В разделе «Управление поддоменами» я нажал на «Настройки перенаправления» и установил перенаправление на https://example.com (у меня используется SSL, поэтому, если у вас его нет, можно указать http://example.com), затем сохранил изменения.
  4. Вернулся в админку WordPress, перешел в «Мои сайты», выбрал второй сайт — и всё заработало! ОГРОМНОЕ СПАСИБО!
2 мар. 2021 г. 12:18:44