Apache 多端口多站点配置方法如下:
1、修改 hosts 文件:
在本地计算机的C:\Windows\System32\drivers\etc
目录下找到hosts
文件,用记事本或其他文本编辑器打开,添加需要访问的域名与本地 IP 地址(一般为127.0.0.1
)的映射关系。
127.0.0.1 localhost 127.0.0.1 www.site1.com 127.0.0.1 www.site2.com
2、修改 httpd.conf 文件:
打开 Apache 安装目录,找到httpd.conf
文件,进行以下操作:
去掉#LoadModule vhost_alias_module modules/mod_vhost_alias.so
这一行的注释符号(#),启用虚拟主机功能。
去掉#Include conf/extra/httpdvhosts.conf
这一行的注释符号(#),导入虚拟主机配置文件。
添加多个监听端口,在httpd.conf
文件中的Listen
指令后添加需要的端口号。
Listen 80 Listen 8080 Listen 8081
3、编辑 httpdvhosts.conf 文件:
打开conf/extra/httpdvhosts.conf
文件,为每个站点和端口配置虚拟主机信息。
<VirtualHost *:80> ServerName www.site1.com DocumentRoot "D:/www/site1" ErrorLog "logs/site1error.log" CustomLog "logs/site1access.log" common </VirtualHost> <VirtualHost *:8080> ServerName www.site2.com DocumentRoot "D:/www/site2" ErrorLog "logs/site2error.log" CustomLog "logs/site2access.log" common </VirtualHost> <VirtualHost *:8081> ServerName www.site3.com DocumentRoot "D:/www/site3" ErrorLog "logs/site3error.log" CustomLog "logs/site3access.log" common </VirtualHost>
4、配置目录权限:
如果遇到 403 错误,可能是由于目录权限设置问题,在httpd.conf
文件中,找到对应的<Directory>
标签,进行如下设置:
<Directory "D:/www/site1"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> <Directory "D:/www/site2"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> <Directory "D:/www/site3"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>
5、重启 Apache 服务:
保存所有更改后,重启 Apache 服务使配置生效,可以通过命令行输入以下命令来重启服务(以 Windows 系统为例):
httpd k restart
或者通过 Apache 安装目录下的“Apache 服务”管理器进行重启。
完成以上步骤后,您应该能够通过不同的端口访问不同的网站,在浏览器中访问http://www.site1.com
、http://www.site2.com:8080
和http://www.site3.com:8081
,分别对应不同的站点。