首页 > 系统相关 >[nginx]编译安装openresty

[nginx]编译安装openresty

时间:2022-09-04 15:00:59浏览次数:98  
标签:http 编译 -- dynamic module nginx dev openresty

前言

OpenResty是一个基于Nginx和Lua的高性能Web平台,其内部集成了大量精良的Lua库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。

版本信息

系统和应用 版本
Debian 11-amd64位
OpenResty 1.21.4.1

步骤

  1. 下载源码包并解压
wget https://openresty.org/download/openresty-1.21.4.1.tar.gz
tar xf openresty-1.21.4.1.tar.gz
  1. 编译
# apt安装依赖
apt install -y libpcre3-dev openssl libssl-dev libxml2-dev libgd-dev libxml2 libgeoip-dev libxslt-dev

cd openresty-1.21.4.1
# 以下预编译参数和Nginx的编译参数基本一致
./configure --prefix=/home/apps/openresty \
--with-threads \
--with-file-aio \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_xslt_module=dynamic \
--with-http_image_filter_module=dynamic \
--with-http_geoip_module=dynamic \
--with-http_sub_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_mp4_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_auth_request_module \
--with-http_random_index_module \
--with-http_secure_link_module \
--with-http_degradation_module \
--with-http_slice_module \
--with-http_stub_status_module \
--with-stream_ssl_module \
--with-stream_realip_module \
--with-stream_geoip_module=dynamic \
--with-stream_ssl_preread_module \
--with-compat \
--with-pcre-jit

gmake
gmake install
  1. 启动OpenResty
/home/aps/openresty/bin/openresty
  1. 浏览器访问80端口测试
  2. (可选)验证无误后,将openresty的bin目录添加到系统环境变量PATH中

helloworld

  1. 编辑 /home/apps/openresty/nginx/conf/nginx.conf, 找到监听80端口的server,增加以下路由
location = /test {
    default_type 'text/plain';
    content_by_lua_block {
    	ngx.say('Hello World')
    }
}
  1. 热加载生效
openresty -s reload
  1. 测试
curl http://127.0.0.1/test

ngx.say 将数据作为响应体输出,返回给客户端,并在末尾加上一个回车符。

content_by_lua_block 的主要作用是在HTTP的内容处理阶段生成数据

参考

标签:http,编译,--,dynamic,module,nginx,dev,openresty
From: https://www.cnblogs.com/XY-Heruo/p/16655116.html

相关文章

  • cmake add_library编译链接静态库cmakelists
      本篇文章我们来编写CMakeLists.txt使用cmake的add_library的构建静态库,并使用target_link_libraries链接指定的静态库。cmake的linuxwindows和linux环境的准备可以......
  • nginx 配置隐藏index.php效果
    nginx配置隐藏index.php效果-TBHacker-博客园 https://www.cnblogs.com/jiqing9006/p/9582732.htmlnginx配置隐藏index.php效果 location/{i......
  • 什么是编译器?
    什么是编译器?CompileErrors如果您曾经接触过编程或编码,那么您很可能听说过编译器。特别是当您尝试构建从GitHub获得的C/C++项目时,它们会出现丑陋的链接和编译器错......
  • nginx配置静态资源目录映射
    nginx配置静态资源可以使用root与alias,他们的区别在于1)alias指定的目录是准确的,即location匹配访问的path目录下的文件直接是在alias目录下查找的;2)root指定的目录是locatio......
  • 为lazarus编译的程序生成deb安装包
    生成deb安装包可以手工打包和程序自动打包,手工打包主要是有建相关目录和编写control文件,程序打包自动生成相关目录及control文件。以下手工打包的方法:debDEB 是Debi......
  • 编译错误解决方法
    目录头文件缺少头文件缺少系统库文件,直接到该网站查找https://man7.org/linux/man-pages/man3/memset.3.html......
  • IDEA编译项目找不到符号
    问题描述场景:某个bean添加了一个字段;idea使用Git拉取代码后,新建分支提交,然后修改再切换其他分支,发生了代码冲突;然后解决代码冲突,开始编译项目,报错找不到符号.问题分析......
  • 编译安装nginx脚本(此脚本为离线安装)
    #!/bin/bash#********************************************************************#Author:HE-handsome#QQ:2700565402#Date:2022-08-03#Fil......
  • cmake和makefile区别和cmake指定编译器(cmake -G)
    一cmake和makefile区别要说明区别,我们先要区分下面三类工具:1.项目构建生成工具首先cmake是项目构建生成工具,cmake的代码可以与平台系统和编译器无关。类似cmake的工具......
  • Nginx分布式框架详解61-71静态资源访问-01
    nginx跨域问题的原因分析跨域问题,我们主要从以下方面进行解决:什么情况下会出现跨域问题实例演示跨域问题具体的解决方案是什么同源策略浏览器的同源策略:是一种约定......