繁体   English   中英

虚拟主机不适用于 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

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

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

考虑需要通过取消注释正确启用/包含虚拟主机

C:\\MAMP\\conf\\apache\\httpd.conf 中Include conf/extra/httpd-vhosts.conf不是在 C:\\MAMP\\bin\\apache\\conf 或 C:\\MAMP\\bin\\apache\\conf\\original 中。

有多个位置具有 MAMP 配置,请确保在正确定位的文件中取消注释该行。

当我第一次测试虚拟主机 (example.dev) 时,我在其目录和 localhost 目录 (/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 更改删除回 80 和 MAMP 首选项:

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

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

Listen 8888
ServerName localhost:8888

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

像这样更改主机文件 -

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>

在右边的 httpd.conf 中启用虚拟主机 打开 MAMP > File > Edit template > Apache > httpd.conf

编辑或添加:

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

编辑 mamp httpd.conf

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

在 LONG 故障排除后,确保将域添加到别名列表中。

MAMP 4

主持人:

test.co

别名:

sub.test.co

在 MAMP 5 中变成:

主持人:

test.co

别名:

sub.test.co
test.co

希望他们能解决这个问题并帮助某人!

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

  1. MAMP
  2. 喜好
  3. 端口
  4. Apache 端口:80 Nginx 端口:8888

MAMP 端口配置

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

我不是 apache 专家。 但我有同样的问题。 我认为我的 DNS 无法解析我的 URL。 当我对 example.dev 执行ping exampl.dev一切正常,但是当我在浏览器中输入 example.dev 时出现错误。 我总是必须在 url 前面添加 http://。

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

应用程序/MAMP/conf/apache/httpd.conf

并从以 Include 开头的行的开头删除哈希(磅)符号:

虚拟主机

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM