萝卜头IT论坛

搜索
查看: 3337|回复: 3
收起左侧

[环境搭建] Apache 301跳转

[复制链接]
发表于 2012-8-27 22:29:14 | 显示全部楼层 |阅读模式

本问将实现,在Apache配置文件中实现301跳转,在.htaccess文件中实现301跳转;主域名301重定向到www二级域名。

1. Apache模块 mod_alias的 Redirect 和 RedirectMatch命令

上面提到2个命令使用方法相似。而区别就是后者RedirectMatch基于正则表达式匹配对当前的URL发送一个外部重定向语法为:

    Redirect [status] URL-path URL
    RedirectMatch [status] regex URL

status参数可以使用以下HTTP状态码:
permanent
    返回一个永久性重定向状态码(301),表示此资源的位置变动是永久性的。
temp
    返回一个临时性重定向状态码(302),这是默认值。
seeother
    返回一个"参见"状态码(303),表示此资源已经被替代。
gone
    返回一个"已废弃"状态码(410),表示此资源已经被永久性地删除了。如果指定了这个状态码,则URL参数将被忽略。

举例:
APACHE http-vhosts.conf配置文件,添加301重定向代码

Redirect 301 /old/old.htm http://www.mmxf.net/new.htm    #/old/old.htm重定向到new.htm

Redirect permanent /one http://www.mmxf.net/two    #同上,permanent指令表示返回永久性重定向状态码301

RedirectMatch 301 ^\/(.*)$ http://mmxf.sinaapp.com/$1    #全站301重定向到新域名,内页重定向到新域名对应内页。
关于本段的说明,如果写成RedirectMatch 301 ^(.*)$ http://mmxf.sinaapp.com/$1 , IE9、firefox、chrome返回的结果是不一样的。IE打不开网页提示404,firefox火狐跳转后第一级目录会多出一个/ ,chrome正常打开。为了确保兼容,建议在.htaccess文件中实现301重定向。

2.使用mod_rewrite重写URL方式
APACHE .htaccess

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

在这里判断当前服务器变量HTTP_HOST是否等于www.mmxf.net,为真就进行重写,按照R=permanent(等同R=301)进行永久重定向,L表示并立即停止重写操作,并不再应用其他重写规则


主域名301重定向到www的二级域名

创建一个.htaccess文件,并将下面提供的代码写入文件内,它可以确保所有来自对domain.com的请求都转向到对 www.domain.com 进行请求。记住.htaccess文件一定要放在旧网站的根目录下,并且新网站要和旧网站保持相同的目录结构及网页文件

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

注意:.htaccess文件只有在使用安装有Mod Rewrite模块的Apache作为WEB服务器的Linux主机上才能起作用

绑定/本地DNS(域名别名跳转)
如果具有对本地DNS记录进行编辑修改的权限,则只要添加一个记录就可以解决此问题。
若无此权限,则可要求网站托管服务商对DNS服务器进行相应设置。
DNS服务器的设置
若要将aaa.domain.com指向www.domain.com,则只需在DNS服务中应增加一个别名记录,可写成:aaa IN CNAME www.domain.com
如需配置大量的虚拟域名,则可写成:* IN CNAME www.domain.com.
这样就可将所有未设置的以domain.com结尾的记录全部重定向到www.domain.com上。
回复

使用道具 举报

发表于 2013-3-8 01:10:11 来自手机 | 显示全部楼层
这是什么东东
回复

使用道具 举报

 楼主| 发表于 2013-3-9 17:42:17 | 显示全部楼层
candy 发表于 2013-3-8 01:10
这是什么东东

301重定向。就是访问一个网站的时候转到另外一个网站
回复

使用道具 举报

 楼主| 发表于 2013-5-19 18:34:02 | 显示全部楼层

安卓客户端好用不
回复

使用道具 举报

联系我们(Contact)|手机版|萝卜头IT论坛 ( 苏ICP备15050961号-1 )

GMT+8, 2024-4-27 10:24 , Processed in 0.099443 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表