我正在尝试将所有网站流量重定向到我的前端控制器,但是我一直在麻烦让我的网站在文件已经存在时进行重定向。例如:www.example.com/IDontExist/不存在,并将我发送给控制器,但是www.example.com/maintence/存在,因此完全跳过了我的控制器。不是目的。
我已经尝试过.htaccess文件中的一些操作,并且需要使用它们,因为我必须将其上传到Godaddy共享Linux服务器,并且对高级配置没有太多访问权限。
这是我当前的.htaccess文件:
RewriteEngine On
DirectorySlash Off
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^?]*)$ /index.php [NC,L,QSA]
</IfModule>
我需要派人去www.example.com/maintenance/和所有其他URL到前端控制器,以处理页面,然后再发送给客户端。现在,它正在查找文件并将其加载,然后再转到前端控制器。
编辑:由于某种原因忘记删除RewriteCond命令会导致500错误。
答案 0 :(得分:0)
之后,删除文件和目录除外
RewriteEngine On
RewriteRule ^([^?]*)$ /index.php [NC,L,QSA]
答案 1 :(得分:0)
这是一个重定向循环。删除条件,然后添加以下条件将解决此问题。
RewriteCond %{REQUEST_URI} !/index.php