怎么编译安装Openresty

OpenResty ™ 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关

2 min read
By myfreax
怎么编译安装Openresty

OpenResty ™ 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关

Lua是一种轻量语言,它的官方版本只包括一个精简的核心和最基本的库。这使得Lua体积小、启动速度快。它用ANSI C语言编写并以源代码形式开放,编译后仅仅一百余K,可以很方便的嵌入别的程序里。和许多“大而全”的语言不一样,网路通讯、图形界面等都没有默认提供。但是Lua可以很容易地被扩展:由宿主语言(通常是C或C++)提供这些功能,Lua可以使用它们,就像是本来就内置的功能一样。事实上,现在已经有很多成熟的扩展模块可供选用

卸载Nginx

sudo apt-get  nginx nginx-common nginx-core

编译准备

  • Debian 和 Ubuntu 用户
apt-get install libreadline-dev libncurses5-dev libpcre3-dev \
    libssl-dev perl make build-essential
  • Fedora 和 RedHat 用户
yum install readline-devel pcre-devel openssl-devel gcc
  • 下载源码

源码非常之小3MB左右

wget https://openresty.org/download/openresty-1.11.2.2.tar.gz

编译安装

tar -xzvf openresty-1.11.2.2.tar.gz
cd openresty-1.11.2.2/
./configure  # ./configure --help   可以使用这个命令查看配置参数

下面是配置信息后续可能会用到

  nginx path prefix: "/usr/local/openresty/nginx"
  nginx binary file: "/usr/local/openresty/nginx/sbin/nginx"
  nginx modules path: "/usr/local/openresty/nginx/modules"
  nginx configuration prefix: "/usr/local/openresty/nginx/conf"
  nginx configuration file: "/usr/local/openresty/nginx/conf/nginx.conf"
  nginx pid file: "/usr/local/openresty/nginx/logs/nginx.pid"
  nginx error log file: "/usr/local/openresty/nginx/logs/error.log"
  nginx http access log file: "/usr/local/openresty/nginx/logs/access.log"
sudo make -j4 && make instlal #-j4   数字是你的机器核心数,加快编译速度

设置环境变量

sudo ln -s /usr/local/openresty/nginx/sbin/nginx /usr/bin/

检查是否是openresty的版本

nginx -v 
nginx version: openresty/1.11.2.2
sudo nginx -p `pwd`/ -c conf/nginx.conf  #-p设置前缀路径,-c指定配置文件 -h 查看帮助

测试

现在在浏览器打开http://127.0.0.1:8080/ hello, world

Thank Openresty