关于一个web站点的欢迎页面
-
什么是一个web站点的欢迎页面?
-
对于一个webapp来说,我们是可以设置它的欢迎页面的。
-
设置欢迎页面之后,当你访问这个webapp的时候,或者访问这个web站点的时候,没有指定任何“资源路径”,这个时候会默认访问你的欢迎页面。
-
我们一般的访问方式是:
http://localhost:8080/Servelt06/login.html这种方式是指定了要访问的就是login.html资源。
-
如果我们的访问方式是:
http://localhost:8080/Servelt06如果我们访问的就是这个站点,没有指定具体的资源路径。它默认会访问谁呢?
默认会访问你设置的欢迎页面
-
-
怎么设置欢迎页面
-
第一步:在IDEA工具的web目录下新建一个文件login.html
-
第二步:在web.xml文件中进行了以下的配置
-
<Welcome-file-list> <welcome-file>login.html</welcome> </welocme-file-list>
-
注意:设置欢迎页面的时候,这个路径不需要以’/'开始。并且这个路径默认是从webapp的根下开始查找
-
第三步:启动服务器,浏览器地址栏输入地址
http://localhost:8080/Servelt07
-
-
如果在webapp的根下新建一个目录,目录中再给一个文件,name这个欢迎页面该如何设置呢?
-
在webapp根下新建page1
-
在page1下新建page2目录
-
在page2目录下新建page.html页面
-
在web.xml文件中应该这样配置
<Welcome-file-list> <welcome-file>page1/page2/page.html</welcome> </welocme-file-list>
-
一个webapp可以设置多可欢迎页
<Welcome-file-list> <welcome-file>page1/page2/page.html</welcome> <welcome-file>login.html</welcome> </welocme-file-list>
注意越靠上的优先级越高。找不到的继续向下找。
-
-
你有没有注意一件事:当我的文件名设置为index.html的时候,不需要在web.xml文件中进行配置欢迎页面。这是为什么?
-
这是因为Tomcat服务器已经提前配置好了。
-
实际上配置欢迎页面有两个地方可以配置:
-
一个是在webapp内部的web.xml文件中。(在这个地方配置的属于局部配置)
-
一个是在CATALINA_HOME/conf/web.xml文件中进行配置。(在这个地方配置的属于全局配置)
-
<welcome-life-list> <welcome-life>index.html</welcome-life> <welcome-life>index.htm</welcome-life> <selocome-life>index.jsp</selocome-life></welocome-life-list>
-
Tomcat服务器的全局欢迎页面是:inex.html index.htm index.jsp。如果你一个web站点没有设置局部的欢迎页面,Tomcat服务器就会以index.html index.htm index.jsp 作为一个web站点的欢迎页面。
-
注意原则:局部优先原则。(就近原则)
-
-
-
欢迎页可以是一个Servlet吗?
-
当然可以。
-
欢迎页就是一个资源,既然是一个资源,那么可以是静态资源,也可以是动态资源。
-
静态资源:index.html welcome.html…
-
动态资源:Servlet类。
-
步骤:
-
第一步:写一个Servlet
public class WelcomeServlet extends HttpServlet{ protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{ respons.setContentType("text/html"); PrintWriter out = response.getWriter(); out.print("<h1>welcome to bjpowernode!</h1>"); } }
-
第二步:在web.xml文件中配置servlet
-
<servlet> <servlet-name>welcomeServlet</servlet-name> <servlet-class>完整包名.类名</servlet-class> </servlet> <servlet-mapping> <servlet-name>welcomeServlet</servlet-name> <url-patter>/a/b/c</url-patter> </servlet-mapping>
-
-
第三步:配置浏览器的欢迎页面
-
<welcome-file-list> <!--注意这个路径不要以"/“开始--> <welcome-file>a/b/c</welcome-file> </welcome-file-list>
-
-
-
关于WEB-INF目录
- 在WEB-INF目录新建一个文件:welcome.html
- 打开浏览器访问:http://localhost:8080/Servlet07/WEB-INF/welcome.html 出现了404错误
- 注意:放在WEB-INF目录下的资源是受保护的。在流蓝旗上不能够通过路径直接访问。所以像HTML、CSS、JS、image等静态资源一定要放到WEB-INF目录之外。