是否可以使用公共IP地址访问我的Web应用程序,例如
http:/AppServerIP:8180/myWar/myServlet
如果我点击下面的Web服务器,它可以正常工作(Servlet
被调用)
http:/WebServerIP(public)/myWar/myServlet
当我尝试从我的Application Server调用Servlet
时,我得到以下异常。
java.net.ConnectException: Connection timed out
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:529)
at java.net.Socket.connect(Socket.java:478)
当另一个用户同时登录到同一端口时, Servlet
通过代码在内部调用。所以,我想调用Servlet
并使当前会话无效。我不想通过Web服务器,因为它可能会将请求发送到其他端口。
我的项目堆栈:Jboss AS 5.1.0 GA,Apache Web服务器2.2.5和端口号是8180
答案 0 :(得分:0)
首先,您需要获取公共IP地址,您可以在Windows计算机上使用ipconfig
命令找到该地址。
然后,您可以尝试这样
http://<your_public_ip_address>:<your_webserver_port>/
它将显示服务器欢迎页面。您需要打开您的特定项目。然后,试试这个
http://<your_public_ip_address>:<your_webserver_port>/myproject/
它会显示您项目的index
或home
页。
注意:您需要确定 IP地址和端口号