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

合肥网站设计建设公司网站 东莞长安

合肥网站设计建设公司,网站 东莞长安,免费咨询法律律师在线12348,互联网推广怎么做前些日子尝试了在 nginx 中写 JavaScript 的效果。考虑到 JavaScript 作为编程语言不是强需求,在nginx生态上还是 lua 独大,并且还有 openresty 这样一直强力输血,大部分应用场景都能找到参考的解决方案。 插件生态来说,github 上…

前些日子尝试了在 nginx 中写 JavaScript 的效果。考虑到 JavaScript 作为编程语言不是强需求,在nginx生态上还是 lua 独大,并且还有 openresty 这样一直强力输血,大部分应用场景都能找到参考的解决方案。

插件生态来说,github 上 lua-resty- 开头的都是相关的模块,并且也提供了 https://opm.openresty.org/ 这样的搜索站点。njs这块就非常零散。

所以最后仅仅浅尝辄止,将过程稍微记录一下。

介绍 njs

nginx 中要提供编程能力第一想到的是lua,但在2016年nginx官方就已经在尝试将js引入nginx中了。现如今njs模块已经是nginx官方正式模块之一,并且也一直在不断迭代更新中。

官方介绍:

njs is a subset of the JavaScript language that allows extending nginx functionality. njs is created in compliance with ECMAScript 5.1 (strict mode) with some ECMAScript 6 and later extensions. The compliance is still evolving.
njs 是 JavaScript 语言的一个子集,可以扩展 nginx 的功能。njs 是根据 ECMAScript 5.1(严格模式)创建的,其中包含一些 ECMAScript 6 及更高版本的扩展。其合规性仍在不断改进。

安装&编译

官方提供了两种安装方式,作为软件包使用指令加载和从源码编译安装。
这里自己的使用情况,选择从第二种方式。

  1. 下载 njs 源码

    官方提供的源码仓库是基于 Mercurial 的,在 github 上也有提供源码,地址:https://github.com/nginx/njs。这里需要将整个仓库下载下来,编译需要用到这些文件。

  2. 下载 nginx 源码

    下载 nginx 源码,配置编译参数。

    这里使用的是 tengine,将 tengine 编译成 Docker 镜像。Dockerfile 使用这个 https://github.com/Axizdkr/tengine/blob/master/Dockerfile

  3. 配置编译命令

    nginx 编译只需要添加模块指定路径,编译时会自动将这份源代码编译进去。

    这里在 Dockerfile 的 57 行后添加

    --add-module=module/njs/nginx

    njs源码使用命令复制到 /usr/src/tengine-$TENGINE_VERSION/module/njs 目录下。我这里将复制语句添加在了81行后。

    在找资料时,有的文章说要复制编译后的so文件有的说不要,这里测试了一下,在新版njs立不需要复制了。

    之后就 docker build 编译镜像就可使用了。

简单使用

语法文档:Module ngx_http_js_module (nginx.org)、Module ngx_stream_js_module (nginx.org)

hello

我们可以在大部分位置使用js,比如我们在 location 中添加:

location / {js_content hello;
}

nginx 重启没报错提示说明前面编译的njs模块是正常的,访问查看效果。

执行 functioin

也可以直接引入js文件:

js_include http.js;location / {js_content version;
}

http.js文件

function version(r) {r.return(200, njs.version);
}export default version;

这样就能调用到js中的函数,还能在函数里使用 ngx.fetch 发请求。

更多的示例查看:https://github.com/nginx/njs-examples

技术前沿拓展

前端开发,你的认知不能仅局限于技术内,需要发散思维了解技术圈的前沿知识。细心的人会发现,开发内部工具的过程中,大量的页面、场景、组件等在不断重复,这种重复造轮子的工作,浪费工程师的大量时间。

介绍一款程序员都应该知道的软件JNPF快速开发平台​,很多人都尝试用过它,它是功能的集大成者,任何信息化系统都可以基于它开发出来。

这是一个基于 Java Boot/.Net Core 构建的简单、跨平台快速开发框架。前后端封装了上千个常用类,方便扩展;集成了代码生成器,支持前后端业务代码生成,实现快速开发,提升工作效率;框架集成了表单、报表、图表、大屏等各种常用的 Demo 方便直接使用;后端框架支持 Vue2、Vue3。如果你有闲暇时间,可以做个知识拓展。

看完本文如果觉得有用,记得点个赞支持,收藏起来说不定哪天就用上啦~

http://www.yayakq.cn/news/940468/

相关文章:

  • 电子商务网站建设讨论网站建设费记在什么科目下
  • 广州建网站站公司资讯网站开发
  • 广州微信网站建设用wordpress搭建完整网站教程视频
  • 杭州企业网站建设公司怎么样外国ps素材网站
  • 怎样做网站的排名常州公司网站模板建站
  • 用群晖做网站服务器wordpress 点赞功能
  • 优秀学习网站潍坊手机网站制作
  • 建设银行e房通网站旅游电子商务网络营销是什么
  • 网站开发前端课程做阿里网站卖东西赚钱
  • 长沙做网站设计的公司企业qq一年多少费用
  • 免费电商网站建设平台河南省建设厅网网站首页
  • wordpress短网址seo技术好的培训机构
  • 奉贤网站建设带有flash的网站
  • 有了网址怎么做网站关于网站开发的文档
  • 视频发布网站有哪些内容wordpress vue网站
  • 郑州网站科技竞价交易规则
  • 南京制作网站培训学校建站之星怎么弄相册
  • wix网站制作梧州网页设计
  • 怎么做淘客专属网站西湖专业网站设计公司
  • 做彩票网站代理违法吗长宁区网站建设网页制作
  • 建设网站要做的工作内容wep开发和网站开发
  • 做系统网站摄影作品
  • 免费聊天网站模板和源码外贸流程图解
  • 关于新闻管理的网站建设报告wordpress ck播放器
  • 成都建设官方网站素材图下载
  • 网站优化排名易下拉用法会计培训班要多少钱一般要学多久
  • 住房和城乡建设部官方网站发布国家市场监督管理
  • 苏州wordpress提高seo排名
  • 网站策划制作wordpress 本地部署
  • 建设网站模板免费下载外贸网站建设资料