时间 : 14-10-26 栏目 : linux运维 作者 : 老薛 评论 : 0 点击 : 1,332 次
[基本]
例1、当用户访问www.bdkyr.com 使其跳转到http://woaimaidong.blog.chinaunix.net
实际环境:www.baidu.cn/com; www.taobao.cn/com www.360safe.com/www.360.cn
目的:使用户每一次访问都有效,提高网站访问量,产生更大的商业价值
操作步骤:
1) 配置虚拟主机woaimaidong.blog.chinaunix.net
cd /application/apache/conf
vi httpd.conf +391
#Include conf/extra/httpd-vhosts.conf#将注释符去掉,使vhost生效
cd extra
cp httpd-vhosts.conf httpd-vhosts.conf.xk.`date +%Y%m%d` #备份,养成习惯
vi httpd-vhosts.conf#编辑配置文件,建立woaimaidong.blog.chinaunix.net虚拟主机
#注释掉已有的虚拟主机,或者删除掉,或者在现有的基础上改,初期的时候,建议注释掉
然后增加如下配置:
<VirtualHost *:80>
ServerAdmin 812711277@qq.com
DocumentRoot "/application/apache2.2.17/htdocs"
ServerName woaimaidong.blog.chinaunix.net
ErrorLog "|/usr/local/sbin/cronolog /application/apache/logs/woaimaidong.blog.chinaunix.net.error_log"
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/%Y/%m/%d/woaimaidong.blog.chinaunix.net-access_w_%Y%m%d%H.log" combined
</VirtualHost>
保存退出
#检查配置文件是否修改有误
[root@lamp-001 extra]# /application/apache/bin/apachectl -t
Syntax OK #说明OK
在虚拟主机目录创建一个html文件
echo maidong >index.html
重新启动apache,注意启动方式graceful
/application/apache/bin/apachectl graceful
2)修改本本的hosts,增加如下内容,然后保存。#一个Ip不能绑定两个一级域名
192.168.15.10 woaimaidong.blog.chinaunix.net
3)访问测试
http://woaimaidong.blog.chinaunix.net #注意观察是不是你要的结果
4)再次修改配置文件,增加www.bdkyr.com虚拟主机,同时开启rewrite功能
cp httpd-vhosts.conf httpd-vhosts.conf.xk.`date +%Y%m%d%S`#备份
vi httpd-vhosts.conf #编辑配置文件
<VirtualHost *:80>
ServerAdmin 812711277@qq.com
ServerName www.bdkyr.com
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.bdkyr.com [NC]
RewriteRule ^/(.*) http://woaimaidong.blog.chinaunix.net/$1 [L]
ErrorLog "logs/www.bdkyr.com-error_log"
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/%Y/%m/%d/www.bdkyr.com_%Y%m%d%H.log" combined
#RewriteLog /tmp/rewrite.log #开启日志功能
#RewriteLogLevel 3 #日志级别
</VirtualHost>
说明:
RewriteEngine on #打开rewirte功能
RewriteCond %{HTTP_HOST} ^www.bdkyr.com [NC] #声明Client请求的主机中前缀是www.bdkyr.com,[NC] no case忽略大小写
RewriteRule ^(.*) http://woaimaidong.blog.chinaunix.net/ [L] #含义是如果Client请求的主机中的前缀符合上述条件,则直接进行跳转到http://woaimaidong.blog.chinaunix.net/,[L]意味着立即停止重写操作,并不再应用其他重写规则。这里的.*是指匹配所有URL中不包含换行字符,()括号的功能是把所有的字符做一个标记,以便于后面的应用.就是引用前面里的(.*)字符。
#检查配置
[root@lamp-001 extra]# /application/apache/bin/apachectl -t
Syntax OK
5)修改本本hosts配置文件
192.168.15.10 www.bdkyr.com
6)输入http:/www.bdkyr.com,进行访问测试
例2、
如果网页URL变更或者其它需要跳转时,最好的方法就是301永久重定向
操作步骤:
1) 编辑httpd-vhosts.conf
cp httpd-vhosts.conf httpd-vhosts.conf.xk.`date +%Y%m%d%s` #备份
vi httpd-vhosts.conf #编辑,增加如下配置
shift+g 复制如下文件,然后ctrl+v
#2008.maidong.com 301
<VirtualHost *:80>
ServerAdmin 812711277@qq.com
ServerName 2008.maidong.com
RewriteEngine on
RewriteCond %{http_host} ^2008.maidong.com [NC]
RewriteRule (.*) http://woaimaidong.blog.chinaunix.net/olympic/olpc.html [R=301,NC,NE,L]
ErrorDocument 404 http://woaimaidong.blog.chinaunix.net
</VirtualHost>
#检查配置
/application/apache/bin/apachectl -t #千万不要怕麻烦,一定要检查,确认没问题。
/application/apache/bin/apachectl graceful #优雅重启
2)输入http://2008.maidong.com测试
例3、将输入 123.maidong.cn 的域名时跳转到woaimaidong.blog.chinaunix.net
操作步骤:
2) 编辑httpd-vhosts.conf
cp httpd-vhosts.conf httpd-vhosts.conf.xk.`date +%Y%m%d%s` #备份
vi httpd-vhosts.conf #编辑,增加如下配置
<VirtualHost *:80>
ServerAdmin 812711277@qq.com
ServerName 123.maidong.com
RewriteEngine on
RewriteCond %{HTTP_HOST} ^123.maidong.cn [NC]
RewriteRule ^(.*) http://woaimaidong.blog.chinaunix.net/ [L]
</VirtualHost>
本文标签: apache_rewrite详解
除非注明,文章均为( 老薛 )原创,转载请保留链接: http://www.bdkyr.com/xtyw002/317.html