安装httpd服务器——RPM安装 •从RHEL系统光盘中获得软件包
[[email protected] -]# Is /media/cdrom/Server | grep httpd httpd-2.2.3-6.el5.i386.rpm httpd-devel-2.2.3-6.el5.i386.rpm httpd-manual-2.2.3-6.el5.i386.rpm system-config-httpd-1.3.3.1-1.el5.noarch.rpm
主要目录和文件
•服务目录:/etc/httpd/ •主配置文件:/etc/httpd/conf/httpd.conf •网页目录:/var/www/html/ •服务脚本:/etc/init.d/httpd •执行程序:/usr/sbin/httpd •访问日志:/var/log/httpd/access_log •错误日志:/var/log/httpd/error_log
httpd.conf配置文件
[[email protected] ~]# vi /etc/httpd/conf/httpd.conf # This is the main Apache server configuration file...... ServerRoot "/etc/httpd" ServerName www.openlab.com \\全局配置文件 <Directory /> ········· </Directory> ········· \\区域配置 <Location /server-status> ········· </Location> \\区域配置 ·········
httpd.conf配置文件 •常用的全局配置参数
• ServerRoot:服务目录 • ServerAdmin:管理员邮箱 • User:运行服务的用户身份 • Group:运行服务的组身份 • ServerName:网站服务器的域名 • DocumentRoot:网页文档的根目录 • Listen:监听的IP地址、端口号 • PidFile:保存httpd进程PID号的文件 • Directorylndex:默认的索引页文件 • ErrorLog:错误日志文件的位置 • Custom Log:访问日志文件的位置 • LogLevel:记录日志的级别,默认为warn • Timeout:网络连接超时,默认为300秒 • KeepAlive:是否保持连接,可选On或Off • MaxKeepAliveRequests:每次连接最务请求文件数 • KeepAliveTimeout:保持连接状态时的超时时间 • Include:需要包含进来的其他配置文件
httpd服务的日志 •两类日志文件
•访问日志:/var/log/httpd/access_log •错误曰志:/var/log/httpd/error_log
• httpd.conf中对日志的设置
[[email protected] -]# vi /etc/httpd/conf/httpd.conf ···· ErrorLog logs/errorjog CustomLog logs/accessjog common ···· 通用日志格式
Web站点的典型应用 •测试httpd服务器的性能 • ab命令 • Apache Benchmark, Apache基准测试工具 • 格式:ab [-q] -c 获发请求数-n 总的请求数[http://]域名[:端口]/路径
•构建虚拟Web主机 •虚拟Web主机 •即在同一台服务器中运行多个Web站点的应用,其中 每一个站点并不独立占用一台真正的计算机 • httpd支持的虚拟主机类型 •基于域名的虚拟主机
[[email protected] htdocs]# vi /etc/httpd/conf/httpd.conf NameVirtualHost 173.17.17.11 <VirtualHost 173.17.17.11> DocumentRoot /var/www/html/openlab ServerName www.openlab.com </VirtualHost> <VirtualHost 173.17.17.11> DocumentRoot /var/www/html/test ServerName www.test.com </VirtualHost>
•基于ip地址的虚拟主机 •应用示例2: •构建2个虚拟Web站点: • www.benet.com, IP地址为 173.17.17.11 • www.accp.com, IP地址为 192.168.4.1 •在浏览器中访问这两个IP时,分别显示不同的内容
[[email protected] htdocs]# vi /etc/httpd/conf/httpd.conf <VirtualHost 173.17.17.11> DocumentRoot /var/www/html/openlab ServerName www.openlab.com
</VirtualHost> <VirtualHost 192.168.4.11
DocumentRoot /var/www/html/test ServerName www.test.com
</VirtualHost>
•基于端口的虚拟主机 •应用示例3: •构建2个虚拟Web站点: • www.benet.com,IP地址、端口为 173.17.17.11:80 • www.accp.com, IP地址、端口为 173.17.17.11:8080 •在浏览器中访问这两个端口时,分别显示不同的内容
[[email protected] htdocs]# vi /etc/httpd/conf/httpd.conf Listen 173.17.17.11:80 Listen 173.17.17.11:8080 <VirtualHost 173.17.17.11:80> DocumentRoot /var/www/html/openlab ServerName www.openlab.com </VirtualHost> <VirtualHost 173.17.17.11:8080> DocumentRoot /var/www/html/test ServerName www.test.com </VirtualHost>
•建立系统用户的个人主页 • 1.修改httpd.conf,启用个人主页功能 • UserDir public一htrql •确认目录区域读i • 2.建立个人主页测试网页 •?/public 一 html/index.html •添加权限:chmod o+x/home/jerry/ • 3.重新启动httpd服务 • /usr/local/apache2/bin/apachectl restart • 4.访问测试 • http://www.benet.com/~user
[[email protected] ?]# vi /etc/httpd/conf/httpd.conf ···· #UserDir disable ···· UserDir public_html <Directory "/home/*/publtb_html"> AllowOverride none Options none Order allow,deny Allow from all </Directory>
•httpd服务的访问控制 •基于用户的访问控制 •添加认证授权设置
[[email protected] ?]# vi /etc/httpd/conf/httpd.conf <Directory "/var/www/html/openlab"> ···· AuthName “OpenLab" AuthType Basic AuthUserFile /var/www/html/openlab/.htpasswd require valid-user </Directory ····
•创建存储认证用户账号及口令的文件 •需使用htpasswd工具
[[email protected] ~]# htpasswd -c > /usr/local/awstats/wwwroo^/.htpasswd awuser 添加一个授权用户
基于客户端地址的访问控制 • Order配置项,定义控制顺序 •先允许后拒绝,默认拒绝所有:Order allow,deny •先拒绝后允许,默认允许所有:Order deny,allow • Allow、Deny配置项,设置允许或拒绝沾地址 • Deny from addressl address2 … • Allow from addressl address2 …
<Directory /var/www/html> Order allow,deny Allow from 192.168.0.0/24 Deny from 192.168.0.100 </Directory>
时间: 2024-10-26 07:56:28