Перенаправить на 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 для всех из них.