У меня есть приложение WSGI, работающее в prod, и мне нужно промежуточное приложение на том же сервере, поэтому я настроил два виртуальных хоста на разных портах, 80 для prod и 9090 для stag, но каждый раз, когда я запрашиваю порт 9090, он использует приложение prod и я не знаю почему. Вот моя конфигурация:
prod.conf:
LoadModule wsgi_module modules/mod_wsgi.so
NameVirtualHost *:80
ServerName dashboard
<VirtualHost *:80>
ServerName dashboard
WSGIDaemonProcess dashboard display-name=%{GROUP}
WSGIProcessGroup dashboard
WSGIScriptAlias / /srv/dashboard/wsgi.py process-group=dashboard application-group=dashboard
WSGIPassAuthorization on
Alias /static/ /srv/dashboard/static/
Alias /favicon.ico /srv/dashboard/static/favicon.ico
DocumentRoot "/srv/dashboard"
<Directory /srv/dashboard>
Options +Indexes +FollowSymLinks +MultiViews
AllowOverride None
Require all granted
</Directory>
<Directory /srv/dashboard/static>
Options +Indexes +FollowSymLinks +MultiViews
Require all granted
</Directory>
ErrorLog "/var/log/httpd/dashboard-error.log"
CustomLog "/var/log/httpd/dashboard-access.log" common
</VirtualHost>
stag.conf:
LoadModule wsgi_module modules/mod_wsgi.so
Listen 9090
NameVirtualHost *:9090
ServerName dashboard-stagging
<VirtualHost *:9090>
ServerName dashboard-stagging
WSGIDaemonProcess dashboard-stagging display-name=%{GROUP}
WSGIProcessGroup dashboard-stagging
WSGIScriptAlias / /srv/dashboard-stagging/wsgi.py process-group=dashboard-stagging application-group=pnpdash$
WSGIPassAuthorization on
Alias /static/ /srv/dashboard-stagging/static/
Alias /favicon.ico /srv/dashboard-stagging/static/favicon.ico
DocumentRoot "/srv/dashboard-stagging"
<Directory /srv/dashboard-stagging>
Options +Indexes +FollowSymLinks +MultiViews
AllowOverride None
Require all granted
</Directory>
<Directory /srv/dashboard-stagging/static>
Options +Indexes +FollowSymLinks +MultiViews
Require all granted
</Directory>
ErrorLog "/var/log/httpd/dashboard-stag-error.log"
CustomLog "/var/log/httpd/dashboard-stag-access.log" common
</VirtualHost>
Мой /var/log/httpd/dashboard-stag-access.log остается пустым, когда я запрашиваю http://dashboard.mycompany.com:9090 и он использует приложение через порт 80.
Любое руководство?
Проверьте имена файлов cookie ваших приложений, вызываемых wsgi (prod и stag), они не должны конфликтовать. Пример: у меня есть 2 приложения с flask и wsgi, использующие одну и ту же программу с разными параметрами. Мне нужно присвоить конфигурации ["SESSION_COOKIE_NAME"] разные значения, чтобы избежать конфликтов.