如何使用.htaccess规则删除.php扩展名?

时间:2010-06-20 21:13:55

标签: php .htaccess mod-rewrite

我需要我的.htaccess文件来删除.php文件扩展名,并用一个尾部斜杠替换它。

另外,我有一个profile.php页面,通常会使用数字查询字符串参数访问,例如“profile.php?id=3”。

除了使用斜杠替换扩展程序之外,如何使“profile.php?id=3”看起来像“profile/3/”?

到目前为止,我所拥有的只是第一行:

RewriteEngine on

我从哪里开始?

2 个答案:

答案 0 :(得分:4)

如果你是新人......你真的应该read the manual

// if not a file
RewriteCond %{SCRIPT_FILENAME} !-f
// if not a directory
RewriteCond %{SCRIPT_FILENAME} !-d
// pass all params back to index.php
// QSA stands for query string append
// L stands for last rule
RewriteRule (.*) index.php?$1 [QSA,L]

但这会做你想要的。现在不要偷懒。阅读手册!

答案 1 :(得分:0)

这应该这样做

RewriteRule ^profile/(.*)$ profile.php?id=$1 [NC,L]