Назад | Перейти на главную страницу

Проблема с конфигурацией Nginx: расположение и каталог

У меня есть такой простой серверный блок:

server {
        listen 80;
        server_name _;
        location / {
           *****root test/a/;*****
                index index.htm;
                autoindex on;
        }

Меня интересует линия, где ставятся звезды, я обозначил корень как test/a/, и он работает хорошо, я могу получить доступ к индексу из браузера.

Но если я выберу root как /test/a/; не работает, выдает ошибку 404.

Я видел, что все используют "/" перед корневым каталогом, из руководств и на этом веб-сайте.

Почему у меня не работает, есть идеи? Моя система - Linux v3.18.11 +

С участием / перед каталогом необходимо использовать полный путь от корня сервера.

Например:

root /var/www/test/a/;

Без /, он будет использовать путь, указанный во время компиляции с --prefix вариант префикса для root директива.

Вы также должны использовать alias директива внутри location блоков, что не вызывает проблем с location блоки, которые не находятся в корне сайта.