我使用jetty 9.3.11并在我的 <servlet>
<servlet-name>DefaultServlet</servlet-name>
<servlet-class>org.eclipse.jetty.servlet.DefaultServlet</servlet-class>
<init-param>
<param-name>resourceBase</param-name>
<param-value>/home/User/data/</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>DefaultServlet</servlet-name>
<url-pattern>/static/*</url-pattern>
</servlet-mapping>
中使用以下代码来使用jetty默认servlet来提供静态内容(图像,txt文件等)。
/home/User/
这种方式使用jetty的默认servlet是否安全?我的意思是 - 我可以确定没有人会从/home/User/temp/
,/home/
,content
文件夹中获取数据吗?
答案 0 :(得分:2)
是的,根据需要使用尽可能多的DefaultServlet
个实例。
请注意实际&#34;默认&#34;的行为。 DefaultServlet
与其他人相比。这也意味着你的ServletContext
以及它能看到什么。
prior answer获取信息。
例如:如果您使用的是传统的webapp,那么&#34;默认&#34; (这是由Jetty创建的<servlet-name>default</servlet-name>
实例作为Servlet规范的一部分)将使用webapp本身作为Resource Base
。
任何其他DefaultServlet
个实例都不会参与ServletContext
规则。如果您还有其他<url-pattern>
段,则需要了解pathInfoOnly
init-param。