除了root.war之外,为什么我不能读Jetty上的其他文件?

时间:2013-03-01 04:45:16

标签: configuration cgi jetty

我在Jetty的webapps目录下有root.war和cgi-bin-perl目录。我能够在root.war中运行UI代码,但是我无法在cgi-bin-perl目录下读取cgi文件和xml文件,例如hello.cgi,plugin.xml。它返回错误“无法找到”。这是我的etc / webdefault.xml文件。我错过了什么?

<servlet>
    <servlet-name>PerlCGI</servlet-name>
    <servlet-class>org.eclipse.jetty.servlets.CGI</servlet-class>
    <init-param>
        <param-name>commandPrefix</param-name>
         <param-value>/usr/bin/perl</param-value>
    </init-param>
    <init-param>
        <param-name>cgibinResourceBase</param-name>
        <param-value>/opt/jetty/webapps/cgi-bin-perl</param-value>
    </init-param>

    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>PerlCGI</servlet-name>
    <url-pattern>*.pl</url-pattern>
</servlet-mapping>

1 个答案:

答案 0 :(得分:1)

您的servlet映射意味着只有以pl结尾的模式才会被servlet执行....这里没有任何内容可以提供该URL下的其他文件。

如果您想要访问这些文件,那么您应该在该URL空间下设置一个默认的servlet并让它提供这些文件。默认情况下,jetty不会让你下载你喜欢的任何文件,你必须配置它才能做到这一点!