![使在 OS X 中运行的 XAMPP 7 中的站点可通过本地网络(LAN)访问](https://linux22.com/image/1594069/%E4%BD%BF%E5%9C%A8%20OS%20X%20%E4%B8%AD%E8%BF%90%E8%A1%8C%E7%9A%84%20XAMPP%207%20%E4%B8%AD%E7%9A%84%E7%AB%99%E7%82%B9%E5%8F%AF%E9%80%9A%E8%BF%87%E6%9C%AC%E5%9C%B0%E7%BD%91%E7%BB%9C%EF%BC%88LAN%EF%BC%89%E8%AE%BF%E9%97%AE.png)
我在 OS X 平台上的 XAMPP 服务器上运行了一个网站,我想让网络上的其他机器可以访问它。当我搜索这个时,我发现了很多关于旧版本 XAMPP 的信息(以及一些与 Windows 版本相关的内容)。
我在看这个问题,但 XAMPP 看起来已经发生了很大变化,因为界面看起来完全不同。我对所有选项都有点眼花缭乱。我使用的是 OS X 版本 7.3.5。
另外,我不确定为什么我需要这样做,但我必须启用端口转发localhost:8080->80(Over SSH)
才能使网站在我自己的机器上可访问。我确实只是在尝试了一下才发现这一点。这要求我localhost:8080
在 URL 中使用。它可以工作,但这与我所遵循的教程不一致,我不知道如何在没有它的情况下让它工作。
我是 XAMPP 的新手,对 Apache 没有太多经验,因此任何详细说明都将不胜感激。
顺便说一句,这个问题让我在 Meta Stack Exchange 上问了一个关于如何处理可能在 Stack Overflow 上获得更多关注的问题,而这些问题更适合放在其他论坛上。
答案1
请谨慎对待以下所有内容。=)
我不确定为什么我需要这样做,但我必须启用端口转发
localhost:8080 -> 80 (Over SSH)
才能在我自己的机器上访问该网站。
根据这个Apache Friends 博客文章:XAMPP-VM for Mac,看起来 XAMMP for Mac 正在一个独立的虚拟机 (VM) 中运行。此“虚拟机”是一个软件环境,它将 XAMMP(即其进程,如 Apache)与主机操作系统(例如您的 Mac)分开。
XAMMP 接口需要端口转发的原因似乎是因为下面的任何端口1024
在 *NIX 样式系统(如 Mac 和 Linux)上都被视为特权端口。在这种情况下,“特权端口”意味着httpd.exe
需要运行一个进程(如 aka Apache)以root
绑定到它(使用它进行通信)。
80
因此,Apache Friends 的开发人员在非特权端口 () 上提供了 Web 服务器接口,这样最终用户就不必费心摆弄系统来通过 XAMPP 在端口上运行 Apache 8080
。
请注意,还有一个次要问题,即 MacOS 已预装了80
默认在端口上运行的 Apache 版本。这两个版本的 Apache 不能使用相同的端口。
我想让我们网络上的其他机器可以访问 [Apache]。
由于 Apache 正在运行,因此一般步骤可能是: