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

相关推荐
荒Huang7 分钟前
Linux挖矿病毒(kswapd0进程使cpu爆满)
linux·运维·服务器
hjjdebug2 小时前
linux 下 signal() 函数的用法,信号类型在哪里定义的?
linux·signal
其乐无涯2 小时前
服务器技术(一)--Linux基础入门
linux·运维·服务器
Diamond技术流2 小时前
从0开始学习Linux——网络配置
linux·运维·网络·学习·安全·centos
斑布斑布2 小时前
【linux学习2】linux基本命令行操作总结
linux·运维·服务器·学习
Spring_java_gg2 小时前
如何抵御 Linux 服务器黑客威胁和攻击
linux·服务器·网络·安全·web安全
✿ ༺ ོIT技术༻2 小时前
Linux:认识文件系统
linux·运维·服务器
会掉头发3 小时前
Linux进程通信之共享内存
linux·运维·共享内存·进程通信
我言秋日胜春朝★3 小时前
【Linux】冯诺依曼体系、再谈操作系统
linux·运维·服务器