15158846557 在线咨询 在线咨询
15158846557 在线咨询
所在位置: 首页 > 营销资讯 > 网站运营 > Apache 在同一个IP上配置多台虚拟主机(多站点),监听多个端口

Apache 在同一个IP上配置多台虚拟主机(多站点),监听多个端口

时间:2023-07-14 07:21:01 | 来源:网站运营

时间:2023-07-14 07:21:01 来源:网站运营

Apache 在同一个IP上配置多台虚拟主机(多站点),监听多个端口:一键安装PHPStudy后,启动Apache,即可通过 http://127.0.0.1/ 访问默认配置的站点。

该默认站点的目录由 httd.conf 文件内 DocumentRoot 行所定义:

DocumentRoot "D:/phpstudy_pro/WWW"如果我们需要在同一个 IP(127.0.0.1)上放置多个站点(可以均为80端口或不同端口),则需要启用VHOST(虚拟主机)功能来实现:

1、配置 httd.conf 启用VHOST:

# 加载外部 conf/vhosts/vhosts.conf 配置文件Include conf/vhosts/vhosts.conf#同时监听 80 8080 端口Listen 127.0.0.1:80Listen 127.0.0.1:8080#加载 vhost_alias_module 模块LoadModule vhost_alias_module modules/mod_vhost_alias.so# 定义 SRVROOT 变量Define SRVROOT "D:/phpstudy_pro/Extensions/Apache2.4.39"#以上内容均可在 httd.conf 文件内搜索相关关键词,在对应位置删掉 '#' 注释符号或添加相应的行实现2、配置 D:/phpstudy_pro/Extensions/Apache2.4.39/conf/vhosts/vhosts.conf :

<VirtualHost 127.0.0.1:80> ServerName default DocumentRoot "${SRVROOT}/htdocs" FcgidInitialEnv PHPRC "D:/phpstudy_pro/Extensions/php/php7.3.4nts" AddHandler fcgid-script .php FcgidWrapper "D:/phpstudy_pro/Extensions/php/php7.3.4nts/php-cgi.exe" .php <Directory "${SRVROOT}/htdocs"> AllowOverride All Order allow,deny Allow from all Require all granted DirectoryIndex index.php index.html </Directory></VirtualHost><VirtualHost 127.0.0.1:80> ServerName www.example.com ServerAlias www.example.com DocumentRoot "${SRVROOT}/htdocs/example" <Directory "${SRVROOT}/htdocs/example"> AllowOverride All Order allow,deny Allow from all Require all granted DirectoryIndex index.php index.html </Directory></VirtualHost><VirtualHost 127.0.0.1:8080> ServerName example02.com ServerAlias www.example02.com DocumentRoot "${SRVROOT}/htdocs/example02" <Directory "${SRVROOT}/htdocs/example02"> AllowOverride All Order allow,deny Allow from all Require all granted DirectoryIndex index.php index.html </Directory></VirtualHost>3、设置本机 C:/Windows/System32/drivers/etc/hosts 文件:

# 添加如下两行127.0.0.1 www.example.com127.0.0.1 www.example02.com如果两个虚拟主机需要共用 80 端口,则需要像上面一样,修改 Hosts 文件,通过在地址栏输入不同的域名访问不同的站点:

1)在地址栏输入 http://127.0.0.1/ 则显示的是默认 (default) 站点:

D:/phpstudy_pro/Extensions/Apache2.4.39/htdocs/index.html 的内容:

Hello Default VHOST! (HTML文件内容略)

2)在地址栏输入 http://www.example.com/ 则显示的是 example 站点:

D:/phpstudy_pro/Extensions/Apache2.4.39/htdocs/example/index.html 的内容:

Hello Example VHOST! (HTML文件内容略)

3)在地址栏输入 http://www.example02.com:8080/ 则显示的是 example02 站点:

D:/phpstudy_pro/Extensions/Apache2.4.39/htdocs/example02/index.html 的内容:

Hello Example 02 VHOST! (HTML文件内容略)

由于上述 vhosts.conf 文件配置 www.example02.com 监听的是8080端口,故URL中要带上端口号( :8080 ),如果是80端口,则无需带端口号,通过 http://www.example02.com/ 即可访问

4)如需要允许虚拟主机解析PHP脚本,需要在对应 VirtualHost 节下添加如下代码:

FcgidInitialEnv PHPRC "D:/phpstudy_pro/Extensions/php/php7.3.4nts"AddHandler fcgid-script .phpFcgidWrapper "D:/phpstudy_pro/Extensions/php/php7.3.4nts/php-cgi.exe" .php否则虚拟主机目录下的PHP文件会以源文件(纯文本)形式返回。




关键词:主机,同一,配置,虚拟

74
73
25
news

版权所有© 亿企邦 1997-2025 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭