7

当我在 appengine 开发服务器上访问这样的 jsp 页面时:

本地主机:8888/index.jsp/

它在浏览器中显示 index.jsp 的源代码。如果您访问时没有斜杠(即 index.jsp),那么它会呈现 jsp,但使用斜杠(即 index.jsp/)会显示源代码

知道这是为什么吗?以及如何解决?

它似乎只发生在开发服务器而不是生产服务器中。生产给出了 404 Not Found 错误,这很好。

我正在使用 SDK 1.6.4

网页.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/javaeehttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">

    <servlet>
        <servlet-name>RegisterPage</servlet-name>
        <jsp-file>/register.jsp</jsp-file>
    </servlet>
    <servlet-mapping>
        <servlet-name>RegisterPage</servlet-name>
        <url-pattern>/signup</url-pattern>
    </servlet-mapping>


    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
</web-app>

==========

所以...

index.jsp -> 呈现页面

index.jsp/ -> 返回源代码

register.jsp/ -> 返回源代码

register.jsp -> 渲染jsp

注册/ -> 呈现 register.jsp

注册 -> 呈现 register.jsp

所以似乎是带有 *.jsp/ 的网址有问题

4

2 回答 2

1

您应该将所有 *.jsp 文件移动到 /WEB-INF 目录中,并更新您的 web.xml。

这样 *.jsp 文件将无法直接访问,源代码将被隐藏。

<?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/javaeehttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
<servlet>
    <servlet-name>RegisterPage</servlet-name>
    <jsp-file>/WEB-INF/register.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>RegisterPage</servlet-name>
    <url-pattern>/signup</url-pattern>
</servlet-mapping>

<servlet>
    <servlet-name>IndexPage</servlet-name>
    <jsp-file>/WEB-INF/index.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>IndexPage</servlet-name>
    <url-pattern>/index</url-pattern>
</servlet-mapping>

<welcome-file-list>
    <welcome-file>/index</welcome-file>
</welcome-file-list>

于 2012-09-05T15:53:22.847 回答
0

当我使用“重定向”和 apache tomcat 7 时,我遇到了一些问题,因为新版本的 apache 不支持重定向。为了解决您的问题,请在您的 apache 版本(如果您使用它)的更新日志中搜索您在页面中使用的标签,或者发布您的页面代码以便能够建议其他解决方案。可能是您使用了已弃用的标签。此外,请继续检查文件 localhost[DATE].log 以获取更多详细信息

于 2012-05-23T09:17:46.810 回答