Linux下安装openresty

Linux下安装openresty

十一、Linux下安装openresty

11.1.概述

OpenResty是由淘宝工程师开发的,所以其官方网站(http://openresty.org/)我们读起来是非常的方便。OpenResty是一个基于Nginx与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。所以本身OpenResty内部就已经集成了Nginx和Lua,所以我们使用起来会更加方便。

11.2.下载OpenResty并安装相关依赖:

java 复制代码
https://openresty.org/download/openresty-1.25.3.1.tar.gz
java 复制代码
# 一条命令来进行全部安装
yum install -y gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

# 查询版本信息
gcc --version

# 查询是否安装成功
rpm -qa pcre pcre-devel zlib zlib-devel openssl openssl-devel

11.3.使用wget下载:

java 复制代码
# 创建包管理
mkdir -p /openresty/core

cd /openresty/core

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

11.4.解压缩:

java 复制代码
tar -zxf openresty-1.25.3.1.tar.gz

11.5.进入OpenResty目录:

java 复制代码
cd openresty-1.25.3.1

11.6.编译和安装

java 复制代码
./configure

make && make install
java 复制代码
cd nginx-1.25.3
sh ./configure --prefix=/usr/local/openresty/nginx \
  --with-cc-opt='-O2' \
  --add-module=../ngx_devel_kit-0.3.3 \
  --add-module=../echo-nginx-module-0.63 \
  --add-module=../xss-nginx-module-0.06 \
  --add-module=../ngx_coolkit-0.2 \
  --add-module=../set-misc-nginx-module-0.33 \
  --add-module=../form-input-nginx-module-0.12 \
  --add-module=../encrypted-session-nginx-module-0.09 \
  --add-module=../srcache-nginx-module-0.33 \
  --add-module=../ngx_lua-0.10.26 \
  --add-module=../ngx_lua_upstream-0.07 \
  --add-module=../headers-more-nginx-module-0.37 \
  --add-module=../array-var-nginx-module-0.06 \
  --add-module=../memc-nginx-module-0.20 \
  --add-module=../redis2-nginx-module-0.15 \
  --add-module=../redis-nginx-module-0.3.9 \
  --add-module=../rds-json-nginx-module-0.16 \
  --add-module=../rds-csv-nginx-module-0.09 \
  --add-module=../ngx_stream_lua-0.0.14 \
  --with-ld-opt='-Wl,-rpath,/usr/local/openresty/luajit/lib' \
  --with-stream --without-pcre2 --with-stream_ssl_module --with-stream_ssl_preread_module --with-http_ssl_module

11.7.进入OpenResty的目录,找到nginx:

java 复制代码
cd /usr/local/openresty/nginx/

11.8.在conf目录下的nginx.conf添加如下内容

java 复制代码
location /lua{
    default_type 'text/html';
    content_by_lua 'ngx.say("<h1>HELLO,OpenRestry</h1>")';
}

11.9.在sbin目录下启动nginx

11.10.通过浏览器访问测试


11.11.设置环境变量

java 复制代码
vim /etc/profile

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

# 输入下面命令让设置的环境变量生效
source /etc/profile

# 查看版本信息
nginx -V

11.12.openresty安装成系统服务

java 复制代码
# 创建脚本
vi /usr/lib/systemd/system/openresty.service

# 重新加载系统服务
systemctl daemon-reload

服务脚本内容

java 复制代码
[Unit]
Description=openresty web service
Documentation=https://openresty.org/cn/
After=network.target

[Service]
Type=forking
PIDFile=/usr/local/openresty/nginx/logs/nginx.pid
ExecStartPre=/usr/local/openresty/nginx/sbin/nginx -t -c /usr/local/openresty/nginx/conf/nginx.conf
ExecStart=/usr/local/openresty/nginx/sbin/nginx
ExecReload=/usr/local/openresty/nginx/sbin/nginx -s reload
ExecStop=/usr/local/openresty/nginx/sbin/nginx -s stop
PrivateTmp=true

[Install]
WantedBy=default.target
java 复制代码
[Unit]:服务的说明
Description:描述服务
After:描述服务类别
[Service]服务运行参数的设置
Type=forking是后台运行的形式ExecStartpre是检查配置文件
ExecStart为服务的具体运行命令
ExecReload为重启命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
[Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3

11.13.openresty常用命令

java 复制代码
# 启动服务
systemctl start openresty

#停止
systemctl stop openresty

#重启
systemctl restart openresty

#重新加载配置文件
systemctl reload openresty

# 查看nginx状态
systemctl status openresty

# 开机启动
systemctl enable openresty.service

# 查看nginx是否启动
ps -ef | grep openresty

endl

相关推荐
zhaowangji几秒前
ubuntu虚拟机装载共享文件夹导致的诡异错误
linux·运维·ubuntu
小崔爱读书3 分钟前
普元DWS - Linux下安装DWS标准版
linux·运维·服务器
PerfMan20 分钟前
基于eBPF的procstat软件追踪程序垃圾回收(GC)事件
linux·开发语言·gc·ebpf·垃圾回收·procstat
小安运维日记1 小时前
Linux云计算 |【第三阶段】PROJECT1-DAY1
linux·运维·云计算·apache
pyliumy1 小时前
rsync 全网备份
linux·运维·服务器
sorel_ferris2 小时前
Ubuntu-24.04中Docker-Desktop无法启动
linux·ubuntu·docker
ggb19992 小时前
【python的坑】vpn下,python request报错 check_hostname requires server_hostname
linux·运维·服务器
小O_好好学2 小时前
vi | vim基本使用
linux·编辑器·vim
-SGlow-2 小时前
Linux相关概念和重要知识点(4)(自举、vim)
linux·运维·vim
多多*2 小时前
OJ在线评测系统 登录页面开发 前端后端联调实现全栈开发
linux·服务器·前端·ubuntu·docker·前端框架