Пару лет назад думал что настроил на вэб сервере поддержку ipv6, все онлайн тэсты проходили на ура. Но сейчас, настроив у себя ipv6, понял что при обращении к сайтам получаю в ответ "403 Forbidden". Не приятно конечно, но надо что-то делать.

Тогда, при настройке, была информация что нужно добавлять в конфиг сервера запись вида

listen [::]:80 ipv6only=on;


при чём если её добавлять в несколько виртуальных серверов, то nginx выкидывал ошибку. Пришёл к выводу что достаточно одной директивы в конфиге по умолчанию.

 

В общем смысл таков:

В конфиге по умолчанию должно быть прописано

listen 80 default_server;
listen [::]:80 default_server ipv6only=on;


а в конфигах каждого виртуального хоста прописываем

listen 80;
listen [::]:80;


Таким образом все сайты работают с ipv4 и ipv6.

Если поддержка ipv6 для сайта не нужна, то строку

listen [::]:80;


прописывать не нужно!

А ошибку "403 Forbidden" получал из-за того, что у меня хост по умолчанию её отдаёт для всех желающих ломиться по IP, или подбирать поддомены.

Добавить комментарий