我的主要网站使用PHP / Zend Framework,而.htaccess是常见的:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
现在我需要将一个论坛(在另一个目录中)带到主站点。我在VirtualHost中添加了一个Alias指令
Alias /forums "h:/projects/forums"
论坛软件使用自己的.htaccess。主要的URL /论坛是可访问的,但不是其他人。其他URL(没有相应文件的URL)将转发到主站点。换句话说,主站点(/)的.htaccess文件被选中,而不是/ forums目录下的文件。
答案 0 :(得分:2)
尝试添加新RewriteCond
以告知您的主.htaccess
文件忽略/forums
下的请求。在请求通过该文件后,它应该被/forums/.htaccess
文件接收,但我承认我不确定Alias
是否会影响这个。
条件如下:
RewriteCond %{REQUEST_URI} !^/forums [NC]
如果请求不以RewriteRule
开头,则表示“仅执行下一个/forums
”。最后的[NC]
表示忽略/forums
上的大写,因此请求实际上是/Forums
还是/FORUMS
无关紧要。