nginx не будет обслуживать index.html в https

nginx

#nginx

Вопрос:

я пытаюсь протестировать некоторые проблемы, и кажется, что источник сводится к невозможности обслуживать index.html файл:

 server {
    listen 4430 ssl;
    listen [::]:4430 ssl default ipv6only=on;
    server_name  avnav88website.com;

        ssl_certificate /etc/nginx/_cert/etc/letsencrypt/live/avnav88website.com/fullchain.pem;
        ssl_certificate_key /etc/nginx/_cert/etc/letsencrypt/live/avnav88website.com/privkey.pem;
        ssl_dhparam /etc/nginx/_cert/etc/letsencrypt/live/dhparam.pem;

    location /hey {
        root   /usr/share/nginx/html;
        index  index.html;
    }
    
    
    location / {
        proxy_pass http://abda_1;
        proxy_set_header Host avnav88website.com;
    
    }
}
 

когда я перехожу к avnav88website.com все работает.

когда я пытаюсь avnav88website.com/hey я получаю 404 — вместо приветственного сайта nginx.

я даже пытался сделать index2.html с некоторой формулировкой, и все равно получил 404, когда я указал на это.

должно быть, я упускаю что-то очевидное..

Комментарии:

1. Да, nginx пытается найти файл /usr/share/nginx/html/hey , затем проверяет, есть ли /usr/share/nginx/html/hey каталог, содержащий index.html файл. Обе проверки завершились неудачей, поэтому вы получаете ошибку HTTP 404. Проверьте разницу между root директивами и alias директивами nginx. Если вы хотите получить index.html содержимое из avnav88website.com/hey URL-адреса, вы можете использовать location = /hey { alias /usr/share/nginx/html/index.html; } block .

2. @IvanShatsky ах, хорошо, я думаю, я перепутал два .. но при этом я все равно получаю avnav88website.com:4430/ привет , даже если нет 404, он пустой

3. Это должно сработать. Проверьте журналы ошибок. Вы также можете попытаться проверить, работает ли это местоположение вообще: location = /hey { return 200 'Hey!'; }

4. @IvanShatsky это сработало! на самом деле он загрузил файл с именем hey… но у меня все еще есть проблема с невозможностью обслуживать index.html файл…https mysite.com:4430/hey/ недоступен. ОШИБКА_ADDRESS_UNREACHABLE

5. @IvanShatsky это тоже немного странно, потому что из коробки это работает без конфигурации https и всего 1 серверного блока