我正在尝试在同一个 apache 服务器上运行 django 和 flask。
WSGISocketPrefix /var/www/wsgi
<VirtualHost *:80>
ServerAdmin name@email.com
ServerName domain.com
ServerAlias www.domain.com
DocumentRoot /var/www/
LogLevel warn
WSGIDaemonProcess apache processes=2 maximum-requests=500 threads=1
WSGIProcessGroup apache
Alias /media /var/www/media/
WSGIScriptAlias / /var/www/djangoapps/django.wsgi
WSGIScriptAlias /app1 /var/www/flaskapps/app.wsgi
</VirtualHost>
- 第一个
WSGIScriptAlias
在根目录中运行一个 django 应用程序:domain.com。 WSGIScriptAlias
的第二个实例需要在子域中运行一个 flask 应用程序:app1
。
但由于主站点位于 django 之上,当我尝试访问:domain.com/app1
时,django 的 urls.py
会尝试处理该 url 命令。但是 urls.py 不应该处理它,因为它是一个独立的 flask 应用程序。
有什么想法可以解决吗?
最佳答案
我不确定这是否能解决问题,但您是否尝试过更改脚本别名的顺序,以便在 /
之前找到 /app1
?
WSGISocketPrefix /var/www/wsgi
<VirtualHost *:80>
ServerAdmin name@email.com
ServerName domain.com
ServerAlias www.domain.com
DocumentRoot /var/www/
LogLevel warn
WSGIDaemonProcess apache processes=2 maximum-requests=500 threads=1
WSGIProcessGroup apache
Alias /media /var/www/media/
WSGIScriptAlias /app1 /var/www/flaskapps/app.wsgi
WSGIScriptAlias / /var/www/djangoapps/django.wsgi
</VirtualHost>
关于python - 在同一个 apache 服务器上运行 django 和 flask,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16765539/