当前位置: 首页 > news >正文

网站专题制作wordpress自定义功能

网站专题制作,wordpress自定义功能,成都设计公司尹超简历,wordpress博客内容设计​ 静态文件鉴权的解决方案 背景介绍 XX业务系统作为BXX业务系统的孪生姐妹系统#xff0c;是对BXX受理业务的强力补充系统#xff0c;他允许操作员拿着IPAD#xff0c;和客户约定地点上门受理业务。 因一些业务的受理#xff0c;按照最新的业务规章制度#xff0c;需…​ 静态文件鉴权的解决方案 背景介绍 XX业务系统作为BXX业务系统的孪生姐妹系统是对BXX受理业务的强力补充系统他允许操作员拿着IPAD和客户约定地点上门受理业务。 因一些业务的受理按照最新的业务规章制度需要客户观看XX视频方可受理我们现阶段视频文件的URL是直接暴露在公网上通过URL是可以直接浏览相关的视频文件由此引申出了静态文件鉴权的需求。 客户需求 接到XX客户的需求他们要求暴露在互联网公网的视频的URL不能在浏览器中直接输入地址访问因为视频内容属于较敏感的内容需要保护要求增加操作员登录认证机制。 解决方案 一、response输出流 拿到需求我首先想到的就是通过response.getOutputStream().write输出文件流的方式来解决此问题但是立马被组内前端人员否决掉此方案会影响前端体验。在体验为王的时代此方案确实不妥后端Java接口首先需要从文件服务器获取相应的文件然后再通过response写流的方式输出此方案会有一个文件服务器获取步骤对比公网直接访问相关于多了一次文件流的流转动作这样就会造成前端的卡顿感并且文件预览的功能估计也拜拜了。此方案——NO PASS 二、静态文件鉴权 在我的认知中我绝对不会是第一个有这需求的人世界这么大我要去问问。于是“静态文件鉴权”六个字在我脑海中浮现我毫不犹豫在百度的搜索框中输入这六个大字相关解决方案的文章尽在眼底通过相关知识的消化、吸收、本地Demo的模拟、开发环境的测试最终验证了静态文件鉴权的可行性。最终的结果虽然看似简单几行代码几行配置就解决了相关问题但是其中还是走了不少弯路好在消化吸收总结了。 三、OpenResty解决方案 OpenResty是一个基于Nginx与Lua的高性能Web平台相当于二次封装了nginx并且集成了lua脚本开发人员只需要简单的编写lua的脚本就可以实现静态文件鉴权的相关的逻辑了。 百度下载 openresty-1.21.4.3-win64.zip——主程序lua-resty-http-master.zip——让lua脚本支持http发包 解压openresty本地目录发现此软件真的就是在nginx上包了一层替换ngnix成本极小。 启动命令配置文件都与ngnix一模一样。 解压lua-resty-http将\lib\resty\目录下http*.lua的三个文件copy至openresty\lualib\resty\目录下即可让lua脚本支持http发包。 修改配置nginx.conf在server中增加相应的location我这里映射了所有mp4结尾的请求 Lua脚本 可以看到脚本非常简单Lua中..是连接字符串的意思。 Controller 我这里仅仅是为了验证可行性所以就写死了判断这里的返回值内容会在Lua脚本中用到。 访问成功效果 可以看到url中带了?token123456视频正常播放。 访问失败效果 我输入错误的token或者不输入token静态文件的访问被拦截了。 通过上面的模拟此方案已经可以满足客户的需求了。 四、ngnix解决方案 当我将OpenResty解决方案向领导汇报时立马被泼了一盆冷水理由很简单客户不会轻易同意替换ngnix不可控的风险太大日后出现问题的维护成本太高。虽然我据理力争终究是未站在客户的角度考虑问题所以我也只能接受领导的建议寻找ngnix的解决方案。 Ngnix也能支持Lua脚本但是需要重新编译才能支持Lua脚本。默认情况下Nginx并不直接支持Lua脚本。要使其支持Lua脚本需要进行一些额外的配置和编译步骤。对我来说研究重新编译Ngnix的成本与风险还真不如直接使用OpenResty所以Ngnix支持Lua脚本的方案也被我自己否决了。 最后绞尽脑汁在百度ChatGpt的帮助下ngnix经过无数次的改配置启动与重启中终于在不依赖Lua脚本的前提下也有了对应的解决方案。 修改ngnix.conf配置文件 token传参这里卡了好久经过反复试验终于往header中增加url路径的方式测试成功后端成功取到参数。 X-Original-URI是一个非标准的HTTP报文头其作用是使用该报文头的值中所指定的URL覆盖请求目标中的URL。该报文头通常在代理服务器或负载均衡器中使用用于记录原始请求的URL以便在后续的处理中能够获取到原始的请求信息。然而由于该报文头并非标准的HTTP报文头因此不是所有的代理服务器或负载均衡器都支持该报文头。好在ngnix支持了该报文头。 Java后端改造 注意取到的X-Original-URI的内容取到的内容需要拆分字符串提取token我这里简单验证可行性就没这些逻辑简单判断下是否相等即可。Ngnix验证token失败HTTP的响应码需要不为200所以我这里抛出了异常。 访问成功效果 访问失败效果
http://wiki.neutronadmin.com/news/172024/

相关文章:

  • 网站做404是什么意思如何做网站访问量的统计
  • 一般做个网站要多少钱站长查询站长工具
  • 公司内部网站的作用网站建设需求信息
  • 邢台外贸网站建设做一个网站的完整教程
  • 企业网站建设中图片优化的方法网站版面布局设计的原则
  • apmserv访问本地网站国外门户网站设计
  • ssc网站开发建网站哪家划算
  • 电邮注册网站企业宽带解决方案
  • 成都市建设招标网站免费的设计软件有哪些
  • 往建设厅网站上传东西wordpress页眉显示购物车
  • 国际旅游网站设计报告网站二级分类
  • 网站文案案例天元建设集团有限公司咋样
  • 成都专业做网站的公司有哪些武威建设局网站
  • 免费网站软件app大全网站子站怎么做、
  • dogip网站开发seo点击工具帮你火21星热情
  • 医院营销型网站建设教师可以做网站吗
  • 大岭山镇网站建设wordpress php页面跳转
  • 网络建设的网站wordpress jiathis
  • 大良招聘网站建设大连市建设工程招标信息网
  • 国外的创意设计网站wordpress edm
  • 做一个网站成本要多少钱大连公司名称大全
  • 网站广告位价格一般多少软件公司的税收优惠政策
  • 如何制作百度网站地图网站开发最新架构
  • 厦门做网站哪家公司好手机上能安装微信网页版
  • 网站功能模块清单网站建设后台管理登陆代码
  • 公司网站建设计入科目旅游网站作用
  • 网站备案流程以及所需资料织梦网站导航如何删除
  • html国外网站源码网站实时推送怎么做
  • 最新设计网站大全wordpress与微信公众号互通
  • 休闲食品网站建设百度指数关键词未收录怎么办