内容目录
前言
这几天被工作上安排编写一份新手向的OpenResty入门教程,但至于OpenResty是个什么东西,我自己也没有什么概念,在B站看了会儿视频,简单说明一下个人的浅见吧
一.OpenResty简介
1. OpenResty介绍
OpenResty是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。
2. OpenResty应用场景
OpenResty通过汇聚各种设计精良的 Nginx 模块,从而将 Nginx 有效地变成一个强大的通用 Web 应用平台,这样,Web 开发人员和系统工程师可以使用 Lua 脚本语言调动 Nginx 支持的各种 C 以及 Lua 模块,快速构造出足以胜任 10K 乃至 1000K 以上单机并发连接的高性能 Web 应用系统。
二.OpenResty安装
推荐使用源码编译安装
OpenResty插件分为自带插件以及第三方插件,如果是自带插件直接激活就可以,如果是第三方插件需要手动下载插件添加进去,这里我们以本地缓存插件安装举例。
1.安装编译环境
yum install -y make cmake gcc gcc-c++ autoconf automake libpng-devel libjpeg-devel zlib libxml2-devel ncurses-devel bison libtool-ltdl-devel libiconv libmcrypt mhash mcrypt pcre-devel openssl-devel freetype-devel libcurl-devel lua-devel readline-devel curl wget
2.下载最新版源码
mkdir /usr/local/openresty
wget https://openresty.org/download/openresty-1.19.3.1.tar.gz
tar -zxvf openresty-1.19.3.1.tar.gz # 解压openresty
3.下载缓存插件
wget http://labs.frickle.com/files/ngx_cache_purge-2.3.tar.gz
tar -zxvf ngx_cache_purge-2.3.tar.gz #解压缓存插件
4.编译OpenResty
选择需要的插件启用, –with-Components 激活组件,–without 则是禁止组件 ,–add-module是安装第三方模块
./configure --prefix=/usr/local/openresty --with-luajit --without-http_redis2_module --with-http_stub_status_module --with-http_v2_module --with-http_gzip_static_module --with-http_sub_module --add-module=/usr/local/openresty/modules/ngx_cache_purge-2.3 #配置缓存插件的源码路径
这里禁用了 redis组件 并且 安装了第三方缓存组件
出现如下界面表示编译成功
5.安装OpenResty
gmake && gmake install
出现如下界面表示安装成功
6.环境设置
vi /etc/profile ##加入path路径
export PATH=$PATH:/usr/local/openresty/nginx/sbin
source /etc/profile ##生效配置
7.查看环境
nginx -v
nginx version: openresty/1.17.8.2
查看安装的组件
nginx -V
8.运行测试
(1)创建Nginx配置文件:在 conf 目录下创建一个 nginx.conf 文件代码如下(与nginx的配置文件如出一辙),这里我们将 html 代码直接写在了配置文件中。
worker_processes 1;
error_log logs/error.log;
events {
worker_connections 1024;
}
http {
server {
listen 9000;
location /{
default_type text/html;
content_by_lua '
ngx.say("Hello, World!
")
';
}
}
}
9.启动OpenResty
nginx -c /usr/local/openresty/nginx/conf/nginx.conf
10.测试
> curl http://localhost:9000/
Hello, World!