我想在Nginx上设置Mono ASP.NET,但似乎索引优先级不起作用。 如果我使用http://www.mono-project.com/FastCGI_Nginx中的示例如下:
location / {
root /srv/www/htdocs/;
index index.htm index.html default.aspx Default.aspx;
fastcgi_index Default.aspx;
fastcgi_pass 127.0.0.1:9000;
include /etc/nginx/fastcgi_params;
}
然后,当我访问http://localhost/时,它将始终请求Default.aspx
,如果没有此类文件,则Web服务器将显示404错误。
我试图通过搜索问题找到答案,我找到了这个: asp mvc home root not working with mono, fastcgi and nginx
所以我想我遇到了同样的问题,然后我修改了配置文件如下:
location / {
root /srv/www/htdocs/;
index index.htm index.html default.aspx Default.aspx;
fastcgi_index /;
fastcgi_pass 127.0.0.1:9000;
include /etc/nginx/fastcgi_params;
}
Web服务器仍然请求.aspx
- 文件作为优先级,即使我在.aspx
文件夹中只有random.aspx
个htdocs
文件,它仍会显示它在index.htm
之前。
然后当我删除所有与FastCGI相关的配置时如下:
location / {
root /srv/www/htdocs/;
index index.htm index.html default.aspx Default.aspx;
}
只有这样,索引优先级才能正常工作。
那么谁能告诉我,为什么会这样呢?我是否必须修改与FastCGI相关的任何配置文件?
答案 0 :(得分:2)
确保单声道中的fastcgi设置指向有效路径。
fastcgi-mono-server2 /applications=www.domain1.xyz:/**:/var/www/www.domain1.xyz**/ /socket=tcp:127.0.0.1:9000
/var/www/www.domain1.xyz/必须指向您的网络应用的根目录。