ISP Manager Nginx бесконечный 301 редирект и иные проблемы в alias

Весьма трудноуловимые проблемы в алиасах, могут возникнуть, когда алиас конфиг, да и nginx в целом настроен правильно. К примеру мы создали alias /usr/share/phpmyadmin; и обращаемся по http://ip/phpmydmin и нас начинает перманентно футболить на слеш в конце и без слеша.

too_many_redirects
ERR_TOO_MANY_REDIRECTS

Тут следует проверить что вообще отдаёт http запрос по ip. На отдаваемом домене может быть настроен, например, замечательный реврайт:

# Redirect from / to non-/
if ($args = "") {
    rewrite ^/(.*)/$ /$1 permanent;
}
location / {
    try_files $uri $uri/ @handler;
    location ~ [^/]\.ph(p\d*|tml)$ {
        try_files /does_not_exists @php;
    }
    location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
        expires max;
    }
}
location @handler {
    rewrite ^(.*) /?$1 last;
}

И домен этого сайта либо задан приоритетным при запросе по ip, либо приоритетный домен для ip в панели не задан. Что же происходит? При http запросе по ip подтягивается этот первый попавшийся домен и его nginx конфиг и именно он портит нам всю малину! То есть в принципе, могут возникнуть и любые иные проблемы, которые будут «нарисованы» по сути из этого конфига.

Да и вообще плохая практика оставлять сайт доступным по ip, а не по домену. Чтобы решить проблему создадим домен zaglushka.local и назначим его приоритетным. На домене желательно всё отключить, да и вообще он нахрен по сути не нужен, нам нужно только то, что он будет приоритетным и ip по умолчанию будет подтягивать чистый nginx конфиг именно от него и в алиасах тогда будет всё работать как надо.

Оставить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *