0x00 前言
配置Apache虚拟主机,主要是监听端口,编写虚拟主机配置文件,开放端口,还有就是将web站点的目录建好。
0x01 监听端口8001
修改Apache的配置文件,监听8001端口,这是用于对外进行站点访问的端口。
vi /etc/httpd/conf/httpd.conf
0x02 编写虚拟主机配置文件
vi /etc/httpd/conf.d/vhosts.conf
添加以下内容:
<VirtualHost *:端口号>
#ServerName www.***.com #域名
DocumentRoot /var/www/html/web #网站目录,自己定
ErrorLog "/var/log/httpd/web/error_log"
CustomLog "/var/log/httpd/web/access_log" combined
<Directory "/var/www/html/web">
Options -Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
这是我在服务器上的配置:
0x03 添加目录
mkdir -pv /var/log/httpd/test
mkdir -pv /var/www/test
0x04 修改/etc/httpd/conf.d/welcome.conf
文件
这个文件是apache的测试文件,所以我们这里将该文件内容全部注释掉
为什么httpd.conf
配置文件可以加载welcome.conf
和vhosts.conf
文件呢?
原因很简单,因为httpd.conf
的最后有这样一行代码
这一行代码会使Apache配置文件将/etc/httpd/conf.d
目录下的.conf
文件给包含,所以可以读取到我们新建的vhosts.conf
文件。
0x04 重启apache服务(执行其中一个即可)
systemctl restart httpd
/etc/init.d/httpd restart
0x05 开放端口,注意把SELinux关闭
#永久生效加上 --permanent
firewall-cmd --zone=public --add-port=8001/tcp --permanent
0x06 测试
编写一个index.html
进行测试
echo "hello,this is test page" > /var/www/test/index.html
使用curl
访问页面
同时我们可以在test
的访问成功的日志access_log
中看到相关信息
如果想在不同的端口配置不同目录下的站点,可以在httpd.conf
中添加相应端口,在vhosts.conf
文件中添加相应站点信息,然后再防火墙中将端口开放,这样就可以实现同IP多端口的多个Web站点