我有一个 JSP 网站,我想与朋友分享。我们都在使用相同的互联网资源。我们有一个共同的静态 IP:49.204.14.98(我的公共 IP)。我们有将近 40 个用户共享相同的资源。我的 IP 为 192.168.0.120。当我尝试连接到 192.168.0.120 时,它无法连接。请建议我如何使其他 PC 可以访问我的服务器。
我不是管理员,也无权访问路由器设置。
我看到了这个链接链接,但它与我的问题无关
如果您使用的是 Apache Tomcat,则默认情况下,部署到它的应用程序可在端口 8080 上访问。
因此,如果您已经以适当的方式将 Web 应用程序部署到 Tomcat,并且您已经启动了 Tomcat 服务器,那么您可以像这样访问您的应用程序(网站):
http://localhost:8080/Your_App_Name/index.jsp
代替localhost,您可以使用 127.0.0.1 或您的私有 IP 地址 192.168.0.120 像这样
http://192.168.0.120:8080/Your_App_Name/index.jsp
使用已部署应用程序的名称(应用程序上下文)代替Your_App_Name ,这里以index.jsp为例。
如果您所有的朋友都和您在同一个LAN(局域网)上(并且您说他们是),那么他们可以使用上述 URL 访问您的 Web 应用程序。
http://192.168.0.120:8080/Your_App_Name/some_path/some_file.jsp
如果它们在您的 LAN 之外,那么您必须在路由器上配置端口转发。当然,要做到这一点,您需要访问它。然后他们将能够使用您的公共 IP 和在设置端口转发时配置的端口访问您的 Web 应用程序。
这是一篇非常好的带有图片的文章:
顺便说一句,如果您已经正确安装并启动了 Apache Tomcat,那么您应该可以像这样访问它:
http://localhost:8080
有用的资源
就像@informatik01 写的那样,“如果你所有的朋友都和你在同一个局域网(局域网)上(你说他们是),他们可以使用上面的 URL 访问你的 Web 应用程序。
http://192.168.0.120:8080/Your_App_Name/some_path/some_file.jsp
”
您使用的是什么操作系统?您对server.xml
in进行了任何更改$CATALINA_HOME/conf
吗?
首先尝试在本地访问它,然后从您朋友的一台计算机上尝试。如果随后失败,请尝试在运行 tomcat 实例的同一台机器上关闭防火墙。根据其配置,它可能会阻止默认端口上的传入连接8080
。如果这是问题所在,请重新激活防火墙并为 http 流量打开所需的端口8080
。
了解日志,它们通常位于 中$CATALINA_HOME/logs/
,例如查看 catalina.out。如果您不确定服务器是否启动并运行以及可能出现的任何问题,那是最好的检查地点。在那里它会说明它找到了哪些 webapps 以及它是否成功部署了它们。您也可以使用浏览器访问服务器根目录localhost:8080
并检查是否出现欢迎屏幕。
祝你好运!
我在 Windows 8 操作系统中遇到了同样的问题,我只是在运行 tomcat apache 的端口上添加了一个异常。
要向端口添加异常,请使用以下步骤
通过单击“开始”按钮“开始”按钮的图片,然后单击“控制面板”来打开 Windows 防火墙。在搜索框中,键入防火墙,然后单击 Windows 防火墙。
在左窗格中,单击高级设置。需要管理员权限 如果系统提示您输入管理员密码或确认,请键入密码或提供确认。
在具有高级安全性的 Windows 防火墙对话框中,在左窗格中单击入站规则,然后在右窗格中单击新建规则。
现在选择端口并单击下一步,现在在特定本地端口中输入您的端口或检查所有本地端口。
在接下来的两个面板上选择您的首选设置,最后一个给出您的入站规则。
只需在 Windows 机器上为 tomcat 启用防火墙端口即可。
转到 Windows 防火墙->高级设置->入站规则。
在右侧单击新规则->然后从对话框中选择端口,然后下一步->然后键入端口“8080”(默认情况下Tomcat在此端口上运行),然后下一步->然后选择“允许连接”->下一步- >给一个名字 - >完成。
您的朋友只能通过公共静态 IP 访问您的网站。
因此,您必须将应用程序托管在像 tomcat 这样的 servlet 容器上。然后要么
使您的 tomcat ip 与公共 ip 相同:如果您有控制面板或管理员控制,则可以这样做。
或者
在内部将请求从您的公共 ip 重定向到您的 tomcat ip/url。如果您的公共 IP 绑定到像 apache 这样的 Web 服务器,您可以这样做。
如果您使用的是 Windows 10,请允许 Tomcat 通过防火墙进行通信。
一种方法是控制面板->系统和安全-> Windows防火墙->“允许应用程序或功能通过Windows防火墙”->“更改设置”->为“Commons Daemon Service Runner”启用私有和公共(如果不存在) : "Allow another app..." -> 在 Tomcat bin 目录中选择 tomcat#.exe,其中 # 将是 tomcat 版本号)
为 javaw 添加防火墙例外。在 Windows 10 中,就是上述“更改设置”的步骤,然后是:查找带有 javaw 路径的 Java(TM) Platform SE 二进制文件(如果不存在,请按上述方式添加)-> 为其启用私有和公共。