|
换域名了,以前域名的收录怎么办?老域名的权重如何转移到新域名呢?百度搜索引擎优化手册里面说的是使用301永久重定向,那么如何灵活应用301重定向呢?下面就在站帮网说说apache服务器下使用htaccess来实现301永久重定向的方法。
推荐阅读:IIS6服务器设置301重定向的方法。
你是同一目录下的网站,还是不同目录下的网站,如果是同一目录下的网站,就必需要地址判断,以免出现“此网页包含重定向循环”;如何是不同目录下的网站,就可以直接弄转向,也就是所有来路域名都转;如果两域名在同一目录,请把伪静态规则放在 301的下面,即先转,再伪。
一、301 永久重定向:
1、所有链接重定向首页: 可新建一个 index.php (两站不同目录)
- <?php
- header('Location:http://www.lezsc.com');
- ?>
复制代码
2、只首页重定向,贴子等都不重定向、不变
- RewriteEngine on
- RewriteCond %{HTTP_HOST} ^lezsc.com$ [OR]
- RewriteCond %{HTTP_HOST} ^www.lezsc.com$
- RewriteRule ^/?$ "http\:\/\/www\.lezsc\.com" [R=301,L]
复制代码
注:只首页重定向,内页、目录不重定向,访问还是原地址。
[OR] 是 “或” 也就是使用带WWW和不带WWW的都转,应该可以加很多 [OR] 做条件。 如bbs子域名转 bbs目录转
注意, [OR]条件判断,如果只一个条件,请把 [OR] 去掉。不然有可能出现: “此网页包含重定向循环”
(以上为两站同一目录下使用,如果网站不同目录,就不需要网址判断,直接使用最下一行)
注意:以上规则中:
^zhanhelp.com 表示:是 zhanhelp.com
!^lezsc.com 表示:不是 lezsc.com
[NC] 为不管大小写。
2、首页、贴子、目录都重定向lezsc.com 的首页、 或指定页:
- RewriteEngine on
- RewriteCond %{HTTP_HOST} ^lezsc.com$ [OR]
- RewriteCond %{HTTP_HOST} ^www.lezsc.com$
- RewriteRule ^(.*)$ http://www.lezsc.com [R=301,L]
复制代码
注:首页、内页、目录都重定向到lezsc.com的首页。
(以上为两站同一目录下使用,如果网站不同目录,就不需要网址判断,直接使用最下一行)
3、www域名 转 根域名 301。这个是最常用的,首页、贴子、目录,所有的都同步重定向:
- RewriteEngine on
- RewriteCond %{HTTP_HOST} ^lezsc.com$ [NC]
- RewriteRule ^(.*)$ "http://www.lezsc.com/$1" [R=301,L]
复制代码
注:首页、内页、链接将都重定向到另一站的相同链接。
(以上为两站同一目录下使用,如果网站不同目录,就不需要网址判断,直接使用最下一行)
4、A域名转B域名,首页、贴子、目录,所有的都同步重定向:
- RewriteEngine on
- RewriteCond %{HTTP_HOST} ^lezsc.com$ [OR]
- RewriteCond %{HTTP_HOST} ^www.lezsc.com$
- RewriteRule ^(.*)$ "http://www.lezsc.com/$1" [R=301,L]
复制代码
注:首页、内页、链接将都转向到另一站的相同链接。
(以上为两站同一目录下使用,如果网站不同目录,就不需要网址判断,直接使用最下一行)
5、如果只子目录重定向,包括目录下的所有链接,其它的不重定向:
如:要把 zhanhelp.com/bbs 下重定向到 zhanhelp.com 来,但zhanhelp.com不重定向。
(以上为两站同一目录下使用,如果网站不同目录,就不需要网址判断,直接使用最下一行)
(这个子目录转,判断语可不用,直接使用最后一行,子目录下的所有来路都转)
301转向,这个你就自己总结1、2、3、4,灵活应用吧!
----------------------------------------------------------------
以上为301把贴子、地址都重定向到新地址。
如果不需要贴子地址都重定向,只把域名重定向,那么,你只需用一首页文件 index.php
内容为: (网址换成你要重定向到目标网址)
- <?php
- $url="".$_SERVER["REQUEST_URI"];
- header("HTTP/1.1 301 Moved Permanently");
- header("location:http://www.lezsc.com");
- ?>
复制代码
这方法为域名直接跳转,如需跳转到子目录,直接在网址加上子目录即可。 (两站不同目录)
htaccess技巧 在 Linux 系统,支持 htaccess 规则下使用。
注:301转向.htaccess 的规则在 Linux 系统 Apache 上测试通过,但是在 Linux 系统 LiteSpeed 上出现 500错误等。或许不兼容。
二、建一个404.htm 文件传根目录
自动义 404、403 错误,在.htaccess里面添加
- ErrorDocument 404 /404.htm
- ErrorDocument 403 /404.htm
复制代码
注:可自己设定无法找到文件转到哪个页 后面的404.htm 可自行改。
服务器与VPS中IIS设置404页不生效的解决方法
三、.htaccess 设置默认首页:
DirectoryIndex index.html index.php default.htm
注:有些空间,默认首页先后不同,自己想要把哪个先访问,可用此设置
四、.htaccess 禁止IP访问网站:
- Order Allow,Deny
- Deny from 582.46.2.67
- Allow from all
复制代码
注:禁止 582.46.2.67 这个IP访问你的站点,可自己测试下禁止自己IP。
可应该在,如遇到服务器攻击,查出这个IP,禁止这个IP访问。
五、.htaccess 禁止图片、文件盗链:
- RewriteCond %{HTTP_REFERER} !^$ [NC]
- RewriteCond %{HTTP_REFERER} !lezsc.com [NC]
- RewriteRule \.(gif|jpg|rar|zip)$ http://lezsc.com/logo.gif [R,L]
复制代码
|
|