本章接上篇Apache虛擬主機的訪問方式
———————————————————————————————————————————————
Apache配置與應用
本章結構
Apache配置剖析:
1.Apache連接保持
2.Apache訪問控制
Apache日誌管理:
1.日誌分割
2.AWStats日誌分析
Apache連接保持
Apache連接保持相關參數
1.KeepAlive:
是否打開連接保持,OFF關閉,ON打開
2.KeepAlive' Timeout
一次連接多次請求之間的最大間隔時間,兩次請求超過該時間連接斷開
3.MaxKeepAliveRequests:
一次連接能夠傳輸的最大請求數量
Apache訪問控制概述
Apache訪問控制
1.作用:
控制對網站資源的訪問
爲特定的網站目錄添加訪問授權
2.常用訪問控制方式
客戶機地址限制:
用戶授權限制
基於客戶端地址的訪問控制
1.使用Require配置項實現訪問控制,按先後順序限制
2.可用於< Location >、< Directory >、 < Files >、 < Limit >配置段中
3.Require配置項的常見語法
Require all granted
Require all denied
Require local
Require [not] host <主機名或域名列表>
Require [not] ip < IP地址或網段列表>
#使用not禁止訪問時要將其置於<RequireAll> </RequireAll>容器中並在容器中指定相應的限制策略
Demo:用戶授權限制訪問
添加用戶授權配置:
[root@localhost named]# cd /etc/httpd/conf/extra
[root@localhost extra]# ls
vhost.conf
[root@localhost extra]# vim vhost.conf
<VirtualHost 192.168.56.131:80>
DocumentRoot "/var/www/html/accp/"
ServerName www.accp.com
ErrorLog "logs/www.accp.com.error_log"
CustomLog "logs/www.accp.com.access_log" common
<Directory "/var/www/html/">
<RequireAll>
Require not ip 192.168.56.130 //添加不允許的IP地址,爲測試主機win7的IP地址
Require all granted
</RequireAll>
</Directory>
</VirtualHost>
#此時可以訪問accp02網段,不可以訪問accp網段
修改完成後按Esc,輸入:wq保存退出
[root@localhost extra]# systemctl restart httpd
驗證黑白名單設置:
此時輸入:www.naccp.com是正常可以訪問我們寫的首頁的內容的
但是我們再輸入:www.accp.com就會跳轉到Apache的主頁,而不是我們寫的主頁內容了,說明黑白名單設置成功
創建用戶認證數據庫:
[root@localhost extra]# cd /etc/httpd/conf
[root@localhost conf]# ls
extra httpd.conf magic
[root@localhost conf]# htpasswd -c /etc/httpd/conf/pwd test01
New password: //此處爲:abc1234,可自行定義
Re-type new password: //此處重複輸入上面的密碼
Adding password for user test01
[root@localhost conf]# ls //此時可以看到pwd文件
extra httpd.conf magic pwd
[root@localhost conf]# cat pwd
test01:$apr1$PsatL6Av$SVm5oEaVh6YbnRU4NOBH./ //這個就是test01的密碼密文
[root@localhost conf]# htpasswd /etc/httpd/conf/pwd test02
New password:
Re-type new password:
Adding password for user test02
[root@localhost conf]# cat pwd
test01:$apr1$PsatL6Av$SVm5oEaVh6YbnRU4NOBH./
test02:$apr1$XzM8x3.v$Ozy.U6GXVzMaBKB4MKdMd/
[root@localhost conf]# cd extra/
[root@localhost extra]# ls
vhost.conf
[root@localhost extra]# vim vhost.conf
<VirtualHost 192.168.56.134:80>
DocumentRoot "/var/www/html/accp02/"
ServerName www.naccp.com
ErrorLog "logs/www.accp02.com.error_log"
CustomLog "logs/www.accp02.com.access_log" common
<Directory "/var/www/html/">
AuthName "DocumentRoot"
AuthType Basic
AuthUserFile /etc/httpd/conf/pwd
Require valid-user
</Directory>
</VirtualHost>
#具體修改內容見上
[root@localhost extra]# systemctl restart httpd //重啓服務