最佳答案
我的服务器上有几组静态 .html
文件,我想使用 nginx 直接为它们服务。例如,nginx 应该提供以下模式的 URI:
www.mysite.com/public/doc/foo/bar.html
与位于 /home/www-data/mysite/public/doc/foo/bar.html
的 .html
文件。在这里,您可以将 foo
视为集合名称,将 bar
视为文件名。
我想知道下面的 nginx 配置是否可以完成这项工作:
server {
listen 8080;
server_name www.mysite.com mysite.com;
error_log /home/www-data/logs/nginx_www.error.log;
error_page 404 /404.html;
location /public/doc/ {
autoindex on;
alias /home/www-data/mysite/public/doc/;
}
location = /404.html {
alias /home/www-data/mysite/static/html/404.html;
}
}
换句话说,模式 /public/doc/.../....html
的所有请求都将由 nginx 处理,如果找不到任何给定的 URI,则返回缺省的 www.mysite.com/404.html
。