带有端口的 Hosts 文件?

带有端口的 Hosts 文件?

我知道你不能在 /etc/hosts 中放置端口,那么我该如何实现以下等效功能:

127.0.0.1     https://website.com:4433

对于 WordPress,我需要 CURL 转到端口 4433 上的 127.0.0.1。由于它是 wordpress 而不是我编写的脚本,因此我无法更改这一点。

答案1

我设法找到 iptables 规则来解决我的问题:

iptables -A OUTPUT -d 127.0.0.1/32 -p tcp -j DNAT --to-destination 127.0.0.1:4433

答案2

在您的中添加一行/etc/hosts

127.0.0.1      website.com

然后配置您的程序(无论它是什么)以在 127.0.0.1 上监听 4433。

您已经完成。


例子:

echo hi | nc -lt 127.0.0.1 4433

现在打开website.com:4433你应该会看到一个“hi”。

要解决您在评论中提到的问题,您可以使用socat

socat tcp-listen:4433,reuseaddr,fork tcp:localhost:xx

使用上述命令,socat将会监听4433,每当有请求进入时都会将其转发到xx,因此请将更改xx为您的程序正在监听的实际端口。

答案3

如果您使用 Chrome 网络浏览器,他们有一个 URL 别名应用程序。它被称为 URL Alias。只需加载它并定义一个网站。在定义中,您可以添加带有端口指定的完整 URL。

相关内容