Я пытаюсь заставить Nginx возвращать простую веб-страницу, но всегда с кодом состояния http 403. По какой-то причине я просто не могу заставить его работать. У меня есть два файла в /var/www/html/:[1299 sizesindex.html
index.html отображает текст вместе с photo.jpg
Вот моя конфигурация Nginx:
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
return 403;
}
error_page 404 /index.html;
error_page 403 /index.html;
location = /index.html {
allow all;
}
location = /photo.jpg {
allow all;
}
}
С этой конфигурацией как есть, оба index.html и photo.jpg отображаются со статусом 200. Если я удалю блоки location
для этих двух файлов, ни один из них не будет отображаться, но у них будет статус из 403.
Мой вопрос: как я могу отобразить html-файл вместе с изображением, но просто вернуть статус 403? Я чувствую, что упускаю что-то простое.
Ваше местоположение / {}
, содержащее возврат 403;
совпадает первым. Вам следует переместить его ниже двух других.
Счастливая стрельба !