时间:2022-12-06 03:07
CentOS7配置httpd虚拟主机的操作步骤:1、查看CentOS7系统版本和httpd版本;2、输入“systemctl start httpd.service ”命令启动httpd;3、使用curl命令访问虚拟主机;4、借助mkdir命令创建指定文件目录;5、打开vir.conf配置文件,根据要求填写虚拟主机配置信息;6、创建两个web测试页面;7、重载httpd配置文件使修改生效;8、 修改客户端主机的hosts文件,让主机能够解析域名;9、在浏览器中访问web测试页面即可查看结果。
本实验旨在centos7系统中,httpd-2.4配置两台虚拟主机,主要有以下要求:
(1) 提供两个基于名称的虚拟主机:
www1.stux.com,页面文件目录为/web/vhosts/www1;错误日志为/var/log/httpd/www1/error_log,访问日志为/var/log/httpd/www1/access_log;
www2.stux.com,页面文件目录为/web/vhosts/www2;错误日志为/var/log/httpd/www2/error_log,访问日志为/var/log/httpd/www2/access_log;
(2) 通过www1.stux.com/server-status输出其状态信息,且要求只允许提供账号的用户访问;
(3) www1不允许192.168.1.0/24网络中的主机访问;
查看系统版本和httpd版本
[root@host~]$httpd-vserverversion:apache/2.4.6(centos)
serverbuilt:nov14201618:04:44
[root@host~]$cat/etc/centos-release
centoslinuxrelease7.3.1611(core)
启动httpd,测试能否正常运行
[root@host~]$systemctlstarthttpd.service[root@host~]$systemctlstatushttpd.service
●httpd.service-theapachehttpserver
loaded:loaded(/usr/lib/systemd/system/httpd.service;enabled;vendorpreset:disabled)
active:active(running)sincethu2017-06-0103:03:12cst;5sago#active表示正常运行
docs:man:httpd(8)
man:apachectl(8)
process:6473execstop=/bin/kill-winch${mainpid}(code=exited,status=0/success)
mainpid:6485(httpd)
status:"processingrequests..."
cgroup:/system.slice/httpd.service
├─6485/usr/sbin/httpd-dforeground
├─6486/usr/sbin/httpd-dforeground
├─6487/usr/sbin/httpd-dforeground
├─6489/usr/sbin/httpd-dforeground
├─6490/usr/sbin/httpd-dforeground
└─6572/usr/sbin/httpd-dforeground
jun0103:03:11hostsystemd[1]:startingtheapachehttpserver...
jun0103:03:12hostsystemd[1]:startedtheapachehttpserver.
使用curl命令访问
[root@host~]$ipashowens38#查看ip3:ens38:<broadcast,multicast,up,lower_up>mtu1500qdiscpfifo_faststateupqlen1000
link/ether00:0c:29:dc:18:5fbrdff:ff:ff:ff:ff:ff
inet192.168.55.128/24brd192.168.55.255scopeglobaldynamicens38
valid_lft1752secpreferred_lft1752sec
inet6fe80::20c:29ff:fedc:185f/64scopelink
valid_lftforeverpreferred_lftforever
[root@host~]$curlhttp://192.168.55.128#访问
<!doctype>
<h1>
centos7.3
</h1>
创建指定文件目录
[root@hostconf.d]$mkdir-pv/web/vhosts/www1[root@hostconf.d]$mkdir-pv/web/vhosts/www2
[root@hostconf.d]$mkdir-pv/var/log/httpd/www2
[root@hostconf.d]$mkdir-pv/var/log/httpd/www1
根据要求填写虚拟主机配置信息
#path/etc/httpd/conf.d/vir.conf#配置文件全路径#virtualhost1 #虚拟主机1的配置
<virtualhost192.168.55.128:80>
errorlog"/var/log/httpd/www1/error_log"
customlog"/var/log/httpd/www1/access_log"combined
<location/server-status>
sethandlerserver-status
</location>
<directory/web/vhosts/www1>
<requireall>
requireallgranted
requirenotip192.168.1
</requireall>
</directory>
</virtualhost>
#virtualhost2#虚拟主机2的配置
<virtualhost192.168.55.128:80>
servernamewww2.stux.com
documentroot"/web/vhosts/www2"
errorlog"/var/log/httpd/www2/error_log"
customlog"/var/log/httpd/www2/access_log"combined
<directory/web/vhosts/www2>
<requireall>
requireallgranted
</requireall>
</directory>
</virtualhost>
创建www1和www2的index页面
[root@hostconf.d]$cat/web/vhosts/www1/index.htmlwelcometowww1
thankyou
[root@hostconf.d]$cat/web/vhosts/www2/index.html
welcometowww2
thankyou
重载httpd配置文件
[root@hostconf.d]$httpd-tsyntaxok
[root@hostconf.d]$systemctlreloadhttpd.service
修改客户端主机的hosts文件,以便能解析域名
hosts在windows环境下的路径为c:\windows\system32\drivers\etc。在该文件中添加两行
192.168.55.128 www1.stux.com
192.168.55.128 www2.stux.com
访问结果
图1、访问www1站点
图2、访问www2站点
图3、查看www1站点的访问状态——正常
图4、查看www2站点的访问状态错误