32、Nginx + OpenResty +redis 实现URL地址自取Redis缓存信息,


第一步:安装OpenResty 依赖

# apt-get install libreadline-dev libpcre3-dev libssl-dev perl

摘要说明:OpenResty将Nginx核心、LuaJIT、许多有用的Lua库和Nginx第三方模块打包在一起

OpenResty提供了一些常用的ngx_lua开发模块:如

  lua-resty-memcached

  lua-resty-mysql

  lua-resty-redis

  lua-resty-dns

  lua-resty-limit-traffic

  lua-resty-template

这些模块涉及到如mysql数据库、redis、限流、模块渲染等常用功能组件;另外也有很多第三方的ngx_lua组件供我们使用,对于大部分应用场景来说现在生态环境中的组件已经足够多了;如果不满足需求也可以自己去写来完成自己的需求。

第二步:下载OpenResty

# wget http://openresty.org/download/ngx_openresty-1.7.7.2.tar.gz

# tar -xvf ngx_openresty-1.7.7.2.tar.gz

# cd ngx_openresty-1.7.7.2

第三步:安装OpenResty

# ./configure --prefix=/usr/local/openresty --with-http_ssl_module --with-luajit --with-http_stub_status_module --with-http_sub_module

默认会安装到/usr/local/openresty,如果想指定安装目录,需要通过--prefix参数指定

# make

# make install

第四步:设置环境变量

# vi ~/.bashrc

在文件最后添加下面语句

export PATH=/usr/local/openresty/nginx/sbin:$PATH

保存退出

第五步:安装Redis

安装攻略:https://blog.csdn.net/crystalcs2010/article/details/80006041

第六步:修改nginx.conf配置文件

location /get {
    add_header 'Access-Control-Allow-Origin' '*';
    add_header 'Access-Control-Allow-Credentials' 'true';
    add_header 'Access-Control-Allow-Headers' 'Authorization,Content-Type,Accept,Origin,User-Agent,DNT,Cache-Control,X-Mx-ReqToken,X-Requested-With';
    add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS';
    default_type 'text/plain';
    charset 'utf-8';
    set_unescape_uri $key $arg_key; 
    redis2_query auth 'Heroic1234!';
    redis2_query get $key;
    redis2_pass 192.168.52.129:6379;
}

location /set {
    add_header 'Access-Control-Allow-Origin' '*';
    add_header 'Access-Control-Allow-Credentials' 'true';
    add_header 'Access-Control-Allow-Headers' 'Authorization,Content-Type,Accept,Origin,User-Agent,DNT,Cache-Control,X-Mx-ReqToken,X-Requested-With';
    add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS';
    default_type 'text/plain';
    charset 'utf-8';
    set_unescape_uri $key $arg_key;
    set_unescape_uri $val $arg_val;
    redis2_query auth 'Heroic1234!'; # Redis访问密码,如果为空,此处删除即可
    redis2_query set $key $val;
    redis2_pass 192.168.52.129:6379; # Redis安装服务器IP以及端口号

}

引入上面代码到nginx.conf配置文件中,重启Nginx服务

运行效果

相关内容

    暂无相关文章