我希望访问者在访问扩展名为.php的网页时重定向。为了使它更清晰:
我目前已将.htaccess设置为从URL中删除.php扩展名,其中访问者在www.mysite.com/about/中输入类型时会加载www.mysite.com/about.php内容。我基本上希望相反的事情发生在相反的情况下:
当访问者将www.mysite.com/about.php输入地址栏时,我想加载相同的内容,但是将URL重定向/更改为www.mysite.com/about/并显示在地址栏中。
先谢谢了! 保罗G.
答案 0 :(得分:1)
您可以使用此代码:
# To externally redirect /index.php to /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\sindex(\.php)?[\s?] [NC]
RewriteRule ^ / [R=301,L]
## hide .php extension
# To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php[\s?] [NC]
RewriteRule ^ %1 [R=301,L]
# To internally forward /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1.php -f
RewriteRule ^(.+?)/?$ /$1.php [L]
答案 1 :(得分:0)
嗨,这似乎对我有用:
RewriteEngine on
RewriteRule ^(.*)\.php$ $1 [R]
基本上,这会从您的网址中丢弃.php并保留其他所有内容。