|
实验内容
OpenResty® 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。本实验带您从零开始,学习编译安装、配置 OpenResty
免费在线实验地址:点击进入
实验资源:云服务器,没有云服务器的朋友推荐1折抢购:69元/年的阿里云服务器、或者99元/年的腾讯云服务器
软件环境:CentOS 7.2 64 位
一、了解 OpenResty®
什么是 OpenResty®
OpenResty® 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。
OpenResty® 通过汇聚各种设计精良的 Nginx 模块(主要由 OpenResty 团队自主开发),从而将 Nginx 有效地变成一个强大的通用 Web 应用平台。这样,Web 开发人员和系统工程师可以使用 Lua 脚本语言调动 Nginx 支持的各种 C 以及 Lua 模块,快速构造出足以胜任 10K 乃至 1000K 以上单机并发连接的高性能 Web 应用系统。
OpenResty® 的目标是让你的Web服务直接跑在 Nginx 服务内部,充分利用 Nginx 的非阻塞 I/O 模型,不仅仅对 HTTP 客户端请求,甚至于对远程后端诸如 MySQL、PostgreSQL、Memcached 以及 Redis 等都进行一致的高性能响应。
二、更新系统
在安装前,我们先对 CVM 的系统进行更新,确保系统内的软件源和工具是最新版本。
执行命令从软件源进行更新
三、安装 OpenResty®
添加官方仓库
- sudo yum install yum-utils
- sudo yum-config-manager --add-repo https://openresty.org/package/centos/openresty.repo
复制代码 安装二进制包- sudo yum install openresty
复制代码 在安装过程中如果看到如下提示,请在确认签名最后8位是 [D5EDEB74] 的情况下,输入 y 并回车确认。- Retrieving key from https://openresty.org/package/pubkey.gpg
- Importing GPG key 0xD5EDEB74:
- Userid : "OpenResty Admin <admin@openresty.com>"
- Fingerprint: e522 18e7 0878 97dc 6dea 6d6d 97db 7443 d5ed eb74
- From : https://openresty.org/package/pubkey.gpg
- Is this ok [y/N]: y
复制代码 不区分大小写
以默认配置文件启动
在安装了官方的二进制包之后,这个包自动帮我们生成了一份配置文件,可以让我们直接启动服务,并确认服务是否启动成功。
执行如下命令启动 openresty 服务
对于 CentOS 6.x 的用户:
- sudo service openresty start
复制代码 对于 CentOS 7.x 的用户:- sudo systemctl start openresty
复制代码 确认服务启动成功
接下来就可以直接通过 IP 访问服务器上已经启动的 openresty 服务了。
打开这个链接:http://<您的 CVM IP 地址>/
如果看到 Welcome to OpenResty! 的欢迎页面,则说明服务启动成功!
设置开机自动启动
默认情况下,openresty 可能不会开机启动。我们需要告诉系统开机自动启动 openresty 服务。
执行如下命令设置开机自动启动
对于 CentOS 6.x 的用户:
- sudo chkconfig openresty on
复制代码 对于 CentOS 7.x 的用户:
- sudo systemctl enable openresty
复制代码
四、配置 OpenResty®
查看现有的配置文件
在安装、启动完成之后,我们就可以尝试对 openresty 的配置文件进行个性化修改了。
默认安装完成后,配置文件存放在 /usr/local/openresty/nginx/conf/,我们可以使用 vim nano 文本编辑器打开配置文件并进行编辑,或直接在实验室的 Web 页面进行编辑。
请选择你熟悉的编辑器
- nano /usr/local/openresty/nginx/conf/nginx.conf
- vim /usr/local/openresty/nginx/conf/nginx.conf
复制代码 查看 nginx.conf
编辑配置文件修改监听端口
现在我们来尝试修改一下默认配置文件。首先我们来对 Nginx 的监听端口做一个修改。我们将默认的 80 端口监听修改到 8080 端口。
编辑 nginx.conf
示例代码:/usr/local/openresty/nginx/conf/nginx.conf
检查配置文件有效性
在修改了配置文件之后,我们不要着急重新启动 openresty 服务,而是应该先对配置文件进行校验,确保配置文件不存在语法错误。
以下两个命令都可以对配置文件进行检查:
- sudo service openresty configtest
- /usr/local/openresty/nginx/sbin/nginx -t
复制代码 对于第一个命令,没有任何输出就是检查通过。对于第二个命令,显示如下内容为检查通过:
- nginx: the configuration file /usr/local/openresty/nginx/conf/nginx.conf syntax is ok
- nginx: configuration file /usr/local/openresty/nginx/conf/nginx.conf test is successful
复制代码 如果配置文件存在语法问题,如缺少结尾分号,则会有错误信息进行提示:- nginx: [emerg] directive "worker_processes" is not terminated by ";" in /usr/local/openresty/nginx/conf/nginx.conf:12
- nginx: configuration file /usr/local/openresty/nginx/conf/nginx.conf test failed
复制代码 重新加载配置文件
确认配置文件不存在语法问题等错误后,就可以重新加载配置文件了。可以使用以下两个命令实现:
- sudo service openresty reload
- /usr/local/openresty/nginx/sbin/nginx -s reload
复制代码 重新加载成功时,第一个命令会输出类似信息(根据系统版本可能有所不同):- Reloading openresty configuration: [ OK ]
复制代码 第二个命令不会有任何输出。
如果加载失败,则会有对应的错误信息显示。
访问修改后的服务
接下来就可以直接通过修改后的端口来访问 openresty 服务了。
打开这个链接:http://<您的 CVM IP 地址>:8080/
|
|