【发布时间】:2018-01-16 19:22:22
【问题描述】:
下面是我的 Apache 配置。我正在尝试为网站的主要部分设置反向代理。因此,当用户访问 mysite.xyz 时,他们会看到在端口 5000 上运行的内容(这是有效的)。我还想在 mysite.xyz/page1 上运行一个烧瓶应用程序,这将返回一个 404 not found 页面。当我切换它们并将应用程序放在 / 并将主站点放在 page1 时,应用程序可以工作,但 page1 找不到任何正确的 js 资产,所以我想避免这种情况。但是该应用程序确实可以在 apache 上运行,但反向代理必须覆盖烧瓶应用程序的 WSGI 部署或其他什么?
<VirtualHost *:80>
ServerName mysite.xyz
ServerAdmin email@gmail.com
ProxyPass / http://127.0.0.1:5000/
ProxyPassReverse / http://127.0.0.1:5000/
RewriteCond %{HTTP_HOST} !^mysite\.xyz$ [NC]
RewriteRule ^/$ http://%{HTTP_HOST}/ [L,R=301]
WSGIScriptAlias /page1 /var/www/FlaskApp/FlaskApp.wsgi
<Directory /var/www/FlaskApp/>
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
【问题讨论】: