标签:20180529
一、apache的用户认证然后我们用curl -x192.168.1.31:80 11.com 去访问,提示401,说明你访问的内容需要做用户认证
我们如何用curl -x 去访问用户认证的网站呢?
curl -x192.168.1.31:80 -uriven:1122 11.com
提示200表示访问成功
3、针对单个文件进行认证
<VirtualHost *:80>
DocumentRoot "/data/wwwroot/www.123.com"
ServerName www.123.com
<FilesMatch admin.php> //我们前面指定的是整个目录,现在指定的是单个页面。
AllowOverride AuthConfig
AuthName "123.com user auth"
AuthType Basic
AuthUserFile /data/.htpasswd
require valid-user
</FilesMatch>
</VirtualHost>
二、域名跳转(301永久重定向,提高权重)
1?例:把11.com域名跳转到www.123.com,配置如下:
<VirtualHost :80>
DocumentRoot "/data/wwwroot/www.123.com"
ServerName 11.com
ServerAlias 123.com
<IfModule mod_rewrite.c> //需要mod_rewrite模块支持
RewriteEngine on //打开rewrite功能
RewriteCond %{HTTP_HOST} !^11.com$ //定义rewrite的条件,主机名(域名)不是11.com满足条件
RewriteRule ^/(.)$ http://11.com/$1 [R=301,L] //定义rewrite规则,当满足上面的条件时,这条规则才会执行
</IfModule>
</VirtualHost>
302就是临时重定向。
/usr/local/apache/bin/apachectl -t
/usr/local/apache/bin/apachectl -M |grep rewrite 查看有没有加载rewrite模块
若无该模块,需要编辑配置文件httpd.conf,删除rewrite_module (shared) 前面的#
2?测试
curl -x127.0.0.1:80 -I 123.com -I //状态码为301
三、apache访问日志
1?访问日志记录用户的每一个请求
2?给日志定义格式
vim /usr/local/apache/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
(User-Agent 用户代理,Referer 就是浏览器上一次所访问的网址。)
把虚拟主机配置文件改成如下:
<VirtualHost *:80>
DocumentRoot "/data/wwwroot/www.123.com"
ServerName 11.com
ServerAlias 123.com
CustomLog "logs/11.com-access_log" combined
</VirtualHost>
重新加载配置文件 -t,graceful
curl -x127.0.0.1:80 -I 123.com
tail /usr/local/apache2.4/logs/123.com-access_log
头晕,明天再重新写一次!感觉内容太多
标签:20180529
原文地址:http://blog.51cto.com/10690709/2121788