FastCGI和Nginx错误的索引文件优先级

时间:2011-08-05 08:23:01

标签: mono indexing nginx fastcgi

我想在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.aspxhtdocs文件,它仍会显示它在index.htm之前。

然后当我删除所有与FastCGI相关的配置时如下:

    location / {
        root   /srv/www/htdocs/;
        index index.htm index.html default.aspx Default.aspx;
    }

只有这样,索引优先级才能正常工作。

那么谁能告诉我,为什么会这样呢?我是否必须修改与FastCGI相关的任何配置文件?

1 个答案:

答案 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/必须指向您的网络应用的根目录。