需安装openresty以在麒麟os部署兼具nginx核心能力与lua扩展能力的高性能web平台;其提供yum、apt、源码编译三种安装方式,并需配置systemd服务及验证lua功能。

如果您希望在麒麟OS上部署兼具Nginx核心能力与Lua扩展能力的高性能Web平台,则需安装OpenResty。OpenResty并非简单替换Nginx,而是以Nginx为运行时底座、深度集成LuaJIT并预编译大量实用模块的增强型平台。以下是适用于麒麟OS的多种安装方式:
一、使用YUM包管理器安装(适用于CentOS/RHEL系麒麟OS)
该方法适用于银河麒麟V10 SP3等基于RHEL生态的版本,依赖系统内置YUM源或已配置OpenResty官方仓库,安装过程自动化程度高,便于后续维护。
1、安装基础依赖工具:sudo yum install -y yum-utils
2、添加OpenResty官方YUM仓库:sudo yum-config-manager --add-repo https://openresty.org/package/centos/openresty.repo
3、更新软件包索引:sudo yum makecache
4、执行安装命令:sudo yum install -y openresty openresty-resty
5、验证安装结果:/usr/local/openresty/nginx/sbin/nginx -v
6、启动服务并设为开机自启:sudo systemctl start openresty && sudo systemctl enable openresty
二、使用APT包管理器安装(适用于Debian/Ubuntu系麒麟OS)
该路径适配基于Ubuntu内核的openKylin等发行版,通过APT获取预编译二进制包,避免手动编译依赖冲突,适合快速部署稳定版本。
1、更新APT源列表:sudo apt update
2、安装必要构建与运行依赖:sudo apt install -y curl gnupg2 ca-certificates lsb-release
3、导入OpenResty GPG密钥:curl -fsSL https://openresty.org/package/pubkey.gpg | sudo apt-key add -
4、添加官方APT仓库(以Ubuntu 22.04为例):echo "deb http://openresty.org/package/ubuntu $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/openresty.list
5、再次更新APT索引:sudo apt update
6、安装OpenResty主程序及配套工具:sudo apt install -y openresty openresty-resty
7、确认二进制路径可用:/usr/local/openresty/nginx/sbin/nginx 应存在且可执行
三、源码编译安装(全版本通用,支持深度定制)
当需要启用特定模块(如HTTP/2、Brotli压缩)、匹配国产CPU指令集优化,或麒麟OS未提供对应架构的预编译包时,必须采用源码编译方式。此方法完全控制构建参数,但需手动处理依赖和权限配置。
1、安装编译所需开发工具与库:sudo yum install -y gcc make perl pcre-devel openssl-devel zlib-devel readline-devel(CentOS/RHEL系) 或 sudo apt install -y build-essential libpcre3-dev libssl-dev libz-dev libreadline-dev(Debian/Ubuntu系)
2、下载OpenResty稳定版源码(以1.21.4.1为例):wget https://openresty.org/download/openresty-1.21.4.1.tar.gz
3、解压并进入源码目录:tar -xzvf openresty-1.21.4.1.tar.gz && cd openresty-1.21.4.1
4、执行配置脚本,启用关键模块:./configure --with-http_ssl_module --with-http_v2_module --with-luajit
5、编译并安装:make && sudo make install
6、创建专用运行用户以提升安全性:sudo groupadd nginx && sudo useradd -g nginx -s /sbin/nologin -M nginx
7、修改主配置文件权限:sudo chown -R nginx:nginx /usr/local/openresty/nginx/conf/
四、配置OpenResty作为Nginx兼容服务运行
OpenResty默认安装路径为/usr/local/openresty,其Nginx二进制位于/usr/local/openresty/nginx/sbin/nginx。为与系统级Nginx服务管理机制对齐,需建立systemd服务单元并适配启动行为。
1、创建systemd服务文件:sudo nano /etc/systemd/system/openresty.service
2、写入标准服务定义内容,指定User、Group及ExecStart路径,其中ExecStart=/usr/local/openresty/nginx/sbin/nginx -c /usr/local/openresty/nginx/conf/nginx.conf
3、重载systemd配置:sudo systemctl daemon-reload
4、启动服务并检查状态:sudo systemctl start openresty && sudo systemctl status openresty
5、验证监听端口:sudo ss -tlnp | grep :80 应显示nginx进程绑定在80端口
6、测试Lua功能是否就绪:在/usr/local/openresty/nginx/conf/nginx.conf的server块中添加location /hello { default_type text/plain; content_by_lua_block { ngx.say("Hello from OpenResty on Kylin OS") } },然后访问http://localhost/hello











