У меня есть такой простой серверный блок:
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
блоки, которые не находятся в корне сайта.