Apache系列—虚拟主机配置的三种方式(一)
来源:互联网 发布:数控车床螺纹编程 编辑:程序博客网 时间:2024/06/13 02:43
Apache配置虚拟主机支持3种方式:基于IP的虚拟主机配置,基于端口的虚拟主机配置,基于域名的虚拟主机配置。
1、基于IP的虚拟主机配置
如果同一台服务器有多个IP,可以使用基于IP的虚机主机配置,将不同的服务绑定在不同的IP上。
1.1 假设服务器有个IP地址为192.168.2.150,首先使用ifconfig在同一个网络接口上绑定其他3个IP。
[root@localhost ~]# ifconfig ens33:1 192.168.2.151/24 up[root@localhost ~]# ifconfig ens33:2 192.168.2.152/24 up[root@localhost ~]# ifconfig ens33:3 192.168.2.153/24 up[root@localhost ~]# ifconfigens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.2.106 netmask 255.255.255.0 broadcast 192.168.2.255 inet6 fe80::2a8d:be6:a4a8:ea0 prefixlen 64 scopeid 0x20<link> ether 00:0c:29:16:90:ae txqueuelen 1000 (Ethernet) RX packets 1220 bytes 87955 (85.8 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 206 bytes 23755 (23.1 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0ens33:1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.2.151 netmask 255.255.255.0 broadcast 192.168.2.255 ether 00:0c:29:16:90:ae txqueuelen 1000 (Ethernet)ens33:2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.2.152 netmask 255.255.255.0 broadcast 192.168.2.255 ether 00:0c:29:16:90:ae txqueuelen 1000 (Ethernet)ens33:3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.2.153 netmask 255.255.255.0 broadcast 192.168.2.255 ether 00:0c:29:16:90:ae txqueuelen 1000 (Ethernet)lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1 (Local Loopback) RX packets 72 bytes 6252 (6.1 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 72 bytes 6252 (6.1 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
1.2 3个IP对应的域名如下,配置主机的host文件便于测试
[root@localhost ~]# vim /etc/hosts[root@localhost ~]# cat /etc/hosts127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.2.151 www.test151.com192.168.2.152 www.test152.com192.168.2.153 www.test153.com
1.3 建立虚拟主机存放网页的根目录,并创建首页文件index.html
[root@localhost /]# mkdir -p /data/www[root@localhost /]# cd /data/www[root@localhost www]# mkdir 151[root@localhost www]# mkdir 152[root@localhost www]# mkdir 153[root@localhost www]# echo "192.168.2.151" > 151/index.html[root@localhost www]# echo "192.168.2.152" > 152/index.html[root@localhost www]# echo "192.168.2.153" > 153/index.html[root@localhost www]# ls151 152 153
1.4 修改httpd.conf,在文件末尾加入以下配置
[root@localhost /]# cd /usr/local/apache/conf/[root@localhost conf]# lsextra httpd.conf magic mime.types original[root@localhost conf]# vim httpd.conf
在httpd.conf文件末尾加入以下配置
Listen 192.168.2.151:80Listen 192.168.2.152:80Listen 192.168.2.153:80Include conf/vhost/*.conf
1.5 编辑每个IP的配置文件
[root@localhost conf]# mkdir -p vhost[root@localhost conf]# cd vhost/[root@localhost vhost]# cat www.test151.conf<VirtualHost 192.168.2.151:80> #主机名 ServerName www.test151.com #配置访问跟目录 DocumentRoot "/data/www/151" #这里配置欢迎首页面 DirectoryIndex index.html index.htm index.php <Directory "/data/www/151"> #服务器允许在此目录中使用符号连接 Options Indexes FollowSymLinks #不允许别人修改我们的页面 AllowOverride None #设置访问权限 Require all granted </Directory></VirtualHost>[root@localhost vhost]# cat www.test152.conf<VirtualHost 192.168.2.152:80> #主机名 ServerName www.test152.com #配置访问跟目录 DocumentRoot "/data/www/152" #这里配置欢迎首页面 DirectoryIndex index.html index.htm index.php <Directory "/data/www/152"> #服务器允许在此目录中使用符号连接 Options Indexes FollowSymLinks #不允许别人修改我们的页面 AllowOverride None #设置访问权限 Require all granted </Directory></VirtualHost>[root@localhost vhost]# cat www.test153.conf<VirtualHost 192.168.2.153:80> #主机名 ServerName www.test153.com #配置访问跟目录 DocumentRoot "/data/www/153" #这里配置欢迎首页面 DirectoryIndex index.html index.htm index.php <Directory "/data/www/153"> #服务器允许在此目录中使用符号连接 Options Indexes FollowSymLinks #不允许别人修改我们的页面 AllowOverride None #设置访问权限 Require all granted </Directory></VirtualHost>[root@localhost vhost]# cat /data/www/151/index.html192.168.2.151[root@localhost vhost]# cat /data/www/152/index.html192.168.2.152[root@localhost vhost]# cat /data/www/153/index.html192.168.2.153
1.5 配置完以后可以启动Apache服务并进行测试
[root@localhost conf]# /usr/local/apache/bin/apachectl -tSyntax OK[root@localhost conf]# /usr/local/apache/bin/apachectl start[root@localhost conf]# curl http://www.test151.com192.168.2.151
附:配置过程中出现的问题总结
1、启动时出现的问题
[root@localhost conf]# /usr/local/apache/bin/apachectl start(98)Address already in use: AH00072: make_sock: could not bind to address 192.168.2.151:80no listening sockets available, shutting downAH00015: Unable to open logs
可能的原因有以下两个:
原因1:查看文件httpd.conf
将此行注释掉。
原因2:端口被其他程序占用
使用以下命令查看占用80端口的程序:
[root@localhost conf]# netstat -lnp|grep 80Active Internet connections (only servers)Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program nametcp 0 0 192.168.2.153:80 0.0.0.0:* LISTEN 2757/httpdtcp 0 0 192.168.2.152:80 0.0.0.0:* LISTEN 2757/httpdtcp 0 0 192.168.2.151:80 0.0.0.0:* LISTEN 2757/httpd
根据PID查看
[root@localhost conf]# ps 2757 PID TTY STAT TIME COMMAND 2757 ? Ss 0:00 /usr/local/apache/bin/httpd -k start
杀掉占用80端口的程序
[root@localhost conf]# kill -9 2757
2、启动时出现的问题
如果apache版本是2.4的话,应该这么写
<Directory "/data/www/153"> #服务器允许在此目录中使用符号连接 Options Indexes FollowSymLinks #不允许别人修改我们的页面 AllowOverride None #设置访问权限 Require all granted</Directory>
如果apache版本是2.4的话,应该这么写
<Directory "/data/www/153"> #服务器允许在此目录中使用符号连接 Options Indexes FollowSymLinks #不允许别人修改我们的页面 AllowOverride None #设置访问权限 Order allow,deny Allow from all</Directory>
阅读全文
0 0
- Apache系列—虚拟主机配置的三种方式(一)
- Apache系列—虚拟主机配置的三种方式(三)
- Apache系列—虚拟主机配置的三种方式(二)
- Nginx系列—虚拟主机配置的三种方式(一)
- Apache配置虚拟主机的三种方式
- Nginx系列—虚拟主机配置的三种方式(三)
- Apache 配置虚拟主机三种方式
- Apache 配置虚拟主机三种方式
- Apache 配置虚拟主机三种方式
- apache虚拟主机三种配置方式
- Apache 配置虚拟主机三种方式
- Apache 配置虚拟主机三种方式
- Apache 配置虚拟主机三种方式
- Apache 配置虚拟主机三种方式
- Apache 配置虚拟主机三种方式
- Apache 配置虚拟主机三种方式
- Apache 配置虚拟主机三种方式
- Apache 配置虚拟主机三种方式
- UCB算法
- AndroidThings学习笔记--gpio控制Led和Button
- java中与数学相关的类
- AngularJs 与Jquery的对比分析,超详细!
- LightOJ
- Apache系列—虚拟主机配置的三种方式(一)
- 在IAR 中出现the stack plug-in failed to set a breakpoint on "main"
- Valid Parentheses
- 初学HTML(二)
- HDU1560 DNA sequence(IDA星) (E)
- Qoo10开店,为什么你不应该担心推广问题,而应该担心销售问题
- Vue实例详解
- Shiro笔记(二)----shiro源码与默认提供的示例
- Color Length UVA