一、安装
# yum install httpd -y
设置开机自启动
# chkconfig --level 35 httpd on
启动Apache服务
# /etc/init.d/httpd start
打开浏览器访问:http://ip
服务目录 /etc/httpd
配置文件/etc/httpd/conf/httpd.conf
网站数据目录/var/www/html
访问日志 /var/log/httpd/access_log
错误日志 /var/log/httpd/error_log
配置文件简要说明:
ServerRoot 服务目录
ServerAdmin 管理员邮箱
User 运行服务用户
Group 运行服务用户组
ServerName 网站服务域名
DocumentRoot 网站数据目录
Listen 监听地址和端口号
DirectoryIndex 默认索引页面
ErrorLog 错误日志文件
CustomLog 访问日志文件
Timeout 网页超时时间
Include 加载项
二、开启个人用户主页功能
1.修改配置文件的mod_userdir(第360行)或者直接在/etc/httpd/conf.d增加userdir.conf配置文件
# vi /etc/httpd/conf/httpd.conf
<IfModule mod_userdir.c>
#
# UserDir is disabled by default since it can confirm the presence
# of a username on the system (depending on home directory
# permissions).
#
UserDir enable cy
#
# To enable requests to /~user/ to serve the user's public_html
# directory, remove the "UserDir disabled" line above, and uncomment
# the following line instead:
#
UserDir public_html
</IfModule>
2.创建个人用户网站数据
切换普通用户
# su - cy
创建数据目录
# mkdir -p public_html
写入首页文件内容:
# echo "This is cy's test web"> public_html/index.html
授权
# chmod -Rf 755 /home/cy/public_html
3.增加密码安全验证
设置密码
# htppasswd -c /etc/httpd/passwd cy
修改配置文件的features Allow(302行)或者直接在/etc/httpd/conf.d/userdir.conf添加配置
# vi /etc/httpd/conf/httpd.conf
<Directory "/home/*/public_html">
AllowOverride all
authuserfile /etc/httpd/passwd
authname "my privately web"
authtype basic
Require user cy
</Directory>
访问地址:http://ip/~username
三、虚拟网站主机功能
1.基于IP地址
1.单网卡设置多个IP
2.分别创建网站数据目录
# mkdir -p /var/www/html/252
# mkdir -p /var/www/html/253
# mkdir -p /var/www/html/254
3.写入主页文件
# echo "IP:172.27.9.252"> /var/www/html/252/index.html
# echo "IP:172.27.9.253"> /var/www/html/253/index.html
# echo "IP:172.27.9.254"> /var/www/html/254/index.html
4.配置基于IP的虚拟主机
在/etc/httpd/conf.d/添加vhosts.conf配置文件
<VirtualHost 172.27.11.252>
ServerAdmin root@localhost
DocumentRoot "/var/www/html/252"
ServerName 172.27.11.252
<Directory "/var/www/html/252">
AllowOverride none
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 172.27.11.253>
ServerAdmin root@localhost
DocumentRoot "/var/www/html/253"
ServerName 172.27.11.253
<Directory "/var/www/html/253">
AllowOverride none
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 172.27.11.254>
ServerAdmin root@localhost
DocumentRoot "/var/www/html/254"
ServerName 172.27.11.254
<Directory "/var/www/html/254">
AllowOverride none
Require all granted
</Directory>
</VirtualHost>
重启Apache服务
# /etc/init.d/httpd restart
访问地址:
http://ip1/
http://ip2/
http://ip3/
2.基于主机名
1.配置IP地址与hosts文件
# cat /etc/hosts
# mkdir -p /var/www/html/cy1
# mkdir -p /var/www/html/cy2
# mkdir -p /var/www/html/cy3
# echo "cy1.moxiaokai.com"> /var/www/html/cy1/index.html
# echo "cy2.moxiaokai.com"> /var/www/html/cy2/index.html
# echo "cy3.moxiaokai.com"> /var/www/html/cy3/index.html
在/etc/httpd/conf.d/添加vhosts2.conf配置文件
<VirtualHost 172.27.11.252>
ServerAdmin root@localhost
DocumentRoot "/var/www/html/252"
ServerName "cy1.moxiaokai.com"
<Directory "/var/www/html/252">
AllowOverride none
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 172.27.11.252>
ServerAdmin root@localhost
DocumentRoot "/var/www/html/253"
ServerName "cy2.moxiaokai.com"
<Directory "/var/www/html/253">
AllowOverride none
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 172.27.11.252>
ServerAdmin root@localhost
DocumentRoot "/var/www/html/254"
ServerName "cy3.moxiaokai.com"
<Directory "/var/www/html/254">
AllowOverride none
Require all granted
</Directory>
</VirtualHost>
重启Apache服务
# /etc/init.d/httpd restart
访问地址:
http://domain1/
http://domain2/
http://domain3/
3.基于端口
这里不再赘述,和上述两个配置差不多,请自行研究。
四、Apache访问控制
可以基于主机名、IP地址及客户端特征做Apache网站访问控制,更多的配置请自行研究啦 。
常用的指令:order、allow、deny、satisfy
按顺序匹配规则并执行
设置仅IE浏览器访问:
<Directory "/var/www/html/cy1">
SetEnvIf User-Agent "Internet Explorer" ie
Order allow,deny
Allow from env=ie
</Directory>
设置仅允许172.27.8.252通过:
<Directory "/var/www/html/cy1">
Order allow,deny
allow from 172.27.8.252
deny from all
</Directory>