在我的一个项目中,我尝试使用 .htaccess 进行重定向。我正在使用这样的重定向:
RewriteRule ^$ public/ [L]
RewriteRule (.*) public/$1 [L]
但是,现在我想为重写规则添加一个例外。我希望http://example.com/admin/以相同的方式重定向到不同的目录。所有其他流量仍应转到公共目录。所以我添加了这样的重写条件:
RewriteCond %{REQUEST_URI} !/admin/
RewriteRule ^$ public/ [L]
RewriteRule (.*) public/$1 [L]
这没有奏效。我仍然被重定向到公用文件夹。我也试过这个:
RewriteRule ^admin$ admin/ [L]
RewriteRule admin(.*) admin/$1 [L]
RewriteCond %{REQUEST_URI} !/admin
RewriteRule ^$ public/ [L]
RewriteRule (.*) public/$1 [L]
这只会让事情变得更糟。我现在收到 500 内部服务器错误。
我已经搜索了几个小时,我有点厌倦了寻找展示如何为某个文件夹添加例外但不展示如何将此流量重定向到另一个文件夹的示例。你能告诉我我做错了什么,或者我可以尝试哪种其他方法?