.htaccess - htaccess RewriteRule 重定向

标签 .htaccess redirect mod-rewrite centos panel

我在新安装的 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/

相关文章:

php - .htaccess 重写规则不包含index.php

linux - 如果文件存在,输出在 shell 中重定向到另一个文件

.htaccess - 仅针对某些特定页面将非 www/http 强制为 www/https

apache - htaccess mod_rewrite 缩短为 SEO 友好的 URL

php - .htaccess 内部重定向不适用于子文件夹

php - 301重定向到同名文件,同服务器,不同域名

regex - .htaccess 文件行为异常且无法使用小写字母

php - zend框架1中的“Invalid controller specified”错误

javascript - css 动画后使用 jquery 自动重定向页面

linux - 301重定向DNS问题