Web服务器在文件中有初始页面,比方说somefile.html
。 .htaccess 文件包含以下指令:
DirectoryIndex somefile.html
这使得Web服务器在请求Web服务器根目录时获取somefile.html
的内容。
但是,网站的某些页面可能引用somefile.html
,其中包含与服务器根目录完全相同的内容。因此,这种情况会导致相同的内容出现在Web服务器上两次 - 请求somefile.html
时,以及请求/
时。
如何在保持网站结构的同时以最少的努力最好地纠正这种情况?
答案 0 :(得分:1)
将301重定向添加到文档根目录中的htaccess文件中(最好在您可能已有的任何规则之前:
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^\ ]*)somefile\.html
RewriteRule ^ /%1 [L,R=301]
这会将/somefile.html
的任何直接请求重定向到/
。以及任何子目录:/foo/bar/somefile.html
到/foo/bar/
。