如何使用子文件夹作为 web.xml 欢迎目录
Posted
技术标签:
【中文标题】如何使用子文件夹作为 web.xml 欢迎目录【英文标题】:How to use a sub-folder as web.xml welcome directory 【发布时间】:2013-05-01 18:12:39 【问题描述】:我想为 Google App Engine 配置我的 web.xml,但我的配置不起作用。我想将默认的index.html
更改为WebApp/index.html
。
这里是web.xml
:
<servlet>
<servlet-name>App</servlet-name>
<servlet-class>bg.app.AppServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>App</servlet-name>
<url-pattern>/WebApp/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>WebApp/index.html</welcome-file>
</welcome-file-list>
【问题讨论】:
我不知道你的配置不起作用是什么意思,但是<welcome-file-list>
声明需要在<servlet>
元素之前。
@SotiriosDelimanolis 它没有;)。
【参考方案1】:
“欢迎文件”表示通过 URL 请求文件夹时需要提供的物理文件。例如。 /
或 /WebApp/
或 WebApp/foo/
。它并不代表“主页文件”或许多初学者似乎认为的那样。让欢迎文件指向子文件夹是没有意义的。当请求另一个子文件夹时,它会失败。
只要坚持index.html
作为欢迎文件,将所需的主页文件放在/WebApp/
文件夹中,然后在根文件夹/
中创建另一个index.html
文件,内容如下:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Dummy homepage</title>
<meta http-equiv="refresh" content="0; url=WebApp" />
</head>
</html>
这将重定向到/WebApp/
(搜索机器人会将其视为 301),这反过来会提供所需的主页文件。
另见:
How to configure welcome file list in web.xml Set default home page via <welcome-file> in JSF project Change default homepage in root path to servlet with doGet【讨论】:
这很好用,并且与welcome-file-list 相比有很大的优势,因为地址栏中的URL 实际上会更改为上面元标记中指定的内容。以上是关于如何使用子文件夹作为 web.xml 欢迎目录的主要内容,如果未能解决你的问题,请参考以下文章