HP Operations Orchestration 9.07 (现在接近 EOL) 在端口 8443 上的 Jetty 6.1.14 webapp 中运行。
如何让 Jetty 6.1.14 在端口 80 上运行单独的基本 Web/文件服务器?
到目前为止,我在jetty.xml
配置文件中所做的操作均未成功:
<Configure id="FileServer" class="org.mortbay.jetty.Server">
<Call name="addConnector">
<Arg>
<New class="org.mortbay.jetty.nio.SelectChannelConnector">
<Set name="port">80</Set>
</New>
</Arg>
</Call>
<Set name="handler">
<New id="Handlers" class="org.mortbay.jetty.handler.HandlerCollection">
<Set name="handlers">
<Array type="org.mortbay.jetty.ResourceHandler">
<Item>
<New id="Contexts" class="org.mortbay.jetty.handler.ResourceHandler"/>
<Set name="directoriesListed">true</Set>
<Set name="welcomeFiles">
<Array type="String"><Item>index.html</Item></Array>
</Set>
<Set name="resourceBase">.</Set>
</New>
</Item>
<Item>
<New class="org.mortbay.jetty.server.handler.DefaultHandler"></New>
</Item>
</Array>
</Set>
</New>
</Set>
<Call name="addLifeCycle">
<Arg>
<New class="org.mortbay.jetty.deployer.WebAppDeployer">
<Set name="contexts"><Ref id="Contexts"/></Set>
<Set name="webAppDir"><SystemProperty name="jetty.home" default="."/>/webapps</Set>
</New>
</Arg>
</Call>
</Configure>
这是通过多种课程实现的,包括https://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty#Configuring_a_File_Server_with_XML
答案1
该版本的 Jetty 已有 6 年多历史,而 Jetty 6 本身也已停产 4 年多。我们现在发布了包含 HTTP/2 支持的里程碑版本 Jetty 9.3.x。
引用 Jetty 7/8 文档会比较困难,因为我们在 6 和 7 之间迁移到了 Eclipse 基础,所以所有的打包都发生了变化,更不用说模块本身是如何被分割的了。Jetty 6 文档仍然可以在这里找到:
http://docs.codehaus.org/display/JETTY/Jetty+Documentation
这是您需要查看的部分:
http://docs.codehaus.org/display/JETTY/Static+Content
基本上,您需要注册一个 DefaultServlet 来提供静态内容,或者连接一个 ResourceHandler 来执行相同操作。两者都需要您设置一个上下文来提供静态内容。
答案2
根据 Google+ 社区收到的与此相关的帮助问题,在 Jetty 6.1.14 中这是不可能的。
目录列出Jetty6 中不存在该选项。