在我的网站(所有.php文件)中我想使用htaccess:
a)删除.php扩展名
b)将index.php重定向到www.mysite.com(连同索引)
我在stackoverflow中搜索,我想出了:
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/robots\.txt$
RewriteCond %{HTTP_HOST} !^www\.mysite\.com$ [NC]
RewriteRule ^(.*)$ http://www.mysite.com/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
#Rewrite index.php back to /
RewriteCond %{THE_REQUEST} ^[^/]*/index\.php [NC]
RewriteRule . / [R=301,L]
哪个部分工作但是看不出如何纠正这个:
a)如果我加载(在浏览器中)页面www.mysite.com/about,它会正确显示about.php页面。但是,如果我加载www.mysite.com/about.php,它不会删除.php扩展名,对于google这是2个不同的页面。
b)如果我加载(在浏览器中)页面www.mysite.com/index.php它会转到www.mysite.com这是我想要的但如果加载www.mysite.com/index我有一些问题因为它显示相同的页面,但无法在这里看到如何删除索引部分。所以,再次,谷歌我有2个不同的页面。希望我能正确解释我的问题。 在简历中,htaccess正在运行,但无法看到如何根据需要调整它。
(视频:我网站中的网页之间的内部链接是... href =“about”>关于我们...)
非常感谢!
答案 0 :(得分:0)
再次编辑
尝试
RewriteCond %{THE_REQUEST} ^[^/]*/^(.*)$\.php [NC]
RewriteRule . /$1 [R=301,L]