Web站点的典型应用
1.使用ulimit命令修改最大文件数限制
# ulimit -a | grep “open files “
# ulimit -n 10000
# ulimit -a | grep “open files “
2.使用AB命令进行压力测试
ab [-q] -c 并发请求数 -n 总的请求数 [http://]域名[:端口]/路径
# /usr/local/apache2/bin/ab -q -c 2000 -n 4000 http://www.benet.com/
3.构建虚拟Web主机
构建基于域名的虚拟主机
(1) 确定服务器主机名、IP地址等参数
(2) 准备连个虚拟站点的网页文件
# cd /usr/local/apache2/htdocs/
# mkdir benetcom accpcom
# echo “www.benet.com” > benetcom/index.html
# echo “www.accp.com” > accpcom/index.html
(3) 修改httpd.conf文件,添加虚拟主机配置
# vi /usr/local/apache2/conf/httpd.conf
NameVirtualHost 192.168.10.1
<VirtualHost 192.1681.10.1>
DocumentRoot /usr/local/apache2/htdocs/benetcom
ServerName www.benet.com
ErrorLog logs/www.benet.com.error.log
CustomLog logs/www.benet.com.access.log
</VirtualHost >
<VirtualHost 192.168.10.1>
DocumentRoot /usr/local/apache2/htdocs/accpcom
ServerName www.accp.com
ErrorLog logs/www.accp.com.error.log
CustomLog logs/www.accp.com.access.log
</VirtualHost>
(4) 重新启动服务
# /usr/local/apache2/bin/apachectl -t
# /usr/local/apache2/bin/apachectl restart
(5) 在客户机访问虚拟Web站点
构建基于IP地址的虚拟主机
(1) 确认IP地址
(2) 建立测试的网页文件(此处不再复述)
(3) 修改httpd.conf文件
# vi /usr/local/apache2/conf/httpd.conf
<VirtualHost 192.168.10.1 >
DocumentRoot /usr/local/apache2/htdocs/benetcom
ServerName www.benet.com
ErrorLog logs/www.benet.com.error.log
CustomLog logs/www.benet.com.access.log
</VirtualHost>
<VirtualHost 192.168.10.5>
DocumentRoot /usr/local/apache2/htdocs/accpcom
ServerName www.accp.com
ErrorLog logs/www.accp.com.error.log
CustomLog logs/www.accp.com.access.log
</VirtualHost>
(4)重启服务
(5) 在客户端测试
构建基于端口的虚拟主机
以上其他步骤不在复述,修改httpd.conf文件
# vi /usr/local/apache2/conf/httpd.conf
Listen 192.168.10.1:80
Listen 192.168.10.1:8080
<VirtualHost 192.168.10.1:80>
DocumentRoot /usr/local/apache2/htdocs/benetcom
ServerName www.benet.com
ErrorLog logs/www.benet.com.error.log
Customlog logs/www.benet.com.access.log
</VirtualHost>
<VirtualHost 192.168.10.1:8080>
DocumentRoot /usr/local/apache2/htdocs/accpcom
ServerName www.accp.com
ErrorLog logs/www.accp.com.error.log
CustomLog logs/www.accp.com.access.log
</VirtualHost>
4.建立系统用户个人主页(此配置是在之前基础上的,故不再配置虚拟主机)
(1) 修改httpd.conf文件.启用个人主页功能
UserDIr public_html
<Directory “/home/public_html”>
Allowoverride none
Options none
Order allow,deny
Allow from all
</Directory>
(2)建立个人主页
# su wang (确认要有此用户)
# mkdir public_html
# echo “wang’s home page “ > public_html/index
# exit
# ls -ld /home5 * * * /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.benet.com
# server crond start
# chkconfig --level 35 crond on
(5)在网页浏览器中查看分析报告
http://www.benet.com/awstats/awstas.pl?config=www.benet.com
为了访问方便,可做以下配置
# vi /usr/local/apache2/htdocs/benetcom/aw.html
<html>
<head>
<meta http-equiv=refresh content=”0;url=http://www.benet.com/awstats/awstats.pl?config=
www.benet.com”>
</head>
</html>
6.httpd服务的访问控制
基于用户的访问控制
(1) 编辑httpd.conf配置文件,查找关于awstats的目录区域设置,添加认证授权设置
# vi /usr/local/apache2/conf/httpd.conf
<Directory “/usr/local/awstats/wwwroot”>
…………..省略
AuthName “AWSTATS” //定义受保护领域的名称,将在弹出的认证登录对话框中显示
AuthType Basic //设置认证类型,Basic为基本认证
AuthUserFile /usr/local/awstats/wwwroot/.htpasswd //用于保存用户账号、密码的认证文件路径
require valid-user //授权给认证文件中的所有有效用户
</Directory>
(2) 创建存储认证用户账号及口令文件
使用htpasswd命令创建用户账号wang,并保存为.htpasswd文件
-c 选项表示重建认证文件,当向已有文件中添加时,可省略
# cd /usr/local/apache2/bin
# ./htpasswd -c /usr/local/awstats/wwwroot/.htpasswd wang
(3) 重启服务
# /usr/local/apache2/bin/apachectl restart
(4) 再次浏览进行验证
基于客户端IP地址的访问控制
主要用于目录区域<Directory>…………</Directory>
使用配置项 Order “Deny from” “Allow from”
Order allow,deny 先允许后拒绝
Order deny,allow 先拒绝后允许
使用形式有
Deny from address1 address2
Allow from address1 address2
如:允许来自任意地址的客户机访问本目录区域
Order allow,deny
Allow from all
除了IP地址为221.12.13.14 及来自jv-aptech.com.cn域的客户机以外,其他任意客户机均被允许访问本目录区域
Order deny,allow
Deny from 221.12.13.14
Deny from jv-aptech.com.cn
仅允许来自网络192.168.10.0/24(192.168.10.100除外)访问本目录区域
Order allow,deny
Allow from 192.168.10.0/24
Deny from 192.168.10.100