Nginx官方网站下载稳定的主要分支版本。然后解压开来。

在Linux中需要使用编译工具编译安装Nginx。

首先安装“Development Tools”工具,包含了所有编译Nginx所需的依赖工具:

wget 'http://nginx.org/download/nginx-1.16.0.tar.gz'

tar zvfx nginx-1.16.0.tar.gz

1.执行命令,安全所有开发环境工具:

# yum group install "Development Tools" –assumeyes

2.安装完开发环境所有工具之后,升级yum:

# yum update

3.检查gcc、make工具是否安装正确:

# gcc –version
# make --version

如上所示,可以看到我们已经安装好的gcc和make工具的版本号。

3.检查Centos上面是否已经安装了PCRE Library,这个东西主要是Nginx 在做URl重定向的时候,需要这个库来做正则匹配用的。

如果Centos上面没有安装这个库,可能影响之后Nginx作Url重定向。

通过命令安装最新版本pcre:

#  yum install pcre

# yum install pcre-devel

4.OpenSSL ,Nginx程序需要这个库来处理Server端和Client端的SSL 或TLS,安装OpenSLL:

# yum install openssl
# openssl version –a

# yum install openssl-devel

5.zlib Library,Nginx需要这个库来实现数据压缩传输。而且openssl-devel也需要这个库

# yum install zlib

# yum install zlib-devel

1~5步骤把所有编译Nginx的准备都准备就绪之后,现在开始编译安装Nginx:

wget "http://nginx.org/download/nginx-1.16.0.tar.gz"

tar zvxf nginx-1.16.0.tar.gz

我们进入到Nginx压缩包里面:

cd nginx-1.16.0

我们可以看到有个脚本文件:

./configure

了解这个脚本其他的指令,我们敲入helper指令查看完整的指令清单:

# ./configure –help

这个脚本主要是用来检测Nginx的运行环境:包括Linux的机器型号,参数,定义Nginx的根目录(默认是 /usr/local/nginx)。

包括Nginx的线程,模块,各种配置以及临时目录。

也就是说这个脚本指令,基本上对应着Nginx的各种配置操作。下面的截图包含了这个./configure 脚本的所有指令:

6.给Nginx单独配置用户和用户组:比如用户和用户组的名字叫做nginx

./configure --user=nginx --group=nginx

7.创建用户组和用户名 :

[root@localhost nginx-1.15.12]# groupadd -r nginx
[root@localhost nginx-1.15.12]# useradd -r nginx -g nginx

8.手动配置Nginx:

#

./configure --prefix=/etc/nginx \
--user=nginx \
--group=nginx \
--sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf \
--pid-path=/var/run/nginx.pid \
--lock-path=/var/run/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-http_ssl_module \
--with-pcre \
--with-file-aio \
--with-http_realip_module \
--with-stream_ssl_module \
--with-http_v2_module \
--with-mail_ssl_module \
--with-stream \
--with-http_ssl_module \
--with-threads \
--with-http_secure_link_module \
--with-http_mp4_module \
--with-http_gzip_static_module \
--with-http_gunzip_module \
--with-http_addition_module \
--with-file-aio \

粘贴到命令行,回车两次,编译器会检查依赖项,然后创建一个Makefile文件。

成功的话,会看到如下结果:

当前目录下面多出了一个Makefile文件。

9.开始编译安装Nginx,执行make指令:它会编译所有的libraries,创建一个可执行二进制文件:

# make

10. 二进制编译完成之后,开始安装:

# sudo make install

11.配置Nginx自启动:

# sudo wget -O /etc/init.d/nginx 'https://gist.githubusercontent.com/sairam/5892520/raw/b8195a71e944d46271c8a49f2717f70bcd04bf1a/etc-init.d-nginx'

# sudo chmod +x /etc/init.d/nginx

# chkconfig --add nginx
# chkconfig --level 345 nginx on

Nginx自启动成功:

Centos7安装配置Nginx_笔记的更多相关文章

  1. CentOS7 安装配置笔记

    CentOS7 安装配置笔记 1.通过镜像安装 CentOS7 ==============================* 使用 UltraISO 9.7 或者 rufus-3.5p 制作ISO的 ...

  2. Centos7安装配置gitlab

    Centos7安装配置gitlab 这篇文字我会介绍在Centos7上安装gitlab,配置gitlab的smtp,并且创建项目demo. sudo yum install openssh-serve ...

  3. centos6 安装配置ss笔记

    2018-05-17 centos6 安装配置ss笔记 操作环境:Centos 6 x86_64 bbr 服务器地址:美国 1.准备VPS 在https://www.bwh1.net可购买,购买时已默 ...

  4. redis 安装配置学习笔记

    redis 安装配置学习笔记 //wget http://download.redis.io/releases/redis-2.8.17.tar.gz 下载最新版本 wget http://downl ...

  5. Centos7安装配置Apache+PHP+Mysql+phpmyadmin

    转载自: Centos7安装配置Apache+PHP+Mysql+phpmyadmin 一.安装Apache yum install httpd 安装成功后,Apache操作命令: systemctl ...

  6. Centos7 安装 Python 的笔记

    Centos7 安装 Python 的笔记 注意:系统自带的Python2.7不要改动,最好也不要出错,不然yum之类的工具可能会出错. 安装Python3.7.0 TensorFlow对Python ...

  7. Centos7安装配置JDK8

    Centos7安装配置JDK8 一.准备工作 第一步,去甲骨文官网下载Jdk相应的版本,我这里下载的是jdk1.8. 第二步将你从官网上下载下来的jdk使用FTP工具上传到云服务器上的相应目录,我的是 ...

  8. centos7命令行和图形界面的相互切换(附centos7安装配置教程)

    一.最近安装了centos7,发现在命令行和图形界面的相互切换命令上,与centos以往版本有很大不同,先整理如下,加深记忆. 1,centos7默认安装后,跟其他版本一样,启动默认进入图形界面: 2 ...

  9. (转)Centos7安装配置NFS服务和挂载

    Centos7安装配置NFS服务和挂载 原文:https://www.u22e.com/601.html NFS简介 NFS(Network File System)即网络文件系统,是FreeBSD支 ...

随机推荐

  1. 【Docker学习之二】Docker部署安装

    环境 docker-ce-19.03.1-3.el7.x86_64 一.Docker的部署安装 Docker采用Linux(内核)技术,所以只能运行在Linux上,官方说Linux kernel至少3 ...

  2. 解决chrome浏览器插件开发者模式每次启动要确认弹出框的问题

    在日常工作中,我们经常会用到一些浏览器插件,有些插件因为没上架到浏览器的应用商店,只能以开发者模式运行,但是chrome浏览器出了限制,每次重新启动浏览器的时候,就会弹出该插件是否要禁止运行的对话框, ...

  3. 浅谈Javascript 浅拷贝和深拷贝的理解

    javascript中存储对象都是存地址的. 浅拷贝:浅拷贝是都指向同一块内存区块,浅拷贝共用同一内存地址,你改值我也变.如果拷贝的对象里面的值是一个对象或者数组,它就是浅拷贝,拷贝的知识引用地址.  ...

  4. dockerfile使用

    一.构筑镜像命令 docker build -t test/nginx:v1.0 - prese/nginx:v1.0 -f /git/dockerfile . -t:指定存储库:镜像名和标签保存新镜 ...

  5. Slenium入门

    selenium 为浏览器测试框架,可以调用浏览器webdriver模拟浏览器操作360打开Chrome: from selenium import webdriver from selenium.w ...

  6. Java 中成员变量被局部变量所隐藏

    Java 中局部变量与成员变量同名时,局部变量会隐藏成员变量.如果我们想访问成员变量,可以使用 this 关键字. class Test { private int value = 10; void ...

  7. CentOS7-Docker 安装 Gitlab

    官方教程 https://docs.gitlab.com/omnibus/docker/ 搜索镜像 [root@master ~]# docker search gitlab 拉取镜像 [root@m ...

  8. Sqlite清空表数据以及重新设置主键操作

    Sqlite清空表数据以及重新设置主键操作 delete from 表名; //清空数据 update sqlite_sequence SET seq = 0 where name ='表名';//自 ...

  9. CF-Educational Codeforces Round 77 (Rated for Div. 2)(A-E题解)

    A. Heating (水题) 题目链接 大致思路: 因为是代价是平方,所以让每一个房间的大小平均即可,即最大和最小相差不超过一. 代码: #include<bits/stdc++.h> ...

  10. 2019-7-18 collections,time,random,os,sys,序列化模块(json和pickle)应用

    一.collections模块 1.具名元组:namedtuple(生成可以使用名字来访问元素的tuple) 表示坐标点x为1  y为2的坐标 注意:第二个参数可以传可迭代对象,也可以传字符串,但是字 ...