我为我的客户创建了一个小型静态网站,现在他们希望我用静态网站替换他们现有的动态网站。他们在远程位置安装了带有SSH的Ubuntu。他们现有的网站在Tomcat6服务器上运行,站点根目录在“/ var / lib / tomcat6 / webapps / ROOT /".
我的网站只包含静态HTML页面。如何用我制作的网站重新配置/替换现有网站?我应该停止服务器并用我的文件替换站点根目录中的文件吗?
添加更新的web.xml:
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<display-name>Welcome to OneLearn</display-name>
<description>
Welcome to OneLearn
</description>
<session-config>
<session-timeout>60</session-timeout>
</session-config>
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/HelloServlet</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>linegraph</servlet-name>
<servlet-class>com.FlexiApps.graphs.LineGraphServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>linegraph</servlet-name>
<url-pattern>/linegraph</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>piechart</servlet-name>
<servlet-class>com.FlexiApps.graphs.PiechartServlet</servlet-class>
</servlet>
<servlet-mapping>
ssawqfxz<servlet-name>piechart</servlet-name>
<url-pattern>/piechart</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>welcome</servlet-name>
<servlet-class>com.FlexiApps.utils.welcome</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>welcome</servlet-name>
<url-pattern>/welcome</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.jpg</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.png</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.js</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
<jsp-config>
<taglib>
<taglib-uri>http://jakarta.apache.org/taglibs/log-1.0</taglib-uri>
<taglib-location>/WEB-INF/lib/taglibs-log.tld</taglib-location>
</taglib>
</jsp-config>
<listener>
<listener-class>
org.apache.commons.fileupload.servlet.FileCleanerCleanup
</listener-class>
</listener>
</web-app>
即使添加了欢迎文件并添加了建议的servlet映射,tomcat似乎也没有检测到添加到ROOT文件夹的任何新文件。
答案 0 :(得分:2)
我找到了解决问题的方法:
Eclipse生成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" id="WebApp_ID" version="2.5">
<display-name>StaticWebsite</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app>
答案 1 :(得分:1)
http://www.java-only.com/LoadTutorial.javaonly?id=26
此博客似乎提供了使用tomcat提供静态内容的分步说明。
答案 2 :(得分:0)
如果它是服务器上运行的唯一站点,最简单的方法是将文件复制到同一位置,并将起始站点命名为与其起始站点相同的名称,在这种情况下,您无需更改配置。 否则请查看以下链接:Tomcat 6: How to change the ROOT application
编辑(from here):
默认Tomcat主页的内容来自名为org.apache.jsp.index_jsp的ROOT webapp servlet。您在$ CATALINA_HOME / webapps / ROOT / index.jsp中看到的页面已预编译到存储在ROOT webapp的JAR文件(catalina-root.jar)中的类文件(org.apache.jsp.index_jsp.class)中WEB-INF / lib目录。由于这个servlet,如果你改变它,Tomcat将不会查看ROOT Web应用程序的index.jsp文件的内容。
更改index.jsp页面内容的最简单方法是从ROOT webapp 中删除此index_jsp servlet。删除index_jsp servlet并重新启动Tomcat后,Tomcat将在ROOT目录中看到index.jsp文件,并将其动态编译为类文件。您现在可以编辑ROOT / index.jsp文件,并通过重新加载“http://localhost:8080/”页面立即生效。