纯静态html页面,如何拦截请求url的后缀不是.html的访问地址
你不要被标题给骗了,你如果想法是“如何拦截url”,那你就想错了,因为html页面是无法拦截那些后缀名不是.html的url的,我当时也总这么想,所以总找不到解决方法。换了种方法,就解决了
背景:从总监那里得知,说要给公司做一个官网,把旧官网换掉,做个新的,而且公司买了百度的流量,考虑到,这股流量,会不会有可能让服务器跑崩了,所以 总监 提议说,做成 纯静态 的html页面。
但是,要保留旧官网的访问路径,根据这个路径,获取参数id,跳转对应的html页面
这就坑爹了,旧官网用 ssh 做的,但现在新官网,是纯静态html,没有任何 java,jsp文件,全部都是html,老文章也都用OA后台 全部生成了 html 页面,丢到了官网上。
如何获取这个 .action 的请求url,并且根据参数id,跳转对应的html页面??
找了公司运维人员,搞个映射,运维没办法,至少要有一个java文件来接收,但是新官网都是html页面。(哭死)
百度找 博客,都是用 ajax,但是没用。没有什么java文件可以接收。
总是报404,找了2、3个小时,解决不了。我擦,你总喜欢给我404是吧!老子就建了一个文件:queryById.action
我擦,搞定了。。。
************解决方法********************
1. 根据请求url,在项目里,建立对应的文件夹和文件,如下图
2. 编辑 queryById.action 文件内容
- <html>
- <head>
- </head>
- <body>
- <script type="text/javascript">
- //获取Location对象的search属性值
- //如:?id=122844&jituanyw=1195
- var searchStr = location.search;
- //重定向 url
- var links = "../newsDetail.html" + searchStr;
- window.location.href=links;
- </script>
- </body>
- </html>
OK,解决了