首页 > 解决方案 > 如何使用 MAMP 中的虚拟主机在 2 个不同的子域上托管 2 个项目

问题描述

我不太确定我正在尝试做的事情是否可能。

目前我正在使用 MAMP 自己托管我的项目。这些项目是托管的,知道我的 IP 地址的人可以在他们的 URL 栏中键入我的 IP 地址时访问它们。当他们访问我的 IP 时,他们会看到我的项目目录列表,如下所示:

在此处输入图像描述

我想知道是否有可能做到这一点,当有人打字时,charter.54.135.14.176他会看到章程文件夹的内容,而当他打字时,他LeagueOfLegendsFrontend.54.135.14.176会看到英雄联盟前端文件夹的内容。

我一直在看有关虚拟主机的教程视频,但我感到很困惑。我知道我必须做两件事:

首先,进入 httpd-vhosts.conf 并为每个项目创建一个虚拟主机。像这样的东西:

<VirtualHost *:80>
    ServerName ???
    ServerAlias ???
    DocumentRoot "C:\MAMP\htdocs\Charter"
</VirtualHost>

<VirtualHost *:80>
    ServerName ???
    ServerAlias ???
    DocumentRoot "C:\MAMP\htdocs\League Of Legends Frontend"
</VirtualHost>

我有点不知道在 ServerName 和 ServerAlias 上写什么

其次,我需要转到主机文件并添加以下内容:

54.135.14.176   ???

最后,我需要通过Include conf/extra/httpd-vhosts.conf在 httpd.conf 文件中取消注释来包含虚拟主机。可悲的是,我被困在其余部分。

标签: apachevirtualhost

解决方案


您需要为您的项目分配两个不同的 IP 地址。因此,所需的配置可能如下所示:

<VirtualHost 127.0.0.2:80>
    ServerName charter.zxc
    DocumentRoot "C:\MAMP\htdocs\Charter"
</VirtualHost>

<VirtualHost 127.0.0.3:80>
    ServerName lol-frontend.zxc
    DocumentRoot "C:\MAMP\htdocs\League Of Legends Frontend"
</VirtualHost>

当然,如果需要,您可以添加目录设置、日志和其他内容,但我只展示非常基本的设置。然后在您的主机文件中添加:

127.0.0.2 charter.zxc
127.0.0.3 lol-frontend.zxc

推荐阅读