当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > 在apach5.x中改变servlet的上下文

Linux服务器
LinuxOPENSSL服务器
Redhat6.2+qmail+smtpd认证防止垃圾邮件发送者滥用你的服务器
Samba服务器的设置
搭建Linux下RADIUS服务器(1)
搭建Linux下RADIUS服务器(2)
基于中软Linux实现代理服务器与防火墙(1)
基于中软Linux实现代理服务器与防火墙(2)
Linux服务器硬盘提速方案
Linux组网入门(6):代理服务器
Linux组网入门(5):DNS服务器
Linux组网入门(4):文件服务器
Linux组网入门(3):E-Mail服务器
Linux组网入门(2):FTP服务器
Linux组网入门(1):WEB服务器
RedHatLinux网络服务器构架实务(一)
RedHatLinux网络服务器构架实务(二)
RedHatLinux网络服务器构架实务(三)
RedHatLinux网络服务器构架实务(四)
RedHatLinux网络服务器构架实务(五)
RedHatLinux网络服务器构架实务(六)

Linux服务器 中的 在apach5.x中改变servlet的上下文


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 45 ::
收藏到网摘: n/a


问题:在Apache5.0和5.5种,我需要为每一个程序修改web.xml文件中的servlet的名字,类的名字等等信息。而这些是在ApacheTomcat4.0中不曾看到的。为什么会这样呢?

JeffHanson回答:根据Tomcat5.0发布的说明:

“让web应用程序可以问CGI和SSI,这在当使用一个安全管理程序(例如一个恶意的Web应用程序可以使用它们来躲开安全管理程序来获得访问控制)会制造安全问题。在Tomcat5.0,它们都被设置为不被许可的,因为我们的目标是提供一个完全安全的默认设置。尽管如此,CGI和SSI仍然是可以使用的。”

如何可以使用CGI:

把文件$CATALINA_HOME/server/lib/servlets-cgi.renametojar重新命名为$CATALINA_HOME/server/lib/servlets-cgi.jar.

#8226;在文件$CATALINA_HOME/conf/web.xml中,你需要把两个地方的注视去掉,servlet声明和servletmapping。servlet声明看起来类似于下面::

<servlet>

<servlet-name>cgi</servlet-name>

...

</servlet>

而servletmapping看起来类似于下面::

<servlet-mapping>

<servlet-name>cgi</servlet-name>

<url-pattern>/cgi-bin/*</url-pattern>

</servlet-mapping>

这些servlet声明和mappings可以交替地加入到你的Web应用程序部署描述符中。

使得SSI可用:

?把文件$CATALINA_HOME/server/lib/servlets-ssi.renametojar重新命名为$CATALINA_HOME/server/lib/servlets-ssi.jar.

#8226;在文件$CATALINA_HOME/conf/web.xml中,你需要把两个地方的注视去掉,servlet声明和servletmapping。servlet声明看起来类似于下面:

<servlet>

<servlet-name>ssi</servlet-name>

...

</servlet>

而servletmapping看起来类似于下面:

<servlet-mapping>

<servlet-name>ssi</servlet-name>

<url-pattern>*.shtml</url-pattern>

</servlet-mapping>

这些servlet声明和mapping可以交替地加入到你的Web应用程序部署描述符中。"