2014-10-27 179 views
1

所以,我一直在读取mod_rewrite,因为我想删除.php扩展名,并使URL看起来不同,以便最终用户不会看到URL中的所有参数。htaccess重写和删除.php扩展

我的目标: /foo.php?p=bar 样子: /foo/bar

其中foo和酒吧可以是任何东西,数字和字符。 我只使用.php文件,所以它不必使用.html等。

回答

1

您可以在DOCUMENT_ROOT/.htaccess文件中使用此代码:

RewriteEngine On 
RewriteBase/

RewriteCond %{REQUEST_FILENAME} -d [OR] 
RewriteCond %{REQUEST_FILENAME} -f 
RewriteRule^- [F] 

RewriteCond %{DOCUMENT_ROOT}/$1\.php -f [NC] 
RewriteRule ^([^/]+)/?$ $1.php [L] 

RewriteCond %{DOCUMENT_ROOT}/$1\.php -f [NC] 
RewriteRule ^([^/]+)/([^/]+)/?$ $1.php?p=$2 [L] 
+1

谢谢!作品像一个魅力:) – Folkmann 2014-10-27 09:55:29

+0

不客气,很高兴它解决了。 – anubhava 2014-10-27 09:56:56