关闭防火墙后javaweb项目无法访问

Windows Server 2008R2,一般开发时我们为了省力都不注意防火墙的设置,甚至直接关闭防火墙以图方便。而在关闭防火墙后再次开启,我们所发布的项目可能无法访问,原因就在于防火墙规则的配置。

    实例情景提要:

    开发中,若不小心关闭服务器防火墙并造成一下情况时:

                  1.所有java环境配置均正常,且web项目访问80端口,且不存在占用情况;

                  2.开启Tomcat或其它中间件运行JavaWeb项目,项目在服务器本地浏览器浏览正常,浏览方式包括localhost以及服务器ip等方式;

                  3.在内网测试,从其它PC访问时服务访问成功;

                  4.运行asp.net的Win服务器默认网站从外部可以正常访问 。


    问题成因:

                    在开起防火墙后没有向防火墙中添加规则,导致访问被拦截。

 

     解决方案:

                       1.使用Win控制台,通过以下命令查看端口是否启用

               netsh firewall show portopening
                       2.将所需端口添加至防火墙规则中,(例:80端口)

               netsh firewall add portopening TCP 80 EManWebPort



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaWeb项目中,我们可以通过配置来实现在访问时不写项目名。这种设置可以简化URL,并且提高用户体验。 首先,我们需要在项目web.xml文件中添加一个新的servlet,并设置该servlet的映射路径为"/"。这样,当用户访问网站时,会默认走这个servlet。 然后,我们需要创建一个新的Java类来处理这个servlet的请求。在这个类中,我们可以通过设置response的Redirect方法来实现重定向。 具体的实现逻辑如下: 1. 修改web.xml文件,添加一个新的servlet和映射路径为"/",目的是为了将所有的请求都交给这个servlet处理。 ```xml <servlet> <servlet-name>DefaultServlet</servlet-name> <servlet-class>com.example.DefaultServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>DefaultServlet</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> ``` 2. 创建一个名为DefaultServlet的Java类来处理这个servlet的请求。 ```java package com.example; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; public class DefaultServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.sendRedirect(req.getContextPath() + "/index.jsp"); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req, resp); } } ``` 在上面的代码中,我们通过调用`sendRedirect`方法将请求重定向到指定的页面(这里是index.jsp)。 3. 在项目的根目录下,创建一个名为index.jsp的文件,并将你希望用户访问的主页内容放在这个文件中。 通过以上的设置,当用户访问网站时,不需要在URL中写上项目名,直接访问域名即可自动跳转到设置的主页。例如,如果你的域名是www.example.com,那么用户访问www.example.com时,将自动跳转到index.jsp页面。 这样,就实现了在JavaWeb项目中设置访问时不写项目名的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值