我有一个网站,其中包含多个我想与Nginx一起使用的html文件。
server {
listen 80;
root /var/www;
location / {
index index.html;
}
location /projects/ {
index projects.html;
}
server_name mylady17.de;
location /shiny/ {
proxy_pass http://104.248.41.231:3838/;
}
}
这是它的设置方式。 index.html可以正常工作,但是"http://mylady17.de/projects"
给我一个错误(404,未找到)。 projects.html
文件存储在var/www/
中,并且可以正常工作。我究竟做错了什么?为什么我不能访问该文件?
答案 0 :(得分:0)
y_train
伪指令对以index
结尾的URI进行操作,并尝试通过将伪指令的值附加到URI来查找文件。有关详细信息,请参见this document。
因此,您的URI /
将不会调用索引模块。即使您确实使用/projects
,索引模块也会尝试在/projects/
上定位文件。
要将单个URI指向给定的文件,可以使用完全匹配的/var/www/projects/projects.html
。有关详细信息,请参见this document。
例如:
location
如果您确实决定将来扩展它,要求location = /projects {
rewrite ^ /projects.html last;
}
通过在URI的末尾附加nginx
来搜索文件,则可以改用.html
指令。有关详细信息,请参见this document。
例如:
try_files