我有2个问题。
我不想要求html文件的.html文件扩展名
/index => /index.html
我想从用户目录
提供服务 /~username serves from /home/username/www/
我以前使用try_files来实现(1),我是用户nginx UserDir建议:
location ~ /^/~(.+?)(/.*)?$ {
alias /home/$1/www$2;
index index.html index.htm;
autoindex on;
}
以上适用于用户目录但仍需要使用.html ext。 我知道有一个已知的bug可以防止别名和try_files一起工作。
思考?对不起,如果之前已经回答,找不到合适的解决方案。
答案 0 :(得分:4)
您始终可以将alias
替换为root
location ~ /^/~([^/]+)(/.*)?$ {
root /home/$1/www;
autoindex on;
try_files $2 $2/ $2.html;
}
PS:将index
移动到服务器范围而不是位置
答案 1 :(得分:1)
它有点老了,但是最近我遇到了同样的问题,这是我的回答。感谢http://marc.info/?l=nginx&m=124533515814122&w=2我发现更好的答案是:
location ~ /^/~(.+?)(/.*)?$ {
alias /home/$1/www$2;
index index.html index.htm;
autoindex on;
try_files "" .html / =404;
}