如何在Laravel CMS中实现指定URL跳转至独立子文件夹而非Laravel接管
实现方案
你只需要在根目录的.htaccess重写规则中,添加排除/agency子目录的条件即可,修改后的完整配置如下:
RewriteEngine on # Redirect Trailing Slashes If Not A Folder... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} (.+)/$ RewriteRule ^ %1 [L,R=301] # 新增以下这行,排除agency目录不转发到Laravel的public目录 RewriteCond %{REQUEST_URI} !^/agency RewriteCond %{REQUEST_URI} !^public RewriteRule ^(.*)$ public/$1 [L]
补充说明
- 如果后续需要新增其他独立子目录,只需要仿照新增的排除规则,再加一行对应路径的判断即可,比如要新增
/blog目录,就再加一行RewriteCond %{REQUEST_URI} !^/blog - 如果你在
/agency目录部署WordPress,直接将WordPress的程序文件放到该目录,同时将WordPress自带的.htaccess规则放在/agency目录下即可正常使用,不会和根目录的Laravel规则冲突 - 修改完配置后请清理浏览器缓存(301重定向会被浏览器永久缓存),再测试访问效果
内容的提问来源于stack exchange,提问作者Peter Tan
相关产品推荐
相关产品推荐

