use*_*287 2 .htaccess mod-rewrite
我最初想让我的所有网址都以没有扩展名的方式结束。不幸的是,我已经尝试了很多 htaccess 代码,但我几乎放弃了。
所以现在我想这样做,如果有人想访问我网站中的页面,但忘记输入 .php,他/她将自动重定向到相同的 url,但使用 .php
如何才能做到这一点?谢谢!
以下是规则:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.+)$ $1.php [L,QSA]
Run Code Online (Sandbox Code Playgroud)
它将检查请求的资源是否不是现有文件夹。例如:您请求http://www.example.com/help. 如果存在这样的文件夹 ( /help),则规则将不执行任何操作(优先考虑文件夹)。如果您不希望出现此行为,请删除第一行。
它会在重写之前检查是否有这样的 .php 文件。例如:您请求http://www.example.com/aboutus但那里没有aboutus.php文件——不会发生重写。
所有这样的请求都应该没有尾部斜杠:应该是http://www.example.com/aboutus而不是http://www.example.com/aboutus/
该规则也适用于子文件夹中的 URL:例如http://www.example.com/pages/help/aboutus将被重写就好了。
由于上述检查规则不会进入重写循环(此规则没有 500 错误)
查询字符串(页面参数)将被保留
| 归档时间: |
|
| 查看次数: |
10235 次 |
| 最近记录: |