我想将Jetty 9正在侦听的默认端口从8080更改为80.我已经编辑了jetty-http.xml文件,如下所示:
<Call name="addConnector">
<Arg>
<New class="org.eclipse.jetty.server.ServerConnector">
<Arg name="server"><Ref refid="Server" /></Arg>
<Arg name="factories">
<Array type="org.eclipse.jetty.server.ConnectionFactory">
<Item>
<New class="org.eclipse.jetty.server.HttpConnectionFactory">
<Arg name="config"><Ref refid="httpConfig" /></Arg>
</New>
</Item>
</Array>
</Arg>
<Set name="host"><Property name="jetty.host" /></Set>
<Set name="port"><Property name="jetty.port" default="80" /></Set>
<Set name="idleTimeout"><Property name="http.timeout" default="30000"/></Set>
</New>
</Arg>
但是,由于某些奇怪的原因,当我启动服务器时,它仍然会监听8080。
答案 0 :(得分:4)
您定义XML的方式,它将首先使用任何jetty.port
属性,如果未找到,则使用您的硬编码端口80。
检查您的${jetty.home}/start.ini
以及该属性的${jetty.home}/start.d/*
文件。
或者,运行$ java -jar start.jar --help
并查看它是否显示为该命令输出末尾的定义
$ java -jar start.jar --help
(...snip...)
The current start.ini arguments are:
OPTIONS=Server,websocket,resources,ext
threads.min=10
threads.max=200
threads.timeout=60000
jetty.dump.start=false
jetty.dump.stop=false
etc/jetty.xml
OPTIONS=jmx
etc/jetty-jmx.xml
OPTIONS=jsp
jetty.port=8080
http.timeout=30000
etc/jetty-http.xml
此时您有2个选项。
不要编辑XML文件,只需配置start.ini
的{{1}}条目
更改XML文件条目以查找属性。
jetty.port