403禁止使用fastcgi

时间:2011-02-10 16:34:58

标签: apache fastcgi http-status-code-403

尝试在Windows 7上使用带有fastcgi的apache 2.2来设置ReviewBoard服务器(不,Linux不是一个选项)。我正在使用(基本上)默认的httpd.conf,加载了mod_fcgid和mod_rewrite,以及 底部添加了Include C:\mars\reviews\conf\apache-fastcgi.conf。这也是默认值,OrderAllow+Indexes除外。问题是,当我尝试加载网站时,/获得403(根据重写规则,它将成为reviewboard.fcgi)。我添加+Indexes来证明是的,事实上,我可以访问这些目录,因此它似乎不是权限问题。

当我添加ExecCgi时,这些403错误会变成404错误!我在我的智慧结束,在我的头上。

C:\mars\reviews\conf\apache-fastcgi.conf(编辑ServerName)的内容:

<IfModule mod_fcgid.c>
    AddHandler fcgid-script .fcgi
</IfModule>

<IfModule mod_fastcgi.c>
    AddHandler fastcgi-script .fcgi

    FastCGIServer "c:/mars/reviews/htdocs/reviewboard.fcgi" -socket "c:/mars/reviews/tmp/fastcgi.sock"
</IfModule>

<VirtualHost *:80>
    ServerName #redacted
    DocumentRoot "c:/mars/reviews/htdocs"

    # Alias static media requests to filesystem
    Alias /media "c:/mars/reviews/htdocs/media"
    Alias /errordocs "c:/mars/reviews/htdocs/errordocs"

    # Error handlers
    ErrorDocument 500 /errordocs/500.html

    <Directory "c:/mars/reviews/htdocs">
        Options +Indexes
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

    # Direct all other requests to the fastcgi server
    RewriteEngine on
    <IfModule mod_fcgid.c>
        RewriteRule ^/(media.*)$ /$1 [QSA,L,PT]
        RewriteRule ^/(errordocs.*)$ /$1 [QSA,L,PT]
    </IfModule>
    <IfModule mod_fastcgi.c>
        RewriteRule ^/(media.*)$ /$1 [QSA,L,PT]
        RewriteRule ^/(errordocs.*)$ /$1 [QSA,L,PT]
    </IfModule>
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^/(.*)$ /reviewboard.fcgi/$1 [QSA,L]
</VirtualHost>

这里究竟出了什么问题?

2 个答案:

答案 0 :(得分:0)

在我看来,你已经安装了mod_fcgid,但是FastCGIServer-statement在mod_fastcgi-section中。我从这里开始。

答案 1 :(得分:0)

在ReviewBoard与Christian Hammond交谈后,他向我指出this django ticket。事实证明,django不支持Windows上的FastCGI!