0

我在 linux 上安装 Reviewboard,我已将安装包提供的配置复制到 httpd.conf

    <VirtualHost *:80>
    ServerName localhost
    DocumentRoot "/usr/www/reviewboard/htdocs"

    # Error handlers
    ErrorDocument 500 /errordocs/500.html

    WSGIPassAuthorization On
    WSGIScriptAlias "/reviewboard" "/usr/www/reviewboard/htdocs/reviewboard.wsgi/reviewboard"

    <Directory "/usr/www/reviewboard/htdocs">
            AllowOverride All
            Options -Indexes FollowSymLinks
            Allow from all
    </Directory>

    # Alias static media requests to filesystem
    Alias /reviewboard/media "/usr/www/reviewboard/htdocs/media"
    Alias /reviewboard/errordocs "/usr/www/reviewboard/htdocs/errordocs"
    Alias /reviewboard/favicon.ico "/usr/www/reviewboard/htdocs/media/rbcommons/images/favicon.png"
    </VirtualHost>

但是,当我访问“http://SITE/reviewboard/htdocs/reviewboard.wsgi”时,它只会以纯文本形式提供文件,而不是运行脚本

我已经通过“apache2ctl -t -D DUMP_MODULES”检查了 mod_wsgi 是否在 apache2 上运行

我错过了任何其他配置吗?

4

1 回答 1

1

您应该使用以下网址:

http://SITE/reviewboard

并且 WSGIScriptAlias 指令应该是:

WSGIScriptAlias "/reviewboard" "/usr/www/reviewboard/htdocs/reviewboard.wsgi"

请注意,将整个 Django 站点放在 DocumentRoot 下是不好的做法。您所看到的 WSGI 脚本文件的源代码突出了它不好的原因。也就是说,您的 Apache 配置有问题,您可以公开所有源代码供人们下载。如果 settings.py 在那里并且包含数据库密码,则尤其糟糕。

现在,解决这些问题并用你当时的问题和下一个问题来更新问题,因为我不希望这能完全解决问题,因为这些错误你应该遇到与你描述的不同的问题,所以怀疑你的配置甚至没有被使用。

于 2012-10-29T04:03:31.000 回答