局域网Web服务器的主要功能是实现资源共享,同时借助于局域网服务器访问页面可有效的实现信息的同步下面我就如何在Windows7系统下搭建Web服务器与大家交流一下。
win7 搭建Web服务器 方法
1、打开控制面板,选择 “程序”,双击“打开或关闭Windows服务”
2、在弹出的窗口中选择“Internet信息服务”下面的所有选项,点击确定
3、开始更新服务
4、更新完成后,打开浏览器,输入“http://localhost/”回车,如果此时出现IIS7欢迎界面,说明Web服务器已经搭建成功。
5、当web服务器搭建成功后,把开发的网站安装到Web服务器的目录中。一般情况下,当Web服务器安装完成后,会创建路径“%系统根目录%inetpub/wwwroot”,将已开发的网站复制到该路径下。即可实现本地访问该网站。
6、设置防火墙,让局域网的 其它 计算机也能访问本地网站资源。具体方法:打开控制面板,选择“系统和安全”,点击“允许程序通过Windows防火墙”,在弹出的对话框中勾选“万维网服务HTTP”右侧的两个复选框,点击“确定”退出。
在局域网中其它计算机上,打开浏览器,输入 “http://Web服务器的IP地址/”按回车键,就可以访问服务器上的资源”。
经过以上步骤设置后,局域网中的其它用户就可以通过浏览器访问你所共享的web资源了!
归根结底,Java本质上只能使用绝对路径来寻找资源。所有的相对路径寻找资源的方法,都不过是一些便利方法。不过是API在底层帮助我们构建了绝对路径,从而找到资源的!在开发Web方面的应用时, 经常需要获取 服务器中当前WebRoot的物理路径。
如果是Servlet , Action , Controller, 或则Filter , Listener , 拦截器等相关类时, 我们只需要获得ServletContext, 然后通过ServletContext.getRealPath("/")来获取当前应用在服务器上的物理地址。
如果在类中取不到ServletContext时, 有两种方式可以做到:
1. spring框架的思路, 在WEB-INF/web.xml中 , 创建一个webAppRootKey的param, 指定一个值(默认为webapp.root)作为键值, 然后通过Listener , 或者Filter , 或者Servlet 执行String webAppRootKey = getServletContext().getRealPath("/")并将webAppRootKey对应的webapp.root 分别作为Key , Value写到System Properties系统属性中。之后在程序中通过System.getProperty("webapp.root")来获得WebRoot的物理路径。
2. 利用Java的类加载机制 调用 XXX.class.getClassLoader().getResource("")方法来获取到ClassPath , 然后处理获得WebRoot目录,这种方式只能是该class在WebRoot/WEB-INF/classes下才能生效, 如果该class被打包到一个jar文件中, 则该方法失效。这时就应该用下面一种方式。
根据第二种的思路,我们还可以再扩展一下。不过对于在部署在一台服务器中的应用来说,若还不是你所需请再往下看。
下面是一些得到classpath和当前类的绝对路径的一些方法。你可使用其中的一些方法来得到你需要的资源的绝对路径:
1. DebitNoteAction.class.getResource("")
得到的是当前类FileTest.class文件的URI目录。不包括自己!
如:file:/D:/eclipse/springTest/WebRoot/WEB-INF/classes/
atacarnet/src/com/evi/modules/atacarnet/action/
2. DebitNoteAction.class.getResource("/")
得到的是当前的classpath的绝对URI路径。
如:file:/D:/eclipse/springTest/WebRoot/WEB-INF/classes/
3. Thread.currentThread().getContextClassLoader().getResource("")
得到的也是当前ClassPath的绝对URI路径
如:file:/D:/eclipse/springTest/WebRoot/WEB-INF/classes/
4. DebitNoteAction.class.getClassLoader().getResource("") 或ClassLoader.getSystemResource("")
得到的也是当前ClassPath的绝对URI路径。
路径是指文件在服务器中的存储位置。我们在使用计算机时要找到所需的文件时就必须知道文件的绝对路径,例如,只要看到这个路径d:/web/logo.gif,我们就知道logo.gif文件是在d盘的web目录下。类似于这样完整的描述文件位置的路径就是绝对路径。
绝对路径还有一种表示方法就是以服务器命名开始(如在本机中http://localhost)的完整描述文件位置的路径,如通过IIS简历一个站点,站点下面有个文件叫test.htm,那么用绝对路径来显示这个文件就是http://localhost//test.htm。
相对路径主要用在我们的网站上,当ASP在发布一个目录时,如果在Web上也像d:/web/test.htm一样,就不会显示在正常的页面。这时需要通
过站点来访问相对目录,网页上所有Web页面程序和所显示的图片都是通过相对路径来访问的。如里面的图片访问就是images/logo.gif我们可以
用"../"来表示上一级目录,"../../"表示上上级目录,依此类推。
web应用的绝对路径和相对路径
1.绝对路径和相对路径
相对路径:helloworld ./helloworld ../helloworld;
绝对路径:/helloworld /myweb/helloworld;
2.相对路径相对谁
相对路径相对的是当前的url,怎么解释,例如:
当前url为http://localhost:8080/day/tijiao.html,看一下tijiao.html的源码:
action写的是path,那么,提交后,就会把http://localhost:8080/day/tijiao.html链接中的tijiao.html替换为path变为http://localhost:8080/day/path,这就是所谓的相对于当前的url。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)