我目前有一个python项目运行在我的apache服务器上使用安装程序:
<VirtualHost *:80> ServerName domain.tld <Location /> SetHandler uwsgi-handler uWSGISocket /run/uwsgi/app/site/socket </Location> </VirtualHost>
但我有几个URL,我不想通过uwsgi处理程序。 我试过使用别名,但似乎是由<Location />覆盖当我做:
<VirtualHost *:80> ServerName domain.tld Alias /file.name /var/www/site/static/file.name <Location /> SetHandler uwsgi-handler uWSGISocket /run/uwsgi/app/site/socket </Location> </VirtualHost>
我已经尝试了一堆变体(不同的位置/别名顺序,ProxyPass,重写),但每次<Location />优先。
你的问题归结为configuration中的部分被合并的优先顺序。 最后发生的Location和Apache Location指令相匹配的顺序,所以你需要的东西来取消uwsgi的一些部分,如:
<VirtualHost *:80> ServerName example.com DocumentRoot /var/wwww/site/static <Location /> SetHandler uwsgi-handler uWSGISocket /run/uwsgi/app/site/socket </Location> <Location /file.name> SetHandler none </Location> </VirtualHost>