解决web项目url与域名关系的问题

起的题目真麻烦...根本描述不清楚问题...

问题描述:通常访问web项目需要 http://127.0.0.1:8080/WebProject/index.action
如何才能够只输入 http://127.0.0.1:8080 就可以访问到这个主页了呢?

环境:Windows,MyEclipse6.5,Tomcat 5
项目:Struts2,Spring2,Hibernate3结合

首先从理论角度讲解:
http://127.0.0.1:8080 如果直接输入这个的话,会打开Tomcat的欢迎界面,所以思路就是替换掉Tomcat的默认界面,修改成为我们项目的主页。

1,把 C:\apache-tomcat-5.5.26\webapps\ROOT 下的东西删掉,因为这里是默认的Tomcat的东西。

2,修改项目的发布目录,默认项目在发布的时候会以项目名称发布,在 C:\apache-tomcat-5.5.26\webapps\ 下生成一个项目名称的文件夹。
修改如下:
右键项目名称->properties,修改项目见附图。

3,修改web.xml里面的欢迎页面,通常在该文件最末尾处
	<welcome-file-list>
  		<welcome-file>/home.jsp</welcome-file>
  	</welcome-file-list>


4,由于项目的主页是action的结果页面,如下:
	<!-- Index Action -->
	<action name="contentofIndexPage" method="IndexList"
		class="indexPageAction">
		<result>/Front.jsp</result>
	</action>
	

所以不可以直接将web.xml里面的home.jsp页面换成 contentofIndexPage.action ,原因比较复杂...web.xml是配置过滤器等的地方..action本身就需要过滤..so....

5,重点:由于上述原因,于是考虑先默认打开home.jsp页面,然后转向至contentofIndexPage.action.
home.jsp 的内容如下:
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"
			+ request.getServerName() + ":" + request.getServerPort()
			+ path + "/contentofIndexPage.action";
	response.sendRedirect(basePath);
%>


总结:通过上述修改已经可以通过 http://127.0.0.1:8080 直接访问到项目主页了。
主要方便了远程访问,也方便了以后有了域名的操作了。

ps:方法肯定不止一种...只是目前我这么处理...

你可能感兴趣的:(apache,tomcat,Web,jsp,struts)