这应该是一个需要解决的简单问题,但我很难找到有效的解决方案。
我最近部署了一个Flask应用程序,除了我的.htaccess文件的问题外,它正常工作。该应用程序部署在一个子目录(可以在mysite.com/flaskapp
下访问)与wordpress博客(mysite.com
)一起使用,可以正常使用以下内容:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
我发现如果我删除了.htaccess文件的内容,那么这个烧瓶应用程序运行良好,但是首页之外的所有wordpress链接都不起作用。相反,如果上面的内容完整,则wordpress安装有效,但mysite.com/flaskapp/*
中的每个网址都会找到一个未找到的帖子&#39;来自WordPress网站的消息。
因此,我假设我需要的设置是以某种方式不对以mysite.com/flaskapp
开头的任何URL激活上述重写规则,但如果这个假设错误,请随时纠正我。
我需要做什么.htaccess文件来解决这个问题,以便wordpress博客和Flask应用程序都有效?
更新:如果更改或解释任何内容,那么在烧录应用程序的目录中也会有一个.htaccess文件:
# DO NOT REMOVE. CLOUDLINUX PASSENGER CONFIGURATION BEGIN
PassengerAppRoot "/home/user/flaskapp"
PassengerBaseURI "/flaskapp"
PassengerPython "/home/user/virtualenv/ratings/3.6/bin/python3.6"
# DO NOT REMOVE. CLOUDLINUX PASSENGER CONFIGURATION END
答案 0 :(得分:1)
尝试添加以下行:
RewriteCond %{REQUEST_URI} !^/directory
在其他RewriteCond行之后,将“directory”替换为“flaskapp”或要排除的目录名称。
烧瓶应用程序的htaccess不需要任何更改。