5

我在我的个人服务器上使用 apache,我正在尝试运行一个使用 on 制作的“主”网站和另一个使用Silexon制作的网站www.mydomain.com/Flaskwww.mydomain.com/something

要运行该Flask网站,我正在使用 mod_wsgi,如其官方网站 (http://flask.pocoo.org/docs/deploying/mod_wsgi/) 中所述。

它工作得很好,我可以在 访问我的网站www.mydomain.com/something,但是当我返回时www.mydomain.com/收到Flask404 错误消息。

我已经尝试检查apache有关虚拟主机的文档,但我无法理解,这是我当前的'sites-enabled/defaults'配置文件:

<VirtualHost *:80>
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

        WSGIDaemonProcess bc user=bc group=bc threads=5
        WSGIScriptAlias / /var/www/bc/bc.wsgi
        <Directory /var/www/bc>
                   WSGIProcessGroup bc
                   WSGIApplicationGroup %{GLOBAL}
                   Order deny,allow
                   Allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

我的/var/www目录如下所示:

./index.php

./bc/

./bc/index.py

我怎样才能让 python 网站只在 www.mydomain.com/something 中工作,并让 PHP 在 www.mydomain.com/ 上运行?

4

1 回答 1

5

第一个参数WSGIScriptAliasurl path,通过指定WSGIScriptAlias / <foo>您告诉 apache 将所有请求发送到 WSGI 应用程序。尝试WSGIScriptAlias /something <foo>

于 2013-01-07T13:20:30.823 回答