安装方式

  1. yum直接更新源安装
  2. 源码直接编译之后安装

使用yum进行直接安装

Installing a Prebuilt CentOS/RHEL Package from an OS Repository

  1. Install the EPEL repository:
$ sudo yum install epel-release
  1. Update the repository and install NGINX Open Source:
$ sudo yum update
  1. Install Nginx
$ sudo yum install nginx
  1. Verify the installation:
$ sudo nginx -v
nginx version: nginx/1.6.3

源码直接编译之后安装

注意点,centos默认需要先安装c以及c++的的编译环境执行命令,在继续后续的操作

$ yum -y install gcc

$ yum -y install gcc-c++

一、安装nginx依赖

  • PCRE – Supports regular expressions. Required by the NGINX Core and Rewrite modules
$ wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.41.tar.gz
$ tar -zxf pcre-8.41.tar.gz
$ cd pcre-8.41
$ ./configure
$ make
$ sudo make install
  • zlib – Supports header compression. Required by the NGINX Gzip module.
$ wget http://zlib.net/zlib-1.2.11.tar.gz
$ tar -zxf zlib-1.2.11.tar.gz
$ cd zlib-1.2.11
$ ./configure
$ make
$ sudo make install
  • OpenSSL – Supports the HTTPS protocol. Required by the NGINX SSL module and others.
$ wget http://www.openssl.org/source/openssl-1.0.2k.tar.gz
$ tar -zxf openssl-1.0.2k.tar.gz
$ cd openssl-1.0.2k
$ ./Configure darwin64-x86_64-cc --prefix=/usr
$ make
$ sudo make install

遇到问题死都安装不上去,所以使用yum的包进行安装了

yum -y install openssl openssl-devel

二、获取源码,编译源码

  • 可以通过官方网站获取版本,我们这边获取的是stable版本,使用脚本处理
$ wget http://nginx.org/download/nginx-1.13.4.tar.gz
$ tar zxf nginx-1.13.4.tar.gz
$ cd nginx-1.13.4
$ ./configure
--sbin-path=/usr/local/nginx/nginx
--conf-path=/usr/local/nginx/nginx.conf
--pid-path=/usr/local/nginx/nginx.pid
--with-pcre=../pcre-8.41
--with-zlib=../zlib-1.2.11
--with-http_ssl_module
--with-stream
--with-mail=dynamic
--add-module=/usr/build/nginx-rtmp-module
--add-dynamic-module=/usr/build/3party_module
  • Completing the Installation from Source

    编译安装
$ make
$ sudo make install
  • 启动
# 启动nginx
$ sudo nginx
# 启动nginx(守护模式进程常驻)
$ sudo nginx
# 停止nginx
$ nginx pid file: "/usr/local/nginx/logs/nginx.pid"
$ sudo kill `cat /usr/local/nginx/logs/nginx.pid`
  • 卸载nginx
# 方式一:https://unix.stackexchange.com/questions/22708/how-to-uninstall-nginx-installed-from-source
$ sudo rm -f -R /usr/local/nginx && rm -f /usr/local/sbin/nginx
# 方式二:https://serverfault.com/questions/645110/how-to-uninstall-nginx-on-centos7
$ make uninstall
  • 安装两个nginx

    一般一台服务器不会安装两个nginx的,但是特殊情况会,所以一个使用源码编译安装,一个使用yum源安装

    编译的时候使用命令切换路径

./configure --prefix=/usr/local/nginx2 --sbin-path=/usr/local/nginx2/nginx2 --conf-path=/usr/local/nginx2/nginx.conf --pid-path=/usr/local/nginx2/nginx.pid

  • 安装路径
  • 启动bin路径
  • 配置路径
  • pid路径

遇到问题

  1. 源码安装的时候,yum update docker的镜像的使用十分慢,所以我进行了一段时间的等待,但是依旧没有处理完

    解决方案,yum update的时候排除某些。http://blog.51cto.com/pizibaidu/1342925
yum update --exclude=docker-ce*
  1. 发现启动后,有两个进程

    按照进程号的关系判断,master和worker的进程是一定有关联关系的,删除master即可

    参考网址
root     30870     1  0 16:10 ?        00:00:00 nginx: master process nginx
nginx 30871 30870 0 16:10 ? 00:00:00 nginx: worker process
root 31028 8302 0 16:13 pts/0 00:00:00 grep --color=auto nginx

直接使用命令启动

$ nginx

使用命令停止启动

$ systemctl stop nginx
$ systemctl start nginx

参考

【运维技术】Nginx安装教程(yum安装,源码编译)的更多相关文章

  1. WordPress安装篇(5):源码编译安装LNMP并部署WordPress

    与YUM方式安装相比,源码编译安装方式更灵活,安装过程中能自定义功能和参数,特别是在批量部署服务器又要求软件版本及配置一致时,源码编译安装的优势很明显.本文介绍如何通过源码编译方式安装Nginx1.1 ...

  2. 【运维技术】CentOS7上从零开始安装阿里RocketMQ版本:release-4.0.1【亲测哈哈】

    CentOS7上从零开始安装阿里RocketMQ版本:release-4.0.1[亲测哈哈] 安装git # 更新包 $ yum update # 安装git $ yum install git # ...

  3. Centos7通过yum跟源码编译安装Nginx

    源码编译安装 http://nginx.org/en/download.html 到官网下载,然后用XFTP上传到root目录 把文件解压出来 tar -zxvf nginx-1.16.0.tar.g ...

  4. nginx在centos 7中源码编译安装【添加grpc的支持】

    安装依赖软件 1.安装编译工具gcc gcc是一个开源编译器集合,用于处理各种各样的语言:C.C++.Java.Ada等,在linux世界中是最通用的编译器,支持大量处理器:x86.AMD64.Pow ...

  5. 【运维技术】CentOS7上从零开始安装LAMP安装织梦DedeCMS教程

    前期准备数据 centos7 系统 安装 appache httpd # 更新httpd yum update httpd # 安装httpd yum install -y httpd # 启动服务 ...

  6. 运维监控之zabbix(yum安装)

    简介 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位 ...

  7. hadoop2.2伪分布安装加2.2源码编译

    配置linux基本环境: --> java.ip.hostname.hosts.iptables.chkconfig.ssh环境配置 hadoop2.2安装在linux64位机器上,需要对源码进 ...

  8. CentOS6.5一键安装MySQL5.5.32(源码编译)

    ###################################################mysql_install.sh                                 ...

  9. centos-rpm安装的mariadb,php52源码编译安装时注意点

    1.不要静态指定with-mysql 以扩展的mysql.so的形式安装 2.找不到header file之类的 要yum install mysql-devel find / -name mysql ...

  10. Linux运维-zabbix_agent最新版的yum安装

    agentd端可以直接使用yum来进行安装 rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1. ...

随机推荐

  1. php学习六:字符串

    前言:越来越觉得php的强大之处了,不紧是数组,在字符串方面也可以看出它的优势,第一:方法多,集合了js,c,c#等多门语言的方法:第二:有许多方法是其他语言不具备的,如他的模糊比较,就是其他语言所没 ...

  2. 《C++ Primer Plus》12.6 复习各种(类和动态内存分配的)技术 笔记

    12.6.1 重载<<运算符要重新定义<<运算符,以便将它和cout一起用来显示对象的内容,请定义下面的友元运算符函数:ostream & operator<&l ...

  3. hadoop错误各种原因

    NoRouteToHostException 错误描述: INFO hdfs.DFSClient: Exception in createBlockOutputStream java.net.NoRo ...

  4. springdata----->spring集成redis(一)

    使用spring-data-redis与redis集成,今天我们就通过例子来学习一下.当时间和耐心都已经变为奢侈,我们只能靠星座了解彼此. spring与redis集成的实例 注意:这里我们测试的是安 ...

  5. android基础---->AIDL服务的使用

    AIDL和其他的IDL类似,它允许你定义程序接口,以便客户端与服务器端通过IPC机制交互.在android上面,一个进程一般不能访问另外进程的内存.因此,Android平台将这些跨进程访问的对象分解成 ...

  6. Linux显示不了中文

      原文:https://www.cnblogs.com/hooly/p/8615384.html 版权所有:归属原文作者!!!  查看当前系统默认采用的字符集: # locale 在RedHat/C ...

  7. 二、微信小游戏开发 多线程Worker

    微信多线程Worker教程 微信多线程Worker API 一.创建Worker,并和当前线程通讯 多线程worker只能创建1个.能和当前线程互传数据. 创建worker 在微信开发者工具中,在当前 ...

  8. vue监听滚动事件

    vue中监听滚动事件,然后对其进行事件处理,一般有:1. 滚动到顶部吸附: 2. 根据滚动的位置激活对应的tab键(锚链接tab键) 这两种方式的处理都是可通过监听scroll来实现 mounted( ...

  9. 170612、web如何项目优化

    Web性能优化分为服务器端和浏览器端两个方面. 一.浏览器端,关于浏览器端优化,分很多个方面1.压缩源码和图片JavaScript文件源代码可以采用混淆压缩的方式,CSS文件源代码进行普通压缩,JPG ...

  10. C#读取xml文件指定节点下的值

    #region 读取xml文件指定节点下的值 XmlDocument xmlDoc = new XmlDocument(); xmlDoc.LoadXml(result); XmlNode root ...