假设我的 Apache 配置文件“/etc/apache2/httpd.conf”如下所示(我不使用 .htaccess):
<Directory /var/www/whatthenerd.com/public>
AllowOverride None
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
[...]
</IfModule>
[...]
</Directory>
<Directory /var/www/whatthenerd.com/public/uploads/css>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /uploads/css/
[...]
</IfModule>
</Directory>
考虑到是/var/www/whatthenerd.com/public/uploads/css
的子目录/var/www/whatthenerd.com/public
,我相信我可以合并规则。但不知何故,我无法让它工作。
我不确定这出了什么问题,以及为什么它不起作用......
<Directory /var/www/whatthenerd.com/public>
AllowOverride None
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
[...]
</IfModule>
[...]
<IfModule mod_rewrite.c>
RewriteBase /uploads/css/
[...]
</IfModule>
</Directory>
答案1
答案是“不,你不能,因为它不是这样工作的”。你不能在同一个 Directory 上下文中拥有两个 RewriteBase。