如何写正确的重写规则在htaccess?



我一直在使用htaccess文件来创建重写,以便不必在我的url中包含。php/。html文件名。

RewriteEngine on
RewriteCond %{HTTP_HOST} ^example-page.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.example-page.com

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule   /front    /front_page.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule   /redirect    /redirect-page.php

然而,由于我的代码目前编写的重定向不工作,所有尝试加载的页面除了文件名是给我一个404错误。我如何修复我的代码,以获得重定向工作?

这样写指令:

RewriteEngine on
RewriteRule ^front$ /front_page.php [L]
RewriteRule ^redirect$ /redirect-page.php [L]

似乎不需要您的所有附加条件?我假设你只有一个域名example-page.com,你没有一个名为/front的文件等。

.htaccess中,RewriteRule模式匹配的url路径不以斜杠开头。您还应该在正则表达式中包含开始/字符串结束锚,以便您只匹配front,而不是在url路径中的任何地方匹配它。

最新更新