nginx
文章平均质量分 51
jhappyfly
热爱生活,热爱编程,具有十足程序猿气质男一枚
展开
-
kong 自定义插件access中获取真实代理的target
这个标题真的很难起,我在产生这个需求的时候,真是各种方式搜索了各种平台,都没有找到答案。最终在硬磕了几天之后,终于在kong源码中找到了解决方案。于是,我决定把我遇到的这个问题记录下来,但是,这个时候困扰我的就是,标题该如何定,才能容易被搜索到。需求:在kong的插件中,我要获取到真实代理的target,就是要找到最终请求IP和port,然后由我发送请求到这些IP上,不走nginx的代理了。这真是奇葩的需求,但这需求还真不少!!需求了解清楚了之后,就是要如何解决了,当了解方案之后,回过来看,原创 2021-08-06 16:13:54 · 553 阅读 · 0 评论 -
lua 字符串常用操作 - split contains lower upper
lua中对于字符串的操作是非常频繁的,如果你熟悉一种编程语言,那么你在编写lua代码的时候一定会想,在Java中支持的字符串切分split,在lua中是否支持呢?这里就给大家整理了一些lua中常见的字符串操作。整理6个常用方法:转大写、转小写、是否包含、反转、split切割1、字符串转小写 string.lower()-- 定义一个字符串local s = "abcDeF";-- 字符串转小写local trans = string.lower(s);print(trans); --原创 2021-08-06 15:47:38 · 1291 阅读 · 0 评论 -
Windows下编写Lua程序
Lua是一个非常小巧的嵌入式编程语言,经常会被嵌入到Redis、Nginx等系统中,对原有系统做一些功能的灵活扩展。一般来讲,Lua脚本极大程度都会运行在Linux下,也因此官方只提供了Linux下的安装包。但是在学习、开发和测试阶段,我们使用的都是Windows环境,那么在Windows下能够直接编译就方便多了,官方虽然没有提供,但是社区是有的,下面来看看具体的如何进行操作吧。1、在lua的官网点击download,调整到下载页,如下图2、点击上图中红色框中的,get binary 获取二进制原创 2021-05-24 10:24:15 · 2322 阅读 · 0 评论 -
linux下运行lua脚本
在linux下运行一个lua脚本很简单,下载一个lua编译器后,编译安装到操作系统,然后通过lua命令就可以运行lua脚本了。1、lua官网http://www.lua.org/2、点击download后,跳转到下载页面3、下载luacurl -R -O http://www.lua.org/ftp/lua-5.4.3.tar.gz4、解压tar -zxvf lua-5.4.3.tar.gz5、安装make6、运行直接输入lua,即可进入到交互..原创 2021-05-24 14:50:18 · 7263 阅读 · 0 评论 -
Lua基础语法-变量-数组-函数-if-for-while
lua支持在多种平台下进行安装,具体安装参考《Windows下编写Lua程序》安装成功之后,可以了解下Lua 的基本语法,对于有过一门编程语言经验的朋友来讲,学习lua的基本语法也是非常简单的。1、定义变量lua在定义变量上非常类似于js,不需要声明变量类型,直接使用关键字 local 来定义变量,如(1)基础变量local a = 10; -- numberlocal b = "hello"; -- 字符串local c = 10.5; -- numberlocal d = t原创 2021-05-24 12:00:55 · 814 阅读 · 0 评论 -
lua模块与面向对象
模块的定义与使用lua模块相关的内容在《openresty lua 模块》中已经写过了,定义模块也比较简单,这里再简单的过一下流程。1、编写模块 module.lua(1)定义一个.lua的文件,比如module.lua(2)在文件中定义一个字典对象(3)给字典对象赋予属性和方法(4)返回这个字典对象local m = {};-- 模块变量m.version=1.0;m.author="king";-- 模块方法m.log = function (str) p原创 2021-05-24 14:29:43 · 320 阅读 · 0 评论 -
openresty 环境搭建
1.安装依赖的包yum install pcre-devel openssl-devel gcc curl2.下载并安装openresty# add the yum repo:wget https://openresty.org/package/centos/openresty.reposudo mv openresty.repo /etc/yum.repos.d/# update the yum index:sudo yum check-update#安装openre..原创 2020-07-26 21:59:19 · 1107 阅读 · 0 评论 -
openresty 第一个程序
修改nginx配置文件,默认路径在:/usr/local/openresty/nginx/conf/nginx.conf修改后的文件如右图所示content_by_lua 指定一句lua代码content_by_lua_file 指定lua对应的文件content_by_lua_block 指定lua代码块校验修改后的nginx配置文件是否正确nginx -t重启nginxngin...原创 2020-07-26 22:00:22 · 305 阅读 · 0 评论 -
openresty 常用api
获取参数# 1 获取get方式传入的url参数location /lua_api_params { default_type 'text/html'; content_by_lua_block { local arg = ngx.req.get_uri_args(); for k,v in pairs(arg) do ngx.say("key:",k," val:",v); end;...原创 2020-07-26 22:01:35 · 706 阅读 · 0 评论 -
openresty lua 模块
一个业务逻辑可能会非常复杂,不可能将所有的逻辑写到一个文件中,这就需要模块的概念。将公共方法抽取成为一个模块,在使用时可以调用这个模块的方法。lua中的模块有点类似于Java中类的抽象层级,但和类又有本质差别。定义一个模块 创建一个lua文件 test_module.lua,内容如下local count = 0 local function hello() count = count + 1 ngx.say("count : ", count)...原创 2020-07-26 22:02:40 · 794 阅读 · 0 评论 -
openresty 连接redis
Redis是非常优秀的基于键值对的内存数据库,在项目中使用非常广泛。在高并发的项目中,经常会需要进行缓存的预热,或者部分数据在接入层就可以进行渲染,那么nginx和redis就成了绝配。在openresty之前,想要在nginx中连接redis那是非常难的一件事情,而有了openresty之后,一切就变得非常简单了。1、安装redis如果是要安装最新版本的redis,需要依赖gccwget http://download.redis.io/releases/redis-6.0.6.tar.g.原创 2021-05-19 12:43:40 · 1823 阅读 · 0 评论 -
nginx开机自启动和实现服务管理
nginx是以源码包的形式发布的,我们安装完毕之后,可以通过/usr/local/nginx/sbin/nginx 来运行,停止和重启nginx。这虽然可行,但使用起来比较麻烦,我们希望可以把nginx作为linux服务来进行管理,通过service nginx start这种形式来开启nginx服务,并且能够随系统自动启动。实现这个功能其实非常简单,因为nginx已经给了支持。先来说一说实现...原创 2018-03-16 09:21:12 · 4236 阅读 · 2 评论 -
Linux下Nginx安装/启动/重启/停止
Nginx是高性能的web服务器也是非常好用反向代理服务器,可以实现负载均衡,动静分离等策略,在linux下用的非常多。下面是下载地址http://nginx.org/en/download.html安装过程需要对Linux网络和配置yum源的知识比较熟悉下载下来并传入到服务器。第一步是进行解压tar -zxvf nginx-1.13.1原创 2017-07-11 15:00:33 · 204074 阅读 · 0 评论