nginx在centos 7中源码编译安装【添加grpc的支持】
安装依赖软件
1、安装编译工具gcc
gcc是一个开源编译器集合,用于处理各种各样的语言:C、C++、Java、Ada等,在linux世界中是最通用的编译器,支持大量处理器:x86、AMD64、PowerPC、ARM、MIPS等。
首先确定系统是否安装gcc
[root@localhost ~]# gcc
若输出以下消息则已经安装gcc:
若输出以下消息则未安装gcc:
使用包管理器yum安装gcc:
[root@localhost ~]# yum -y install gcc
2.安装PCRE库
nginx的Rewrite模块和HTTP核心模块会使用到PCRE正则表达式语法,因此nginx编译需要使用PCRE(Perl Compatible Regular Expression)库,需要安装pcre和pcre-devel,pcre提供编译版本的库,pcre-devel提供开发阶段的头文件和编译项目的源代码。
使用yum安装:
[root@localhost ~]# yum -y install pcre pcre-devel
3.安装zlib库
zlib库提供了压缩算法,在nginx的各种模块中需要使用gzip压缩,因此需要安装zlib库和zlib-devel(zlib源代码)。
[root@localhost ~]# yum -y install zlib zlib-devel
OpenSSL项目是一个协作开发健壮的、商业级的、全功能的执行于安全套接层(SSL v2/v3)和传输层安全(TLS v1)的协议,也是一个完整强壮的通用加密库。在nginx中如果服务器需要提供安全网页则会用到OpenSSL库,因此需要安装它的库文件和它的开发安装包。
4.安装OpenSSL
yum安装openssl和openssl-devel
[root@localhost ~]# yum -y install openssl openssl-devel
安装nginx
可以去nginx官网找到各个版本的链接
下载并解压:
[root@localhost src]# wget http://nginx.org/download/nginx-1.13.12.tar.gz
[root@localhost src]# tar zxvf nginx-1.13.12.tar.gz
[root@localhost src]# cd nginx-1.13.12
##配置选项 linux下创建一个应用程序分为三步,配置源代码、编译、安装编译,配置步骤可以选择更多选项,这些选项在程序安装完成后不可编辑,配置即添加某些开关选项(switch)到配置(configure)脚本, 可以激活的开关类型有三种。 ###**容易的安装方法** 不加任何配置参数直接编译安装nginx ;由于我们这里要添加nginx用于支持grpc的模块所以需要添加俩个模块(with-http_ssl_module ,with-http_v2_module)。
[root@localhost nginx-1.13.12]# ./configure --with-http_ssl_module --with-http_v2_module
[root@localhost nginx-1.13.12]# make&&make install
安装完成后可以尝试启动nginx
[root@localhost nginx-1.13.12]#/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
默认启动后在外部访问服务器的80端口看时候可以访问,如果没办法在外部访问可以在内部执行
[root@localhost nginx-1.13.12]# curl 127.0.0.1
出现如下结果:

至此安装完成。
参考博客:
https://blog.csdn.net/zsl10/article/details/52181748
https://www.colabug.com/2739346.html
nginx在centos 7中源码编译安装【添加grpc的支持】的更多相关文章
- CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境
CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境 什么是LNMP? LNMP(别名LEMP)是指由Linux, Nginx, MySQL/MariaDB, PHP/ ...
- CentOS 7.4 源码编译安装 Redis
一.CentOS 7.4 源码编译安装 Redis 1.下载源码并解压 wget http://download.redis.io/releases/redis-4.0.10.tar.gz tar ...
- centos 6.5源码编译安装subversion 1.8.10
一.简介 CentOS 6.5的yum源可以安装的SVN客户端版本太低了,1.6.11,所以需要升级到1.8.10,而官网有没有找到1.8.10的安装包,只能选择源码编译安装. 二.安装步骤 参考官网 ...
- CentOS中源码编译安装Nginx
1.从官网通过wget命令将Nginx源码包下载到Linux上 Nginx下载页面:http://nginx.org/en/download.html 2.在Linux上安装需要依赖的环境 yum ...
- CentOS 6.4源码编译安装httpd并启动测试
今天来总结一下在Linux中软件安装,通常我们应该知道,安装软件有两种方法:一种是软件包的安装,也就是rpm包的安装,就是指这些软件包都是 已经编译好的二进制rpm包,我们通过rpm安装工具和yum安 ...
- Centos 7.5源码编译安装zabbix4.0报fatal error: mysql.h: No such file or directory
系统环境:CentOS 7.5是最小化安装的 编译信息 编译选项: root@Server01 zabbix-]# ./configure --prefix=/usr/share/applicatio ...
- 源码编译安装 MySQL 5.5.x 实践
1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...
- 源码编译安装 MySQL 5.5.x 实践(转)
1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...
- Centos7通过yum跟源码编译安装Nginx
源码编译安装 http://nginx.org/en/download.html 到官网下载,然后用XFTP上传到root目录 把文件解压出来 tar -zxvf nginx-1.16.0.tar.g ...
随机推荐
- const修饰指针时应注意的问题
1.指向常量的指针 顾名思义,一个指针指向const对象,则称它为指向常量的指针. ; int* ptr=&a; //错误 const int* ptr=&a; //必须用const来 ...
- mfc标题栏 菜单 退出 关机 重启
隐藏标题栏 int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CFrameWnd::OnCreate(lpCreateStru ...
- extern声明全局变量用法
在类之外声明一个成员变量,如: a.h CString name; class a{ }; a.cpp extern CString name; 然后就可以用name这个成员变量了. b.cpp ex ...
- c# 快速排序法并记录数组索引
在遗传算法中,只需要对适应性函数评分进行排序,没必要对所有的个体也参与排序,因为在适应性函数评分排序是可以纪律下最初的索引,排序后的索引随着元素排序而变动,这样就知道那个评分对应那个个体了: usin ...
- 学以致用十二-----YouCompeteMe巨坑
接上一篇,通过这几天的不断尝试,发现一个无法解决的问题.至于我安装成功的那台,我至今不知道是安装了哪一步导致成功的. 首先,我在.vimrc里加上了 Plugin 'Valloric/YouComp ...
- Group精确定位(canvas定位)
## <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> &l ...
- 1114 Family Property
This time, you are supposed to help us collect the data for family-owned property. Given each person ...
- (转)php语法(符号用法)
转自:http://blog.unvs.cn/archives/php-equal-bracket.html 学习PHP过程中,会常碰到一些特殊的符号,比如:=.==.===.->.=>. ...
- 用jquery将输入的文字的双向绑定
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...
- 验证手机格式的js代码
function isMobil(s) { var patrn = /(^0{0,1}1[3|4|5|6|7|8|9][0-9]{9}$)/; ...