我正在尝试从root以外的位置提供一些html。
如果我去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
的内容,而无需更改此根。