从URL中删除/索引

时间:2014-03-11 18:48:59

标签: html .htaccess mod-rewrite

我在.htaccess中使用以下代码从文件名末尾删除.html,但我遇到的问题是当我转到index.html时,它附加了我不想要的url / index。

Options +FollowSymLinks -MultiViews -Indexes

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^(.+)$ $1.html [L,QSA]

我希望有人可以提供帮助,因为我不希望它显示为domain.com/index

1 个答案:

答案 0 :(得分:1)

首先,为了避免重复内容,您应该将每个网址重定向到XXXX.htmlXXXX。 然后,添加从/index/

的重定向
Options +FollowSymLinks -MultiViews -Indexes

RewriteEngine On

RewriteCond %{THE_REQUEST} /index [NC]
RewriteRule ^ / [R=301,L]

RewriteCond %{THE_REQUEST} /(.+)\.html [NC]
RewriteRule ^ /%1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^(.+)$ /$1.html [L,QSA]