OpenResty搭建
项目初衷
OpenResty个人理解可以算是Nginx的平替型,非常适合本人这种基本不怎么会运维的小白,OpenResty自身融合和Nginx的同时,还将lua模块适配了进去,这对于以后lua-waf的搭建提供了很好的环境基础。
OpenResty渗透使用计划:
- Lua Waf 搭建
- Nginx、Kafka、扫描器的全自动化
本文完成度:
- OpenResty 搭建
- OpenResty 运行测试
- Nginx 可用性测试
- Lua 模块可用性测试
- 端口冲突问题解决
OpenResty搭建
官网给出了很详细的OpenResty的搭建步骤,只需要按照如下顺序执行即可
1 | // 安装导入 GPG 公钥时所需的几个依赖包 |
OpenResty默认安装路劲在/usr/local/openresty,验证是否安装,只需要进入到该目录下,在进入Nginx目录即可
/usr/local/openresty/nginx/sbin

但是启动Nginx时,需要注意一个问题:端口冲突
端口问题解决,只需要正常访问修改后的端口,出现提示则代表安装成功

Lua模块使用
搭建OpenResty的初衷就是为了更方便的使用Lua模块,所以此处编写简单的Lua脚本用于测试其可用性
问题解决
端口冲突
由于先前已经搭建了GitLab,而GitLab自身具备Nginx,所以已经占用了80端口,如果OpenResty启动Nginx服务器,会提示端口端口已经被占用

Plan One
按照原有计划,准备将GitLab的Nginx和OpenResty合并,通过OpenResty来转发GitLab的域名,实现共用Nginx的方案,但是执行如下命令后,发现事情并没有想象中那么简单
1 | // gitlab.rb配置文件中 |
运行gitlab-ctl reconfigure 使更改生效
然后配置OpenResty的Nginx配置文件:/usr/local/openresty/nginx/conf/nginx.conf
新增如下配置
1 | server { |
虽然刷新配置后,可以跳转访问到GitLab,但是输入密码访问后,会一直提示422错误,才可可能是由于安装GitLab时,令其使用了https的传输方式,对于http的方式不接受导致的;但是毕竟是测试环境,也不做深究,换用另一套方案
Plan Two
该方案简单粗暴,将OpenResty的端口该为其他的即可,无需和80冲突
修改nginx.conf文件,server端口该为81,刷新Nginx配置

1 | // 刷新Nginx配置 |
这样就结局了端口冲突问题,但是这种就不是一个很完美的解决方案,一个环境下,运行了多套Nginx,无论是否是运维出生,都会感觉怪怪的,所以只能此处挖坑,后续有精力再去解决该问题。








