在url中删除.php扩展名

时间:2015-05-07 14:35:45

标签: php apache .htaccess mod-rewrite

我有一个网址http://example.com/pages.php/page-name,我想删除pages.php部分的.php扩展名...这可能是.htaccess文件还是我应该放弃?

我从“Remove php extension from url”尝试RewriteRule ^(.+)\.php/(.+)$ $1/$2但没有运气。

我是.htaccess文件的新手(这是我的常规技巧不起作用的第一个网站)

1 个答案:

答案 0 :(得分:0)

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

RewriteEngine On
RewriteBase /

# external redirect from actual URL to pretty one
RewriteCond %{THE_REQUEST} \s/+([^/.]+)\.php/(\S+)\s [NC]
RewriteRule ^ %1/%2? [R=302,L,NE]

# internal forward from pretty URL to actual one
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/.]+)/([^/]+)/?$ $1.php/$2 [L,NC]