openresty是基于nginx开发的一个web服务器,加入了lua,可以通过lua脚本实现更多扩展,功能十分强大。
安装步骤
下载并解压
这里下载最新版
1 | wget https://openresty.org/download/openresty-1.11.2.1.tar.gz |
解压并进入目录
1 | tar -zxvf openresty-1.11.2.1.tar.gz |
先安装需要的组件
安装几个依赖库
1 | yum install pcre-devel openssl-devel gc-c++ |
编译安装
1 | ./configure --prefix=/usr/local/openresty --with-http_ssl_module --with-http_sub_module --with-http_stub_status_module |
这里,–prefix跟着的是你待会要安装的路径,可以自己指定的,例如安装在某个普通用户下,其中,openresty是手动建的,不建的话,那么会有几个openresty的文件夹散落在同一个目录下。后面是我自己装必带的,各位看需要吧。另外,源码编译目录不要删除,后面如果要添加模块还需要用到。
1 | make && make install |
到这里,就安装完毕了,可以检验下是否安装成功。
1 | cd /usr/local/openresty/nginx |
如果出现下面的内容说明安装成功了。
1 | nginx: the configuration file /usr/local/openresty/nginx/conf/nginx.conf syntax is ok |
那么启动nginx吧,进入openresty/nginx目录
1 | sbin/nginx -c conf/nginx.conf |
一个注意点是,openresty可以使用普通用户安装,不要root, 另外配置文件中默认端口是80,80端口只有root用户可以启,普通用户的话需要改一下,例如改成8000。
安装后添加模块
在使用过程中我们经常会需要添加官方模块和第三方模块,这里说一下安装方式。 以上文为例。
首先
1 | cd /usr/local/openresty/nginx |
得出如下内容
1 | nginx version: openresty/1.9.15.1 |
查看现有的模块,复制下–prefix后的目录,但是却记啊,最后的”nginx”不要带上那个是编译的时候加上去的,还记得上文说安装的时候吧,是不带”nginx”这个目录的。
进入当初解压后的编译目录 ./configure --prefix=/usr/local/openresty --with-http_sub_module --with-http_ssl_module --with-xxx --add-module=/aaa/bbb/ccc
这里,说一下,上面”sbin/nginx -V”出来的里面,–add-module的,前面都可以忽略,很多是默认安装的不要额外加进来,一般只有后面才是后来自己加的才需要留意。上面再编译的地方, http_ssl_module和with-http_sub_module是第一次编译的时候自己加的,那么在添加模块的时候不要忘记带上。–with-xxx是官方的模块,这样添加。–add-module=/aaa/bbb/ccc是添加第三方模块,路径要写对,绝对路径和相对路径都可以,我这边用的是绝对路径。