标签:apahce用户认证 域名跳转 Apache访问日志 httpd
11.18Apache的用户认证把相应参数copy进去第二个虚拟主机(为了不影响默认主机使用,所以选择了第二个虚拟主机)
<Directory /data/wwwroot/www.123.com> //指定认证的目录
AllowOverride AuthConfig //这个相当于打开认证的开关
AuthName "123.com user auth" //自定义认证的名字,作用不大
AuthType Basic //认证的类型,一般为Basic,其他类型阿铭没用过
AuthUserFile /data/.htpasswd //指定密码文件所在位置
require valid-user //指定需要认证的用户为全部可用用户
</Directory>
[root@Centos7-01 wwwroot]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
修改后
配置完成后,需要创建密码文件,
# /usr/local/apache2.4/bin/htpasswd -c -m /data/.htpasswd aming
上条命令的解释:
htpasswd工具,-c创建,-m MD5加密,后接密码文件./htpasswd 再接用户。
[root@Centos7-01 wwwroot]# ls /data/.htpasswd
/data/.htpasswd
可以cat密码文件,是一串暗码,是因为被MD5加密过。
[root@Centos7-01 wwwroot]# cat /data/.htpasswd
aming:$apr1$5mmrMCOX$E0QY/azyYojxZy0jTlsxt1
*注意:如果需要再次增加用户,取消-c 因为-c是创建和生成,如果使用了-c会被覆盖掉。
[root@Centos7-01 wwwroot]# /usr/local/apache2.4/bin/htpasswd -m /data/.htpasswd zhangsan
/usr/
设置完密码后,
重新加载配置-t , graceful
#curl检视信息,401表示此网页需要验证。
配置完成后,需要到真实机windows修改hosts文件(C:\Windows\System32\drivers\etc),把网址添加进去
登录正确账号密码则可验证成功
截图
如果想单独一个文件进行认证,可以这样做。
#vim /data/wwwroot/111.com/123.php
重新加载配置-t , graceful
完成后, 登录111.com/123.php 就需要认证,而111.com就不需要认证。
11.19 11.20 域名跳转
需求,把123.com域名跳转到www.123.com,配置如下:
<VirtualHost *:80>
DocumentRoot "/data/wwwroot/www.123.com"
ServerName www.123.com
ServerAlias 123.com
<IfModule mod_rewrite.c> //需要mod_rewrite模块支持
RewriteEngine on //打开rewrite功能
RewriteCond %{HTTP_HOST} !^www.123.com$ //定义rewrite的条件,主机名(域名)不是www.123.com满足条件
RewriteRule ^/(.*)$ http://www.123.com/$1 [R=301,L] //定义rewrite规则,当满足上面的条件时,这条规则才会执行
</IfModule>
</VirtualHost>
/usr/local/apache2/bin/apachectl -M|grep -i rewrite //若无该模块,需要编辑配置文件httpd.conf,删除rewrite_module (shared) 前面的#
curl -x127.0.0.1:80 -I 123.com //状态码为301
11.21 配置访问日志
访问日志记录用户的每一个请求
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
把虚拟主机配置文件改成如下:
<VirtualHost *:80>
DocumentRoot "/data/wwwroot/www.123.com"
ServerName www.123.com
ServerAlias 123.com
CustomLog "logs/123.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
11.18-11.21 Apache的用户认证,域名跳转,Apache访问日志
标签:apahce用户认证 域名跳转 Apache访问日志 httpd
原文地址:http://blog.51cto.com/13578154/2103311