关于OpenResty(http://openresty.org/cn/) OpenResty (也称为 ngx_openresty)是一个全功能的 Web 应用服务器,它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项。
OpenResty 通过汇聚各种设计精良的 Nginx 模块,
从而将 Nginx 有效的变成一个强大的 Web 应用服务器,
这样, Web 开发人员可以使用 Lua 脚本语言调动 Nginx 支持的各种C以及Lua 模块,
快速构造出足以胜任 10K+ 并发连接响应的超高性能Web 应用系统
一. 安装openresty
mkdir -p /usr/local/src/nginx
cd /usr/local/src/nginx
#安装drizzle模块(访问mysql数据库模块,非必需,建议安装)
wget http://agentzh.org/misc/nginx/drizzle7-2011.07.21.tar.gz
tar zxvf drizzle7-2011.07.21.tar.gz
cd drizzle7-2011.07.21
./configure --without-server
make libdrizzle-1.0
make install-libdrizzle-1.0
cd ..
#下载openresty
wget http://openresty.org/download/ngx_openresty-1.4.2.7.tar.gz //也可以先下载到本地然后FTP传到服务器上
tar zxvf ngx_openresty-1.4.2.7.tar.gz
#下载nginx-http-concat(合并静态文件请求模块,非必需,建议安装)
wget https://github.com/alibaba/nginx-http-concat/archive/master.zip
unzip master
mv nginx-http-concat-master/ ngx_openresty-1.4.2.7/bundle/nginx-http-concat
#安装openresty
cd ngx_openresty-1.4.2.7
./configure --with-luajit --with-http_drizzle_module --with-http_iconv_module --with-ld-opt="-Wl,-rpath,/usr/local/lib" --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module --add-module=./bundle/nginx-http-concat/
gmake
gmake install
ps: 执行解压缩后产生的一个名为configure的可执行脚本程序。它是用于检查系统是否有编译时所需的库,以及库的版本是否满足编译的需要等安装所需要的系统信息。为随后的编译工作做准备。命令为: #./configure
如果您想把软件安装到指定目录,应该用#./configure --prefix=/您自己指定的目录,比如我想把一个mlterm安装到/opt/mlterm目录中,应该如下输入#./configure --prefix=/opt/mlterm
执行configure后可能会有如下报错:
错误信息:
./configure: error: the HTTP rewrite module requires the PCRE library.
You can either disable the module by using --without-http_rewrite_module
option, or install the PCRE library into the system, or build the PCRE library
statically from the source with nginx by using --with-pcre=<path> option.
ERROR: failed to run command: sh ./configure --prefix=/usr/local/openresty/nginx \...
这时候如果执行make也会报错:No targets specified and no makefile found,说明必须configure成功才可以进行make,因为只有检查通过后,才能生成用于编译的MakeFile文件。
通过错误信息可以看出是由于没有安装PCRE库或找不到PCRE路径导致的,于是我们安装或通过
-with-pcre=<path>(如果已安装过的话)来找到PCRE,然后接下来我们configure时还会报一些类似的找不到依赖的错误,如 openSSL,Zlib。接下来我们将介绍如何安装这3个依赖。
二. 安装PCRE
1.下载PCRE包
首先去官网下载pcre的安装包
如果通过FTP的方式,下载地址为:ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
如果通过http的方式,下载地址为:http://sourceforge.net/projects/pcre/files/pcre/
目前最新的版本为8.32,linux对应的安装包名称为:pcre-8.32.tar.gz。
2.把安装包上传到服务器,然后解压
- tar -zxvf pcre-8.32.tar.gz
-
cd pcre-8.32
- ./configure
-
make ( 如果报错no UTF-8 support in PCRE library 则表示在前面步骤中执行./configuration配置时没有加上对utf-8的支持,重新执行 ./configure --enable-utf8 然后再make
- make install
三. 安装openSSL
目前版本最新的SSL地址为http://www.openssl.org/source/openssl-1.0.0e.tar.gz
1、将下载的压缩包放在根目录,
2、在文件夹下解压缩,命令:tar -xzf openssl-openssl-1.0.0e.tar.gz,得到openssl-openssl-1.0.0e文件夹
3、进入解压的目录:cd openssl-1.0.0e
4、设定Openssl 安装,( --prefix )参数为欲安装之目录,也就是安装后的档案会出现在该目录下:
执行命令: ./config --prefix=/usr/local/openssl
5、执行命令./config -t
6.执行make,make install
四.安装Zlib
1) wget http://zlib.net/zlib-1.2.8.tar.gz
2) cd zlib-1.2.8
3) ./configure --prefix=/data/progam/zlib
4) make
5) make install
6) 再进行配置一下系统的文件,加载刚才编译安装的zlib生成的库文件
vi /etc/ld.so.conf.d/zlib.conf
加入如下内容后保存退出
/data/program/zlib/lib
==============================
也就是添加安装目录的文件路径,库文件。ldconfig 运行之后就会加载安装的库文件了。
至此,我们已经安装好了nginx所需的三个依赖包,现在就可以重新configure了
./configure --prefix=/usr/local/src --with-luajit --with-openssl=/usr/local/src/openssl-1.0.0e --with-zlib=/usr/local/src/zlib-1.2.8 --with-pcre=/usr/local/src/pcre-8.37 (这些依赖都是解压缩后的目录,不是安装目录)
然后make,make install
然后进入到openResty的安装目录(不是解压缩后的目录)
安装成功后进入nginx的安装路径,进入sbin,执行./nginx -c /usr/local/tools/nginx/conf/nginx.conf
来启动nginx,ps -ef|grep nginx 可以看到nginx是否启动成功。
然后在游览器中输入虚拟机的游览器IP地址,如果访问时如果超时的话,则可能是虚拟机开了防火墙,关闭:service iptables stop ,再次访问如果出现nginx的欢迎页面则表明nginx启动成功。
遇到的错误:
1) 如果发现shell链接不上虚拟机的话,那么在虚拟机上alt+F2,调出控制台,然后执行service sshd status 查看ssh状态,如果是关闭,则执行 service sshd start , 会看到错误信息:/usr/sbin/sshd:error while loading shared libraries:libz.so.1:failed to map segment from shared object:Permission denied [FAILED]
这就表示系统文件libz.so.1找不到了,原因是之前安装的zlib包也生成了一个libz.so.1(和系统库包同名但内容不一样),系统启动SSH时会默认去/lib和/lib64中寻找需要的系统库包,但是生成的那个libz.so.1把系统库里的lib.so.1指向到了zlib包中的lib.so.1,所以导致错误。
whereis sshd 先找到sshd在哪个位置
然后执行ldd /usr/sbin/sshd 列出sshd运行所需的共享库
可以看到如下打印:
libz.so.1 => /lib64/libz.so.1 (0x00007f85f4796000)
这个表示libz.so.1指向的是 /lib64/libz.so.1 目录,发生错误的时候我指向的是zlib/lib/libz.so.1,所以会报错误。
2)虚拟机ping主机ping不通,但主机可以ping通虚拟机,这时候要去查主机的防火墙,找到允许程序通过Windows防火墙通信,找到VMware的四个相关选项,然后打上勾。即可解决。
分享到:
相关推荐
### OpenResty安装过程知识点详解 #### 一、OpenResty简介 - **定义**:OpenResty是一款基于Nginx与Lua的高性能Web平台,它使得开发人员能够轻松地编写出高性能、高可靠性的Web应用程序和服务。 - **特点**: - ...
linux-OpenResty安装依赖的库,内有 pcre-7.8-7.el6.x86_64.rpm,pcre-devel-7.8-7.el6.x86_64.rpm,openssl-1.0.1e-57.el6.x86_64.rpm,openssl-devel-1.0.1e-57.el6.x86_64.rpm,zlib-devel-1.2.3-29.el6.x86_64....
nginx支持的功能介绍,openresty安装配置简介
安装说明: OpenResty目标是让你的Web服务直接跑在 Nginx 服务内部,充分利用 Nginx 的非阻塞 I/O 模型,不仅仅对 HTTP 客户端请求,甚至于对远程后端诸如 MySQL、PostgreSQL、Memcached 以及 Redis 等都进行一致的高...
网上查找nginx-openresty添加rtmp模块的方法基本都是在Linux上的。但由于项目需要在Windows上使用nginx,无奈只好自己去找资料,在Windows上编译nginx-openresty同时加入rtmp模块。本资源是Windows上生成好的...
OpenResty+Nginx环境安装配置 OpenResty 是一个基于 Nginx 和 Lua 的高性能 Web 平台,内部有大量的 Lua 库和第三方模块,能够很方便的搭建处理高并发、扩展性高的 Web 平台和动态网关。OpenResty充分利用 Nginx 的...
离线一步安装openresty,前提需要安装gcc
openresty安装的详细过程以及说明文档,还有安装过程中出现的问题汇总
# openresty_1.19.9.1离线环境安装 ## 1. 下载并上传到服务器任意目录 ## 2. 切换目录 ``` cd openresty_1.19.9.1 ``` ## 3. 添加执行权限 ``` chmod +x install.py ``` ## 4. 安装 ``` ./install.py ```
5. 安装:使用`make install`将编译好的OpenResty安装到系统指定的目录。 6. 配置Nginx:根据示例配置文件,定制自己的Nginx配置,并启动OpenResty。 在实际应用中,ngx_openresty常被用于实现动态路由、API网关、...
4. **OpenResty安装**:"openresty-1.11.2.2"可能是一个特定版本的OpenResty发行包。安装OpenResty通常涉及下载源码、编译以及配置环境变量,确保所有依赖项正确安装。 5. **OpenResty配置**:OpenResty的配置文件...
**OpenResty的安装过程:** 1. 首先,你需要访问OpenResty的官方文档(http://openresty.org/cn/installation.html)获取最新版本的安装指南。在这个例子中,我们下载的是OpenResty的1.15.8.3版本。 2. 使用`wget`...
文件`安装OpenResty.md`应详细介绍了OpenResty在不同操作系统上的安装过程,包括编译选项、依赖管理以及启动和管理Nginx服务的方法。 通过以上介绍,我们可以看到OpenResty是一个强大的Web开发框架,它结合了Nginx...
OpenResty 1.25.3.1的安装通常涉及下载压缩包(openresty-1.25.3.1),然后按照官方文档的步骤进行编译和安装。这可能包括设置环境变量、安装依赖库(如pcre、openssl等)、配置Nginx模块,以及最终的make和make ...
在安装OpenResty之前,确保系统已安装了必要的依赖软件包。这些包包括Perl 5.6.1或更高版本,libreadline,libpcre(Perl兼容正则表达式库)以及libssl(用于加密和安全通信)。对于基于Debian和Ubuntu的系统,可以...
知识点1:OpenResty安装 OpenResty是一个集成了Nginx与LuaJIT的高性能Web平台。Orange工具在使用中需要依赖OpenResty,因此安装OpenResty是首要步骤。根据手册,OpenResty版本需要在*.*.*.*以上。为了使用监控插件...
一旦OpenResty安装完成,就可以开始使用Lua进行开发了。Lua脚本可以直接嵌入到Nginx配置文件中,通过`content_by_lua_file`或`rewrite_by_lua_file`指令来调用Lua代码。 ##### 1. Lua脚本示例 下面是一个简单的Lua...
a utf-8 support module for Lua and LuaJIT ... 编译后可用的库: Linux版:lua-utf8.so Windows版:lua-utf8.dll(若是用在openresty中,openresty版本需...将lua-utf8库放在openresty安装目录下,使用时用require引入。
- 解压`openresty-1.19.9.1-win32.zip`文件,得到OpenResty的安装目录。 - 配置Nginx配置文件(通常位于`conf/nginx.conf`),设置监听端口、路由规则等。 - 在Nginx配置文件中编写或引入Lua脚本,实现业务逻辑。...
为OpenResty增加nginx_upload_module模块-附件资源