hi-nginx-1.3.4编译安装
hi-nginx既是 web 服务器,也是 application 服务器。它开源在https://github.com/webcpp/hi-nginx
它是NGINX的超集,因此与编译NGINX稍有不同。编译安装hi-nginx需要额外安装一些东西,具体取决于你希望hi-nginx支持哪些编程语言。
hi-nginx支持五种编程语言进行web应用开发,分别是c++,python,lua,php和java。其中,c++是基本的和必选的。
- c++语言,需要安装支持c++11的g++或者clang++,以及hiredis-devel。这个部分是必要的。
- python语言,需要安装boost-devel和python-devel
- lua语言,需要安装lua-devel5.1-5.3
- php语言,需要安装php7
- java语言,需要安装jdk10以下版本,openjdk也是可以的
具体来说,可以使用以下命令安装:
| centos |  | 
| ubuntu |  | 
不需要哪种语言,就把哪种语言的相关项目去掉。
php7的编译安装与平时有两点不同。第一,需要开启--enable-embed=shared选项。第二,在configure之前,需要稍微修改下configure文件。打开该文件,搜索ac_cv_have_decl_isfinite,找到后,把以下部分:
ac_fn_c_check_decl "$LINENO" "isfinite" "ac_cv_have_decl_isfinite" "#include <math.h>
"
if test "x$ac_cv_have_decl_isfinite" = xyes; then :
ac_have_decl=
else
ac_have_decl=
fi
改成:
ac_fn_c_check_decl "$LINENO" "isfinite" "ac_cv_have_decl_isfinite" "#include <math.h>
"
if test "x$ac_cv_have_decl_isfinite" = xyes; then :
ac_have_decl=
else
ac_have_decl=
fi
然后./configure && make 即可。
jdk的安装,最简单的就是直接安装openjdk-devel。如果使用oracle jdk,也是一样的,只要版权在10以下一般都可以。关键是要把ldconfig配置好。对于java 9 ,就是
$JAVA_HOME/lib/
$JAVA_HOME/lib/server
对于java 9以下版本,就是
$JAVA_HOME/jre/lib/amd64/server
可以自己创建/etc/ld.so.conf.d/java.conf文件,把以上路径用真实路径填写进去,然后sudo ldconfig即可。
完成以上步骤后,就可以开始编译hi-nginx了。
需要何种语言就在configure时开启哪种语言,默认是全部开启的:
--enable-http-hi-cpp=YES \
--enable-http-hi-python=YES \
--enable-http-hi-lua=YES \
--enable-http-hi-java=YES \
--enable-http-hi-php=YES \
--add-module=ngx_http_hi_module \
不需要某种语言(除cpp外),就把某项设置为NO。hi-nginx安装包下有个install_demo.sh文件,可以按自己的需要修改后直接运行使用。然后make && sudo make install 即可。
编译安装后记得systemctl daemon-reload 和systemctl restart nginx。
hi-nginx-1.3.4编译安装的更多相关文章
- 新安装和已安装nginx如何添加未编译安装模块/补丁
		新安装和已安装nginx如何添加未编译安装模块/补丁 --http://www.apelearn.com/bbs/forum.php?mod=viewthread&tid=10485& ... 
- 安装成功的nginx如何添加未编译安装模块
		原已经安装好的nginx,现在需要添加一个未被编译安装的模块举例说明:安装第三方的ngx_cache_purge模块(用于清除指定URL的缓存)nginx的模块是需要重新编译nginx,而不是像apa ... 
- nginx的下载、编译安装和启动
		一.nginx简介 nginx(“engine x”)是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器.nginx是由Igor Sysoev为俄罗斯访问量第二的R ... 
- centos 7 下 nginx 1.10.3 编译安装的方法
		安装所需环境 Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Windows 版本,本篇则使用 CentOS 7 作为安装环境. 一. gcc 安装安装 nginx 需要先 ... 
- F-stack及其Nginx、redis的编译安装
		F-stack简介 F-stack粘合了dpdk.用户态协议栈和nginx.redis,弥补了dpdk没有协议栈的不足,并用nginx.redis提供了一个调用应用程序的接口. Quick Start ... 
- 转:安装成功的nginx如何添加未编译安装模块
		原已经安装好的nginx,现在需要添加一个未被编译安装的模块 举例说明:安装第三方的ngx_cache_purge模块(用于清除指定URL的缓存) nginx的模块是需要重新编译nginx,而不是像a ... 
- Nginx之解压编译安装-yellowcong
		安装前准备 对于nginx编译安装需要先安装编译 的工具,然后再安装nginx依赖 yum -y install gcc gcc-c++ autoconf automake make yum -y i ... 
- 生产线上的Nginx如何添加未编译安装模块
		正在生产线上跑着web前端是nginx+tomcat,现在有这样一个需求,需要对网站的单品页面和列表页设置缓存,不同的页面设置不同的缓存,但是由于开始没有安装ngx_cache_purge这个模块,现 ... 
- [nginx] 从源码编译安装NGINX
		nginx通过rpm包进行的安装和配置: [web][nginx] 初识nginx -- 使用nginx搭建https DPI解码测试环境 现在,要通过源码进行安装. 参考:https://nginx ... 
- nginx各版本全自动编译安装脚本
		#!/bin/bash #作者:星云法师(头条号:西西图图---专注美食领域的研究) #环境:centos7,如果是其它的系统可以相应做调整.#--------选择安装方式,网络晚装还是本地安装--- ... 
随机推荐
- 3.1 PCI设备BAR空间的初始化
			在PCI Agent设备进行数据传送之前,系统软件需要初始化PCI Agent设备的BAR0~5寄存器和PCI桥的Base.Limit寄存器.系统软件使用DFS算法对PCI总线进行遍历时,完成这些寄存 ... 
- VBR与CBR的区别是什么?
			VBR是动态码率.CBR是静态码率. VBR(Variable Bitrate)动态比特率.也就是没有固定的比特率,压缩软件在压缩时根据音频数据即时确定使用什么比特率,这是以质量为前提兼顾文件大小的方 ... 
- cmder默认的命令提示符λ改成$
			新版的cmder(2016.11.3测试)单纯修改init.bat或以前的方法都试过了不行,下面是我自己找到的方法.亲测可行. cmder\vendor\clink.lua文件中第41行中{lamb} ... 
- HighCharts之2D金字塔图
			HighCharts之2D金字塔图 1.实例源码 Pyramid.html: <!DOCTYPE html> <html> <head> <meta char ... 
- Meet Python
			关于python 入门书<Head First Python>的一些读书笔记,用以备忘. 下载安装Python 下载地址: https://www.python.org/downloads ... 
- 异常-----web.xml文件报错 	Multiple annotations found at this line: 	- cvc-complex-type.2.4.b: The content of element 'welcome-file-list' is not complete. One of '{"http://java.sun.c
			1,检查抬头是不是有问题. <?xml version="1.0" encoding="UTF-8"?><web-app version=&q ... 
- 一篇关于PHP性能的文章
			一篇关于PHP性能的文章 昨晚清理浏览器收藏夹网址时,发现了http://www.phpbench.com/,想起来应该是2015年发现的一个比较性能的文章,我就点进去看了看,发现还是全英文耶,刚好最 ... 
- Web前端开发学习笔记(二)
			Homework2:http://my.ss.sysu.edu.cn/wiki/display/WEB/Homework+2+-+Movie+Review 这份作业跟布局相关,因此很多都是布局的知识: ... 
- Redis进阶实践之十六 Redis大批量增加数据
			一.介绍 有时,Redis实例需要在很短的时间内加载大量先前存在或用户生成的数据,以便尽可能快地创建数百万个键.这就是所谓的批量插入,本文档的目标是提供有关如何以尽可能快的速度向Redis提 ... 
- js实现简单的轮播效果
			<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ... 
