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