Создайте правильную страницу 404 для заблокированных сайтов через / etc / hosts вместо перенаправления на localhost

Я заблокировал некоторые веб-сайты, отредактировав / etc / hosts и добавив несколько записей новой строки следующим образом:

0.0.0.0 www.domain.com

И это работает. Единственное, что: при посещении заблокированного веб-сайта браузер перенаправляется на мой http://localhost, что приводит к выводу списка каталогов или веб-презентации в моей корневой локальной среде localhost.

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

2
задан 30 August 2013 в 05:31

1 ответ

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

Если вы блокируете большое количество сайтов, это может стать слишком большой проблемой, но вы, вероятно, могли бы создать виртуальный домен со стартовой страницей для своей страницы 404. Если вы знаете PHP, вы можете настроить его на имя сайта, заблокированного для более информативного сообщения.

Файл hosts останется прежним, и дополнения будут внесены в файл конфигурации Apache в /etc/apache2/sites-enabled. Первоначально, есть только корень документа, определенный, я думаю, как /var/www; Вы можете не только изменить это, но и добавить любое количество дополнительных каталогов со связанными именами и псевдонимами.

Моя идея состоит в том, чтобы добавить один для нового каталога, который будет содержать вашу страницу 404. Определите каталог и «имя сайта» и добавьте новую запись в файл. Например:

<VirtualHost *:80>
    <Directory /var/www/my404>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
    DocumentRoot /var/www/my404/
    ServerName my404.loc
    ServerAlias www.domain.com
</VirtualHost>

Вы можете добавить запись в ваш файл hosts с помощью localhost my404.loc, а затем вы сможете получить доступ к странице для тестирования локально, введя http://my404.loc. Надеемся, что вы также можете получить к нему доступ www.domain.com, если у вас есть эта запись в вашем файле hosts. Вы должны иметь возможность добавлять дополнительные записи «ServerAlias» по мере добавления новых в файл hosts.

Надеюсь, вам это ясно и, возможно, даже полезно. Если вы думаете, что это полезно, но не ясно, не стесняйтесь спрашивать больше.

1112 Нет никаких гарантий, поскольку я никогда не пробовал все это. :)

0
ответ дан 30 August 2013 в 05:31

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

Похожие вопросы: