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 ...
随机推荐
- C++ 中 new 操作符内幕:new operator、operator new、placement new
一.new 操作符(new operator) 人们有时好像喜欢有益使C++语言的术语难以理解.比方说new操作符(new operator)和operator new的差别. 当你写这种代码: st ...
- C++STL deque
deque双端数组 deque<int> dq; deque<int>::iterator it; dq.push_back();//尾部插入元素 dq.push_front( ...
- 下载编译安装Apache HTTP Server 2.4.23以及配置HTTP/HTTPS反向代理
http://blog.csdn.net/gangchengzhong/article/details/52910225 [注意,在编译make时出现的错误并不是文章中说的openssl的版本问题,而 ...
- 07-css的继承性和层叠性
css有两大特性:继承性和层叠性 继承性 面向对象语言都会存在继承的概念,在面向对象语言中,继承的特点:继承了父类的属性和方法.那么我们现在主要研究css,css就是在设置属性的.不会牵扯到方法的层面 ...
- python基础回顾
1.第二个缺点就是代码不能加密.如果要发布你的Python程序,实际上就是发布源代码,这一点跟C语言不同,C语言不用发布源代码,只需要把编译后的机器码(也就是你在Windows 上常见的xxx.exe ...
- linux 各项分布(个人记录)
1.根目录文件 root:存放root用户的相关文件home:存放普通用户的相关文件bin :存放常用命令的目录sbin:要具有一定权限才可以使用的命令mnt :挂在光驱和软盘的目录boot:存放引导 ...
- ubuntu 开机自启(2B的经历)
上午写了很细致的开机自启说明文档(需打开terminal进行输出认证).睡了一下午,回来楼主说,联想PM要用Ubuntu Server 当服务器,必须用命令行实现.. 连续各种百度谷歌,看了N多文档, ...
- index.jsp首页访问不了的解决方法
解决方法: Tomcat,将项目添加到里面 部署解包的webapp目录 将Web项目部署到Tomcat中的方法之一,是部署没有封装到WAR文件中的Web项目.要使用这一方法部署未打包的webapp目录 ...
- codeforces982A
题意 给你个排列 10001 满足下列条件输出yes 否则输出no 1.不能有两个1相连 2.当点排列不能再加入1 全0判断一下 开头判断一下 结尾判断一下 #include <iost ...
- [ASE][Daily Scrum]11.05
在昨天的课程之后经过讨论进行了初步的分工,并制定出了我们的一个两周计划. 尚没有和老师讨论,已经询问了时间没有收到回复,等老师那边讨论过后我会在更新这个部分. 第一阶段的目标是用户能够在一个空白的地图 ...