如何配置Tomcat从Webapps外部的外部文件夹提供图像?

如何使用Tomcat从Web应用程序外部的公共文件夹中提供图像文件?我不想在其他端口上使用第二个Apache文件服务器,因为图像文件是同一应用程序的一部分。而且我不想在webapps内部创建指向公共文件夹的符号链接,因为我的应用程序被部署为war文件....是否有一个更简单的解决方案,类似于将默认servlet用于webapps内部的静态内容,用于webapps外部的静态内容

回答:

您可以有一个重定向servlet。在您的web.xml中,您将拥有:

<servlet>

<servlet-name>images</servlet-name>

<servlet-class>com.example.images.ImageServlet</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>images</servlet-name>

<url-pattern>/images/*</url-pattern>

</servlet-mapping>

您所有的图像都将位于“ /

images”中,而servlet会截获该图像。然后,它将读入任何文件夹中的相关文件,并将其重新提供。例如,假设您在图像文件夹c:\

Server_Images \ smilie.gif中有一个gif。在网页中将是<imgsrc="http:/example.com/app/images/smilie.gif"...。在servlet中,

HttpServletRequest.getPathInfo()将产生“

/smilie.gif”。servlet将在文件夹中找到哪个。

以上是 如何配置Tomcat从Webapps外部的外部文件夹提供图像? 的全部内容, 来源链接: utcz.com/qa/399749.html

回到顶部