可能重复:
使用 .htaccess 删除 .php 扩展名
我对.htaccess 知之甚少,我想要完成的是两方面的。
允许使用或不使用 .php 以及使用或不使用尾部斜杠来调用对 .php 的请求。例如。
/profile.php作品
/profile追加.php,作品
/profile/追加.php所以它工作如果尝试上述操作后文件或目录不存在,则视为404并重定向到另一个页面。
/something失败,重定向到 /404.php?id=$1(请求的 url)
我有两个单独工作的规则,但我需要对这些规则或其他东西进行条件化。任何意见,将不胜感激。
重写引擎开启
# 这适用于 PHP 部分。
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
重写规则 ^([^/]*)/?$ $1.php
# 这适用于一般的 404 处理
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
重写规则 ^(.*)$ /404.php?url=http://%{HTTP_HOST}/$1 [L]