Jetty Can';无法从防火墙外部到达导叶快速启动

Jetty Can';无法从防火墙外部到达导叶快速启动,jetty,firewall,wicket,portforwarding,Jetty,Firewall,Wicket,Portforwarding,我有一个项目,出于服务器配置的目的,它只是一个wicket quickstart原型。我添加了一些应用程序代码,但没有真正做任何事情来更改默认的jetty配置 我可以使用以下工具在本地运行和测试我的应用程序: 或: (我的电脑的网络名称) 或: (我的电脑的本地IP) 我想从路由器防火墙外部访问我的wicket应用程序。(我最终会在我的黑莓手机上测试它,但目前我正在使用谷歌浏览器(Google Chrome)尝试从外部接触它。) 使用我找到了我的路由器的IP 我使用: 我得到一个屏幕,上面显示需

我有一个项目,出于服务器配置的目的,它只是一个wicket quickstart原型。我添加了一些应用程序代码,但没有真正做任何事情来更改默认的jetty配置

我可以使用以下工具在本地运行和测试我的应用程序: 或: (我的电脑的网络名称) 或: (我的电脑的本地IP)

我想从路由器防火墙外部访问我的wicket应用程序。(我最终会在我的黑莓手机上测试它,但目前我正在使用谷歌浏览器(Google Chrome)尝试从外部接触它。)

使用我找到了我的路由器的IP

我使用: 我得到一个屏幕,上面显示需要身份验证,要求输入用户名和密码。我的wicket应用程序中没有设置任何身份验证

我有一个NetGear路由器,WGR614v7。使用路由器管理员,在端口转发下,我添加了以下自定义服务:

Service Name=wicket
Starting Port=8080
Ending Port=8080
Server IP Address=192.168.1.2 //my computer's local IP
添加端口转发服务定义后,我从Chrome收到一条不同的消息: 哎呀!Google Chrome无法连接到#############:8080

如何从路由器防火墙外部访问wicket jetty quickstart?我不知道这是wicket/jetty问题(属于SO)还是防火墙问题(属于serverfault),因此我将首先在这里发布它


谢谢

首先,尝试使用简单的apache或woof。确保将其绑定到0.0.0.0(所有IP)。 A) 如果您无法访问它,则是路由器配置问题。 B) 如果这样做有效,你就知道它不是jetty/wicket配置

案例A)我不知道该路由器,但请查找端口转发。我无法让华硕WL500gP传递请求,因此我不是这里的建议人:)

案例B)码头是否绑定到0.0.0.0?你能从本地网络上的其他机器上找到它吗


没有多少有用的答案,但我希望它能有所帮助。

我一直在我的系统上运行jetty/wicket应用程序,并远程访问它们。我不认为我用Jetty做了什么特别的事情,尤其是wicket做不到这一点。但如果有帮助的话,这里有一个示例Start.java文件(这来自我的一个应用程序——不确定它是否与quickstart中的相同,因为我现在没有可用的quickstart):


我正在使用DLink路由器,因此我不确定如何配置您的路由器。不过,您还应该检查路由器,看看它是否打开了远程web管理,以及它是否在端口8080上。如果是这样,请将其关闭,因为它可能会干扰您的端口转发。

我尝试将Jetty端口更改为4242,并更改服务定义,以查看这样做是否可行。我仍然在chrome中看到“Oops!”页面,所以看起来这不是问题所在。我还尝试禁用我的CA防火墙。我的Start.java看起来像这个+我真的认为你应该多看看你的防火墙和/或系统配置。除了路由器的防火墙外,您的系统上可能还有iptables、Norton或其他防火墙。我敢打赌,这与您的wicket配置或实现无关。祝你好运!非常感谢。我很肯定你是对的,我只是没有时间坐下来再次尝试一下。谢谢你的评论,我会在有机会的时候尝试一下
public class Start {

    public static void main(String[] args) throws Exception {
        Server server = new Server();
        SocketConnector connector = new SocketConnector();

        // Set some timeout options to make debugging easier.
        connector.setMaxIdleTime(1000 * 60 * 60);
        connector.setSoLingerTime(-1);
        connector.setPort(8080);
        server.setConnectors(new Connector[] { connector });

        WebAppContext bb = new WebAppContext();
        bb.setServer(server);
        bb.setContextPath("/");
        bb.setWar("src/main/webapp");

        // START JMX SERVER
        // MBeanServer mBeanServer = ManagementFactory.getPlatformMBeanServer();
        // MBeanContainer mBeanContainer = new MBeanContainer(mBeanServer);
        // server.getContainer().addEventListener(mBeanContainer);
        // mBeanContainer.start();

        server.addHandler(bb);

        try {
            System.out.println(">>> STARTING EMBEDDED JETTY SERVER, PRESS ANY KEY TO STOP");
            server.start();
            System.in.read();
            System.out.println(">>> STOPPING EMBEDDED JETTY SERVER"); 
            // while (System.in.available() == 0) {
            //   Thread.sleep(5000);
            // }
            server.stop();
            server.join();
        } catch (Exception e) {
            e.printStackTrace();
            System.exit(100);
        }
    }
}