虚拟主机无法在 MAMP 上运行

Virtual hosts not working on MAMP

我 运行 正在研究 MAMP 上的虚拟主机设置问题。这是我的虚拟主机配置

NameVirtualHost *

<VirtualHost *>
        ServerName dev.local.com
 DocumentRoot “/Applications/MAMP/htdocs/local”
</VirtualHost>

<VirtualHost *>
        DocumentRoot /Applications/MAMP/htdocs
        ServerName localhost
</VirtualHost>

这是我的主机文件

127.0.0.1       localhost
127.0.0.1       dev.local.com

现在访问本地主机时 dev.local.com 都指向本地目录的索引。我在 vhosts 文件中尝试了各种配置设置,但 none 正在工作。我使用的是 MacBook Pro 10.10

像这样更改主机文件 -

NameVirtualHost *:80

<VirtualHost *:80>
    ServerName dev.local.com
    DocumentRoot /Applications/MAMP/htdocs/local
    ServerAlias dev.local.com
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot /Applications/MAMP/htdocs
    ServerName localhost
</VirtualHost>

当我第一次测试虚拟主机 (example.dev) 时,我在其目录和本地主机目录 (/htdocs) 中添加了两个略有不同的 index.php 文件。我的虚拟主机将重定向到 locahost,我会知道,因为 index.php 将是 /htdocs 中的那个。与 user6166 所说的类似,我更改了下面的代码以匹配 8888,并且成功了!我测试 example.dev:8888 并且有效。

 NameVirtualHost *:8888

<VirtualHost *:8888>
    ServerName dev.local.com
    DocumentRoot /Applications/MAMP/htdocs/local
    ServerAlias dev.local.com
</VirtualHost>

<VirtualHost *:8888>
    DocumentRoot /Applications/MAMP/htdocs
    ServerName localhost
</VirtualHost>

然后删除 8888,将上面的 8888 更改回 80,并将 MAMP 首选项更改为:

Apache Port:80
Nginx Port:8888
mySQL Port:3306

然后在httpd.conf下面改成80:

Listen 8888
ServerName localhost:8888

希望对某人有所帮助,它确实解决了我的问题!

我没有发现任何有用的答案,所以如果其他建议对您不起作用:

考虑到虚拟主机需要正确enabled/included取消注释

Include conf/extra/httpd-vhosts.confC:\MAMP\conf\apache\httpd.confNOT 在 C:\MAMP\bin\apache\conf或 C:\MAMP\bin\apache\conf\原始 .

有多个位置具有 MAMP 配置,请确保在 正确定位的文件.

中取消注释该行

我在 MAMP Pro 5(从版本 4 更新后)中遇到了类似的问题。我的一个自定义主机 使用别名 返回 404 NOT FOUND 错误。

经过长时间的故障排除后,请确保将域添加到别名列表中。

MAMP 4

主持人:

test.co

别名:

sub.test.co

在 MAMP 5 中成为:

主持人:

test.co

别名:

sub.test.co
test.co

希望他们能解决这个问题,希望对某人有所帮助!

打开主 Apache 配置文件 httpd.conf,它位于

Applications/MAMP/conf/apache/httpd.conf

并从以 Include:

开头的行的开头删除井号(井号)

虚拟主机

Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf

在右侧启用虚拟主机httpd.conf 打开 MAMP > 文件 > 编辑模板 > Apache > httpd.conf

编辑或添加:

# Virtual hosts
Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf

edit mamp httpd.conf

尝试通过这种方式配置 MAMP 端口:

  1. MAMP
  2. 首选项
  3. 端口
  4. 阿帕奇端口:80 Nginx 端口:8888

我有相同的端口值,配置后它开始工作。

我不是 Apache 专家。但我有同样的问题。我认为我的 DNS 无法解析我的 URL。 当我 ping exampl.dev 时一切正常,但是当我在浏览器中输入 example.dev 时出现错误。我总是要在 url.

前面添加 http://