1.8.3 域名跳转(永久)

2018-02-27 11:05:53来源:oschina作者:脑洞老湿_人点击

分享
1.8.3 域名跳转

需求,把111.com域名跳转到www.111.com,配置如下:



DocumentRoot "/data/wwwroot/www.111.com"
ServerName www.111.com
ServerAlias 111.com
//需要mod_rewrite模块支持
RewriteEngine on//打开rewrite功能
RewriteCond %{HTTP_HOST} !^www.111.com$//定义rewrite的条件,主机名(域名)不是www.111.com满足条件
RewriteRule ^/(.*)$ http://www.111.com/$1 [R=301,L] //定义rewrite规则,当满足上面的条件时,这条规则才会执行


/usr/local/apache2/bin/apachectl -M|grep -i rewrite //若无该模块,需要编辑配置文件httpd.conf,删除rewrite_module (shared) 前面的#
curl -x127.0.0.1:80 -I 111.com //状态码为301


编辑配置文件:
[root@Dasoncheng ~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf

# ServerAdmin webmaster@dummy-host2.example.com
DocumentRoot "/data/wwwroot/111.com"
ServerName www.111.com
ServerAlias 111.com
#
#
# AllowOverride AuthConfig
# AuthName "Please pass the auth for this page"
# AuthType Basic
# AuthUserFile /data/.htpasswd
# require valid-user
#

#


RewriteEngine on
RewriteCond %{HTTP_HOST} !^www.111.com$
RewriteRule ^/(.*)$ http://www.111.com/$1 [R=301,L]

ErrorLog "logs/111.com-error_log"
CustomLog "logs/111.com-access_log" common

[root@Dasoncheng ~]# /usr/local/apache2.4/bin/apachectl -M |grep -i rewrite
[root@Dasoncheng ~]# vim /usr/local/apache2.4/conf/httpd.conf
[root@Dasoncheng ~]# grep -i rewrite /usr/local/apache2.4/conf/httpd.conf
LoadModule rewrite_module modules/mod_rewrite.so
[root@Dasoncheng ~]# /usr/local/apache2.4/bin/apachectl -M |grep -i rewrite
rewrite_module (shared)
[root@Dasoncheng ~]# /usr/local/apache2.4/bin/apachectl graceful
测试访问跳转:
[root@Dasoncheng ~]# curl -x 192.168.60.11:80 111.com -I
HTTP/1.1 301 Moved Permanently##遇到的第二个提示符(也是httpd.conf里面配置的)301,永久跳转;
Date: Fri, 23 Feb 2018 08:04:27 GMT
Server: Apache/2.4.27 (Unix) PHP/5.6.30
Location: http://www.111.com/
Content-Type: text/html; charset=iso-8859-1

mark
mark


1.8.4 定义访问日志:

访问日志记录用户的每一个请求!
vim /usr/local/apache2.4/conf/httpd.conf //搜索LogFormat
LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined
LogFormat "%h %l %u %t "%r" %>s %b" common
把虚拟主机配置文件改成如下:

 DocumentRoot "/data/wwwroot/www.111.com"
 ServerName www.111.com
 ServerAlias 111.com
 CustomLog "logs/111.com-access_log" combined

重新加载配置文件 -t,graceful
curl -x127.0.0.1:80 -I 111.com
tail /usr/local/apache2.4/logs/111.com-access_log


编辑配置文件:
[root@Dasoncheng ~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf

# ServerAdmin webmaster@dummy-host2.example.com
DocumentRoot "/data/wwwroot/111.com"
ServerName www.111.com
ServerAlias 111.com

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www.111.com$
RewriteRule ^/(.*)$ http://www.111.com/$1 [R=301,L]

ErrorLog "logs/111.com-error_log"
CustomLog "logs/111.com-access_log" combined

[root@Dasoncheng ~]# grep "LogFormat" /usr/local/apache2.4/conf/httpd.conf
LogFormat "%h %l %u %t /"%r/" %>s %b /"%{Referer}i/" /"%{User-Agent}i/"" combined
LogFormat "%h %l %u %t /"%r/" %>s %b" common
[root@Dasoncheng ~]# /usr/local/apache2.4/bin/apachectl -t
Syntax OK
[root@Dasoncheng ~]# /usr/local/apache2.4/bin/apachectl graceful
测试访问日志:

使用三种方式访问:


curl访问
浏览器访问
referer其他页面跳转
[root@Dasoncheng ~]# curl www.111.com
111.com
[root@Dasoncheng ~]# tail -f /usr/local/apache2.4/logs/111.com-access_log
192.168.60.1 - - [23/Feb/2018:15:53:50 +0800] "GET / HTTP/1.1" 200 8
192.168.60.1 - - [23/Feb/2018:15:53:50 +0800] "GET / HTTP/1.1" 200 8
192.168.60.1 - - [23/Feb/2018:15:58:21 +0800] "GET / HTTP/1.1" 301 227
192.168.60.1 - - [23/Feb/2018:15:58:21 +0800] "GET / HTTP/1.1" 200 8
192.168.60.1 - - [23/Feb/2018:15:58:48 +0800] "GET / HTTP/1.1" 301 227
192.168.60.1 - zhangsan [23/Feb/2018:15:58:48 +0800] "GET / HTTP/1.1" 200 8
192.168.60.11 - - [23/Feb/2018:16:04:22 +0800] "GET HTTP://111.com/ HTTP/1.1" 301 227
192.168.60.11 - - [23/Feb/2018:16:04:27 +0800] "HEAD HTTP://111.com/ HTTP/1.1" 301 -
##从下面开始,是我用三种方式访问的:
192.168.60.11 - - [23/Feb/2018:16:23:54 +0800] "GET / HTTP/1.1" 200 8 "-" "curl/7.29.0"
192.168.60.1 - zhangsan [23/Feb/2018:16:24:36 +0800] "GET / HTTP/1.1" 200 8 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.221 Safari/537.36 SE 2.X MetaSr 1.0"
192.168.60.1 - - [23/Feb/2018:16:26:51 +0800] "GET / HTTP/1.1" 200 8 "http://ask.apelearn.com/question/16941" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 10.0; WOW64; Trident/7.0; .NET4.0C; .NET4.0E; .NET CLR 2.0.50727; .NET CLR 3.0.30729; .NET CLR 3.5.30729; Tablet PC 2.0; Zoom 3.6.0)"

apache虚拟主机开启php的短标签 http://www.aminglinux.com/bbs/thread-5370-1-1.html


最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台