我在应用程序引擎上遇到了 servlet 映射问题。
详细信息
使用我的 web.xml 配置文件,我将 URL 模式“/i”映射到重定向到我的 WAR 路径根目录上的 info.html。
当我在本地运行它并访问 url localhost:8888/i 时,Web 服务器正确地重定向到 info.html 站点。但是当我推送到应用引擎并尝试访问 www.mysite.com/i 时,我收到 404错误:NOT_FOUND
问题
1. 为什么我的服务器映射在本地工作而不是远程工作?2. 是否有另一种方法可以将像 www.mysite.com/i 这样的 url 模式映射到我的战争路径中的静态文件?
*虽然我使用的是应用程序引擎,但我认为这与其他通过 web.xml 使用 servlet-mappings 的 Java 服务器类似。我也知道映射到静态 html 文件可能看起来很奇怪,但目前我没有加载任何动态内容。
下面的代码示例
我已经包含了我的 web.xml 文件的精简版本以供参考。它隔离了我如何进行重定向。
<?xml version="1.0" encoding="utf-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
<servlet>
<servlet-name>Info</servlet-name>
<jsp-file>info.html</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>Info</servlet-name>
<url-pattern>/i</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>