Назад | Перейти на главную страницу

перенаправить на поддомен с подстановочными знаками 404

Я устанавливаю подстановочную запись A на моем регистраторе домена. Теперь, если пользователь получает доступ к отсутствующему поддомену в моем домене, он будет перенаправлен на домашнюю страницу. В настоящее время моя первоначальная установка была такой:

<VirtualHost *:80>
  ServerAdmin webmaster@localhost
  RewriteEngine On
  RewriteRule ^(.*)$ http://domain.com$1 [R]
  DocumentRoot /var/www
  <Directory />
    Options FollowSymLinks
    AllowOverride None
  </Directory>
  # more below...
</VirtualHost>

Любой поддомен с подстановочными знаками или если мой IP-адрес вводится через URL-адрес, будет перенаправлять на домашнюю страницу. Могу ли я сделать что-нибудь, что перенаправит (возможно, HTTP-перенаправление) поддомены с подстановочными знаками на страницу 404, а не на домашнюю страницу?

Вы также можете рассмотреть вариант переписывания кода состояния 403 с помощью кода [F] и наличия страницы ошибки 403, если «действительный постоянный код ошибки» является причиной, по которой вам нужен код 404, а не совсем этот код.

DocumentRoot /some/valid/directory
ErrorDocument 403 /nothere.html

RewriteRule /nothere.html /nothere.html [L]
RewriteRule . - [F,L]

Изменение правила для страницы 403 позволяет избежать ошибки конфигурации.

Отключите RewriteEngine и укажите пустой каталог в качестве DocumentRoot:

<VirtualHost *:80>
  ServerAdmin webmaster@localhost
  DocumentRoot /var/www/empty-directory-that-i-just-created
  # more below...
</VirtualHost>

Поскольку этот VirtualHost использует пустой каталог в качестве DocumentRoot, Apache не сможет выполнять какие-либо запросы; он вернет 404 для всех из них.