我在新安装的 centos web 面板上遇到问题,如果文件不存在,我使用下面的 htaccess 代码重定向到 index.php,如果 estate.php 存在,那么它将直接转到 estate.php,如果我使用 estate 而没有.php 然后转到 index.php。
下面的代码适用于任何地方,但不适用于 CWP(centos 网络面板),问题是它仍然适用于根本不存在的文件,但如果文件 estate.php 存在并且在 url 中我使用 estate without . php 它转到 esate.php 并忽略转到 index.php。
所以问题是有没有办法强制它转到 index.php,即使文件存在,但如果我使用 estate.php 那么它应该直接转到 estate.php。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^?]*)$ /index.php?path=$1 [NC,L,QSA]
</IfModule>
最佳答案
您需要禁用多 View
尝试在您的 htaccess 中的 RewriteEngine 指令上方添加以下行:
Options -Multiviews
关于.htaccess - htaccess RewriteRule 重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35361334/