Я пытаюсь обслуживать некоторые html из местоположения, отличного от root.
Если я перейду к http://example.com/somepage.html
, то я бы хотел, чтобы @fallback
обслуживал меня, но теперь он просто загружает index.html.в корне.Это somepage.html
(у меня могут быть другие страницы) доступно только в корне @fallback
.
Я даже могу явно перейти на http://example.com/drafts/somepage.html
, пока он работает из папки в @fallback
server {
listen 80;
root /home/main/www;
server_name example.com;
index index.php index.html;
error_page 404 /404.html;
location / {
default_type "text/html";
try_files $uri $uri/ /index.html @fallback =404;
}
# serve preview pages
location @fallback {
root /home/main/test/drafts/_previews;
}
}
[Обновление]: у меня получилось так ->
location / {
default_type "text/html";
try_files $uri $uri/ /index.html =404;
}
# serve preview pages
location /_previews {
root /home/main/test/drafts;
}
Я перехожу на http://example.com/_previews/somepage.html
и страница загружается правильно.
Интересно, есть ли способы использовать @fallback
или переписать _previews
во что-нибудь более простое, например drafts
, без изменения этого корня.