catch22:需要删除重定向链,我似乎需要

时间:2013-12-12 15:33:45

标签: .htaccess

我一直在使用像

这样的路径

<?php include($_SERVER['DOCUMENT_ROOT'].'/directory/file.php'); ?>

在我的网页中,它按预期工作。但是,当我使用像GTmetrix这样的网站进行速度测试时,他们都会抱怨重定向。例如:

如果可能,请删除以下重定向链:

h-t-t-p://mysite.com/directory/images/shorter.png
h-t-t-p://www.mysite.com/directory/images/shorter.png

我想这是由于我的主.htaccess文件中的这些行:

Options +FollowSymLinks 
RewriteEngine on 
RewriteCond %{HTTP_HOST} ^mysite.com [NC] 
RewriteRule ^(.*)$ http://www.mysite.com/$1 [L,R=301]

所以我觉得这里有一个catch22。搜索引擎不希望我的网站看起来有重复的内容,重定向是降低速度的一个因素。

这里的最佳做法是什么?这似乎是一种常见的情况,但我找不到谷歌搜索的任何解决方案。我应该重新定义document_root,以便在注册商级别重定向,还是什么?

感谢您对此的看法。

1 个答案:

答案 0 :(得分:0)

通过更新HTML中的srchref属性以使用包含www的完整域名来避免不必要的静态内容重定向。

或者,使用没有域名的绝对路径。

或者,添加规则以排除某些类型的文件:

Options +FollowSymLinks 
RewriteEngine on 
RewriteCond %{HTTP_HOST} ^mysite.com [NC] 
RewriteCond %{REQUEST_URI} !\.(js|css|gif|jpeg|png|jpg|pdf|ico)$ [NC]
RewriteRule ^(.*)$ http://www.mysite.com/$1 [L,R=301]