适合使用非标准端口的 Web 服务器的记录类型?

适合使用非标准端口的 Web 服务器的记录类型?

我需要设置一些必须在 5000 以上的端口上运行的服务器。(这是客户对这项工作的请求,由于内部政策,我对此无能为力)。让我担心的是,除其他事项外,我必须设置一个 Web 服务器以在 80 以外的端口上运行,但该站点仍必须能够接收诸如 example.com/contact 和 example.com/register 之类的请求。由于它不会在端口 80 上运行,因此我无法使用 A 记录。那么...... 这项工作有可能完成吗?我可以将 Apache 配置为使用 5080,或者他们想要的任何端口,但之后呢?LAN 之外的人如何通过地址 example.com/whatever 访问它?

答案1

可以完成这项工作,但不仅仅使用 DNS 条目。您需要在 Web 服务器前面安装一个能够进行端口转发/修改的防火墙。然后,对 的请求example.com/contact可以在通过防火墙时转发到 Apache 服务器内部 IP 地址上的端口 5080,或者对 的请求example.net/register可以转发到同一 Apache 服务器上的端口 5180,或完全不同的服务器上的端口 5080,具体取决于您想要如何设置。

这通常被称为反向代理

根据反向代理防火墙的功能,您可能需要为每个内部端口或地址使用不同的域名(请注意上面示例中的 .net 与 .com),特别是当您想要处理 https 流量时,这些域甚至可能需要指向您控制的不同公共 IP 地址。


由于这行不通,您可以尝试使用功能类似于 URL 缩短服务(如 bit.ly)的异地 Web 服务器。异地 Web 服务器可以接收用户对类似 的地址的请求,example.com/register并使用 http 301 重定向进行响应example.net:5080/register。IE 5/Netscape 4.3 时代及以后的任何 Web 浏览器都会遵循此操作,并且对用户来说基本是透明的。

相关内容