我只需在nginx.conf中添加一个vhost,用于自动索引这样的文件:
server {
listen 80;
server_name res.rickyzhang.me;
root /home/wwwroot/default/res;
location = / {
autoindex on;
}
access_log /home/wwwlogs/access_res.log access;
}
我认为这会有效,但是当我访问res.rickyzhang.me时,它总是给我400响应代码,这意味着请求无效且服务器无法理解,我很困惑。可以帮助任何人我?谢谢。
答案 0 :(得分:0)
我不确定,但尝试在其中添加try_files
location = / {
autoindex on;
try_files $uri $uri/;
}
答案 1 :(得分:0)
刚试过我的一台服务器:
# nginx -V
nginx version: nginx/1.4.1
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC)
server {
server_name some_hostname;
location = / {
root html;
autoindex on;
#http://wiki.nginx.org/HttpAutoindexModule
#The request only reaches the ngx_http_autoindex_module when
#the ngx_http_index_module did not find an index file.
index should_not_exist;
}
}
按预期工作
答案 2 :(得分:0)
我不知道回答自己是否合适。
昨天,我仔细检查了我的nginx.conf,我真的没有发现任何错误.400响应代码给了我一些线索,所以我只是将主机名从res更改为dw,其他人没有改变,它有效!
它真的令我惊讶,我想也许res是nginx中的保留字,但是我在google上搜索,没有任何相关内容。