解决国外服务器与国内域名备案的问题

有2个域名 、1个服务器,服务器在美国机房。然后我把域名都剖析已往,外洋的服务器嘛,不用备案。可是随着时间的推移,营业的增添,要用到七牛云的加速CDN,要有一个备案好的加速域名,微信分享到朋侪或朋侪圈也需要域名备案。以是,我的域名需要备案。 一最先是想把所有机械迁徙到海内,可是这样外洋的会见速率受影响,而且域名也需要备案,备案时代,域名是会见不了的,以是这种要领不行。 就在一筹莫展的时间,无意看到了一个servlet法式,其中有一个sendRedirect的要领,马上豁然爽朗。一个解决域名备案的要领应运而生。我可以用一个海内的服务器帮我备案,然后把发送到海内服务器的请求重定向到外洋就行。 首先,我先买一个自制的海内服务器(忽略阿里云服务器未满3个月不能备案的条件),把2个域名中用的少的一个剖析到海内服务器(虽然该域名在备案时代也不能用,但总比两个都不能会见要强),然后根据流程备案……………………………………………………………………………………………………………………………………………………………………………. 过了20天,备案好了(假设中心没遇到资料什么的错误),现在最先设置好海内服务器的情况,假设我有AA、BB、CC、DD 四个项目,其中AA是官网。 详细步骤: 修改海内服务器的tomcat的conf下的server.xml,将8080端口改为80 先把海内服务器的tomcat的webapps目录下的ROOT改为tomcat,然后把AA上传到服务器的tomcat的webapps目录下,把AA更名为ROOT,重启tomcat后,就可以在备案号的域名下会见了 在当地新建一个java web项目,就写一个servlet, @WebServlet("/")public class xxx extends HttpServlet {     public void doGet(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {         String r_request = "http://没备案的域名/BB" +                 request.getServletPath() + //路由                 "?" + (request.getQueryString()); //参数         //重定向         response.sendRedirect(r_request);    }     public void doPost(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {        doGet(request, response);    } }12345678910111213141516171819编译,运行,看了一下重定向没问题,那就导出war包,导出时将名称改为BB.war,然后再修改法式的 String r_request = "http://没备案的域名/CC" + 1部门,把BB替换成CC,然后编译、导出CC.war,DD同理 最后,把BB、CC、DD 都上传到海内服务器上。这样,就可以实现转发功效了,而备案好的域名也可以用于七牛云和微信认证注重:这里接纳重定向个请求转发都可以的,请求转发在某些特定场景会更精致,好比微信分享时,缩略图需要用微信的js接口,可是请求转发的重点在服务端,重定向的重点在客户端(现实是请求了两次),为了性能,我这里接纳重定向,大部门的目地可以到达。


本文出自快速备案,转载时请注明出处及相应链接。

本文永久链接: https://www.xiaosb.com/beian/14691/