![在与 IIS 相同的服务器上托管 Jetty 应用程序时出现问题。](https://linux22.com/image/565853/%E5%9C%A8%E4%B8%8E%20IIS%20%E7%9B%B8%E5%90%8C%E7%9A%84%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E6%89%98%E7%AE%A1%20Jetty%20%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E6%97%B6%E5%87%BA%E7%8E%B0%E9%97%AE%E9%A2%98%E3%80%82.png)
我是一名 .Net 程序员,最近使用 Jetty 开发了一个 Jsp 网站。我使用 Eclipse 和Maven-Jetty 插件。
我有一个虚拟专用服务器,其中安装了 IIS 并为 .NET 网站提供服务。我的域名(用于 Jsp 网站)重定向到此服务器。
我的问题是:如何在 Jetty 中将域名连接到网站?Jetty 监听端口 8080,IIS 监听端口 80。
我尝试在 Jetty 配置文件 (jetty-web.xml) 中配置虚拟主机(随后本手册),结果是:当我在服务器内部打开浏览器并导航到 mydomainname.com:8080 时,我会进入该网站。但如果我在外部执行此操作,则什么也得不到。
- 为了访问我的网站我需要配置什么?
- 我该如何克服 8080 端口号?或者我需要将我的域名重定向到此端口吗?
谢谢
答案1
听起来好像您的服务器或上游的防火墙规则阻止了端口 8080。请致电您的主机。
你不能轻易做到这一点。只有一个服务可以绑定到任何单个端口。您可以获取另一个 IP 并将其添加到服务器,然后告诉 Jetty 在该接口上侦听端口 80,然后在您的 DNS 区域中为其创建 A 记录,或者您可能通过 IIS 代理它,具体取决于 IIS 的版本。获取额外的 IP 可能是最简单的方法。
答案2
在我看来,您已经打开了路由器的端口,或者创建了一条规则以允许路由器防火墙允许该端口通过。
谷歌搜索“我的 IP 是什么”,它会给出你的路由器 IP 地址。然后按照以下说明操作。如果这允许你在 WWW 上从网络外访问它,那么你应该做两件事:
- 致电您的提供商并获取静态 IP
- 创建允许离网访问(面向公众)的规则。
https://www.pcworld.com/article/244314/how_to_forward_ports_on_your_router.html