![如何在 Mac OS X 上将友好名称(例如 www.example.com)映射到 127.0.0.1:port#](https://linux22.com/image/596118/%E5%A6%82%E4%BD%95%E5%9C%A8%20Mac%20OS%20X%20%E4%B8%8A%E5%B0%86%E5%8F%8B%E5%A5%BD%E5%90%8D%E7%A7%B0%EF%BC%88%E4%BE%8B%E5%A6%82%20www.example.com%EF%BC%89%E6%98%A0%E5%B0%84%E5%88%B0%20127.0.0.1%3Aport%23.png)
我正在尝试为我的一个班级创建一个演示,并且我想在我的笔记本电脑上配置“假”域名。
之前的问题“我可以在 OS X 上的 /etc/hosts 中指定端口吗?”包含一个答案,表明要做到这一点,您必须使用 /etc/hosts 以及对 iptables 的更改
“如果 OS X 使用 iptables,您可以将 xyz.com 指向 hosts 文件中的某个 ip,如 157.166.226.25,然后:
sudo iptables -t nat -A OUTPUT -p tcp --dport 80 -d 157.166.226.25 -j DNAT --to-destination 127.0.0.1:3000
“
由于 OS X 不使用 iptables,我如何使用 OS X 上可用的工具做同等的事情?(最初的“提问者”似乎知道如何做到这一点,所以没有解释)。
提前致谢。
答案1
我不清楚你想如何使用它,这很难给出好的答案。有什么特别的原因导致你不能在 Web 服务器中使用虚拟主机,而是在单独的端口上设置单独的 Web 服务器?
我还没有找到任何方法使用非服务器发行版中包含的防火墙进行端口重定向,但您可以做的另一件事是设置 apache 网络服务器作为反向代理,或使用 socks。
答案2
如果是为了课堂演示,我会做一件比使用防火墙更简单的事情:
- 为您的网卡分配多个 IP:127.0.0.1、157.166.226.25、10.0.0.1、1.2.3.4 ...
- 相应地修改 /etc/hosts。
- 让你的不同服务在端口 80 上监听这些 IP。
但是,本网站不提供与家庭相关的问题,您可能对类似网站感兴趣http://unix.stackexchange.com或者http://superuser.com