Перенаправить на 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, а не на домашнюю страницу?

2 ответа

Вы также можете рассмотреть возможность переписать код состояния 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 для всех из них.

Другие вопросы по тегам