WEB开发网
开发学院网站运营建站心得 linux主机如何实现301重定向和伪静态 阅读

linux主机如何实现301重定向和伪静态

 2010-09-25 09:27:28 来源:WEB开发网   
核心提示:在网上查询了一下还没有人分享linux主机如何通过.htaccess文件同时实现301重定向和伪静态的,为帮助菜鸟级站长朋友少走弯路,linux主机如何实现301重定向和伪静态,特以把我的经验分享一下,最近用PW做了一个新站,终于成功了,其代码如下:<IfModule mod_rewrite.c>Rewri
在网上查询了一下还没有人分享linux主机如何通过.htaccess文件同时实现301重定向和伪静态的,为帮助菜鸟级站长朋友少走弯路,特以把我的经验分享一下。

最近用PW做了一个新站,备案审核通过,百度、Google也均已收录。但有个问题是,百度不像Google那样有网站管理员工具,可以设置主域名,带www和不带www的域名全部都收录,致使网站权重过于分散;与站长朋友做友情链接时,大多不愿与我交换,因为本身就是一个新站,收录页本来就不多,权重又过于分散,所以,哈哈,人之常情,让我换,可能我也不换。使权重重新集中其来,最好的办法就是设置一个主域名,做301永久重定向。假设是带www的域名做主域名,那就把不带www的域名重定向到带www的域名上。

由于我的新站是用PW做的,有网友介绍可能通过PW下的ghoble.php(网站根目录下)文件达到301重定向的目的,我的ghoble.php代码如下:

在下述代码下:

file_exists('install.php') && ObHeader('install.php');
error_reporting(E_ERROR | E_PARSE);
set_magic_quotes_runtime(0);
function_exists('date_default_timezone_set') && date_default_timezone_set('Etc/GMT+0');

填加以下代码;

$host= 'www.lxjiehun.com'; //填写你需要转到的地址
if ($_SERVER['HTTP_HOST'] != $host) {
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://{$host}{$_SERVER[REQUEST_URI]}");
}
unset($host);

但试过之后一段时间,百度依然收录不带WWW的网页,有可能ghoble.php文件能实现301功能,但百度不认可?我的主机是linux主机,还有个方法就是通过修改.htaccess文件达到301重定向功能。我原来是通过.htaccess文件做的伪静态,代码如下:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)-htm-(.*)$ $1.php?$2
RewriteRule ^(.*)simple/([a-z0-9\_]+\.html)$ $1/simple/index.php?$2
</IfModule>

在网上没有查到如何通过.htaccess文件同时实现301重定向和伪静态,我先把原.htaccess做了一下备份(很重要噢),经过几次实验,终于成功了,其代码如下:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{http_host} ^lxjiehun.com [NC]
RewriteRule ^(.*)$ http://www.lxjiehun.com/$1 [L,R=301]
RewriteRule ^(.*)-htm-(.*)$ $1.php?$2
RewriteRule ^(.*)simple/([a-z0-9\_]+\.html)$ $1/simple/index.php?$2
</IfModule>

一段时间之后,百度也只收录带www的域名了。

转载请注明出处 www.lxjiehun.com 莱西结婚网

感谢 莱西结婚网 的投稿

Tags:linux 主机 如何

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接