什么是Nginx?

Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,在高连接并发的情况下Nginx 是 Apache 服务器不错的替代品.其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好.目前中国大陆使用nginx网站用户有:新浪、网易、 腾讯,另外知名的微网志Plurk也使用nginx。

Nginx 作为 负载均衡 服务器:

Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务,也可以支持作为 HTTP 代理服务器对外进行服务。 Nginx 采用 C 进行编写, 不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好很多。作为邮件代理服务器:

Nginx 同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器), Last.fm 描述了成功并且美妙的使用经验。Nginx 是一个安装非常简单,配置文件非常简洁(还能够支持perl语法), Bugs非常少的服务器: Nginx 启动特别容易,并且几乎可以做到 7*24 不间断运行,即使运行数个月也不需要重新启动。 你还能够不间断服务的情况下进行软件版本的升级。

安装说明

系统环境:CentOS6、CentOS7、Red Hat6、Red Hat7
软件:nginx-1.8.0.tar.gz
其他所需软件:openssl-1.0.2a.tar.gz、pcre-8.37.tar.gz、zlib-1.2.8.tar.gz
安装方式:源码编译安装 
安装位置:/usr/local/nginx 
下载地址:http://download.csdn.net/detail/li1669852599/9411702  或者加入Q群下载

安装前提

在安装nginx前,需要确保系统安装了g++、gcc

1.安装openssl软件
#
#----------------------------------------
# 下载地址: http://www.openssl.org/
#---------------------------------------- #进入安装目录
cd /usr/local/ #删除原有安装
rm -rf openssl
rm -rf openssl-1.0.2a #解压
tar -zxv -f openssl-1.0.2a.tar.gz #进入源码目录
cd openssl-1.0.2a #配置
./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl/conf #编译安装
make && make install #检验安装
/usr/local/openssl/bin/openssl version -a

2.安装pcre软件

#下载地址: http://www.pcre.org/

#进入安装目录
cd /usr/local/ #删除原有安装
rm -rf pcre
rm -rf pcre-8.37 #解压
tar -zxv -f pcre-8.37.tar.gz #进入源码目录
cd pcre-8.37 #执行配置
./configure --prefix=/usr/local/pcre/ #编译安装
make && make install

3.安装zlib软件

#进入安装目录
cd /usr/local/ #删除原有安装
rm -rf zlib
rm -rf zlib-1.2.8 #解压
tar -zxv -f zlib-1.2.8.tar.gz #进入源码目录
cd zlib-1.2.8 #配置
./configure --prefix=/usr/local/zlib/ # 编译安装
make && make install

4. 安装nginx软件

#----------------------------------------------------------------
# 安装前提: openssl、pcre、zlib
# 注意:
# 不使用自已安装的openssl的时候,要安装openssl-devel,否则编译不通过。
# yum install openssl-devel 此时参数可以不使用--with-open_ssl=/usr/local/openssl-1.0.1g
#---------------------------------------------------------------- #添加www用户和组
groupadd www
useradd -g www www #创建网站根目录
mkdir -p /var/www/root/
chmod -R 775 /var/www/root/ #进入安装目录
cd /usr/local #删除原有安装
rm -rf nginx
rm -rf nginx-1.8.0 #解压
tar -zxvf nginx-1.8.0.tar.gz #进入安装目录
cd nginx-1.8.0 #配置(使用openssl、pcre、zlib的源码路径)
./configure \
--user=www \
--group=www \
--prefix=/usr/local/nginx \
--with-http_ssl_module \
--with-openssl=/usr/local/openssl-1.0.2a \
--with-pcre=/usr/local/pcre-8.37 \
--with-zlib=/usr/local/zlib-1.2.8 \
--with-http_stub_status_module \
--with-threads #编译安装
make && make install #验证
/usr/local/nginx/sbin/nginx -V

修改配置文件

vi /usr/local/nginx/conf/nginx.conf

启动、重启

#启动:
/usr/local/nginx/sbin/nginx #重启
/usr/local/nginx/sbin/nginx -s reload

停止

#查询nginx主进程号 
ps -ef | grep nginx
#停止进程 
kill -QUIT 主进程号 
#快速停止 
kill -TERM 主进程号 
#强制停止 
pkill -9 nginx

测试

#测试端口 
netstat –na|grep 80
#浏览器中测试 
http://ip:80

Linux系统 - 源码编译安装Nginx的更多相关文章

  1. Linux系统——源码编译安装

    记得要先去把httpd-2.2.9.tar.gz通过xftp进行文件传输第一步:yum仓库下安装编译环境的支持程序 #yum -y install gcc gcc-c++ make 第二步:将源码包h ...

  2. Linux 从源码编译安装 Nginx

    Nginx 是一个高性能的 HTTP 和 反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器.Nginx 编译安装比较简单,难点在于配置.下面是 Nignx 0.8.54 编译安装和简 ...

  3. Linux 从源码编译安装 OpenSSH

    https://blog.csdn.net/bytxl/article/details/46639073 Linux 从源码编译安装 OpenSSH以及各问题解决 2015年06月25日 17:37: ...

  4. 源码编译安装nginx及设置开机启动项

    1.上传nginx文档:解压到/data目录下,并安装依赖包tar xf nginx-1.20.1.tar.gz -C /data/cd /data/nginx-1.20.1/ && ...

  5. CentOS7 源码编译安装Nginx

    源码编译安装nginx     1.下载nginx源码包(这里以nginx-1.18.0为例) wget http://nginx.org/download/nginx-1.18.0.tar.gz 2 ...

  6. Linux 下源码编译安装 vim 8.1

    前言 目前 linux 的各个发行版基本上都是带了一个 vi 编辑器的,而本文要说的 vim 编辑器对 vi 做了一些优化升级,更好用.当我们需要远程操作一台 linux 服务器的时候,只能使用命令行 ...

  7. Linux下源码编译安装rpy2

    R(又称R语言)是一款开源的跨平台的数值统计和数值图形化展现工具.rpy2是Python直接调用R的第三方库,它可以实现使用python读取R的对象.调用R的方法以及Python与R数据结构转换等.这 ...

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

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

  9. Ubuntu 16.04源码编译安装nginx 1.10.0

    一.下载相关的依赖库 pcre 下载地址 http://120.52.73.43/jaist.dl.sourceforge.net/project/pcre/pcre/8.38/pcre-8.38.t ...

随机推荐

  1. 【MySQL】初识数据库及简单操作

    一.数据库概述 1.1 什么是数据(Data) 描述事物的符号记录称为数据,描述事物的符号既可以是数字,也可以是文字.图片,图像.声音.语言等,数据由多种表现形式,它们都可以经过数字化后存入计算机. ...

  2. 使用kbmmw 的REST 服务实现上传大文件

    我们在使用kbmmw的REST 服务时,经常会下载和上传大文件.例如100M以上的.kbmmw的rest服务中 提供标准的文件下载,上传功能,基本上就是打开文件,发送,接收,没有做特殊处理.这些对于文 ...

  3. affiliate的使用方式

    什么是affiliate https://www.zhihu.com/question/24262490 通俗的理解就是,我们寻找合作伙伴,让合作伙伴帮忙做宣传,我们会根据他们的宣传力度发放相关的奖励 ...

  4. spring实现一个简单的事务管理

    前两天给公司的数据库操作加了事务管理,今天博客就更一下这个吧. 先说明:本文只是简单得实现一下事务,事务的具体内容,比如事务的等级,事务的具体实现原理等等... 菜鸟水平有限,暂时还更不了这个,以后的 ...

  5. ASP.NET代码调用SQL Server带DateTime类型参数的存储过程抛出异常问题

    ASP.NET代码调用SQL Server带DateTime类型参数的存储过程,如果DateTime类型参数的值是'0001/1/1 0:00:00'时,就会抛出异常“Message: SqlDate ...

  6. Redis各种数据类型的应用场景

    redis是一种key values形式的非关系型数据库,通过内存存储,也可以把数据持久化到本地文件中. redis支持丰富的数据类型,String,list,set,zset,hash,下面说一下各 ...

  7. JQuery 操作数组 each、map、grep、filter

    Jquery中对数组的操作大致有一下几种形式:1.$.each( collection, callback(indexInArray, valueOfElement) )$.each()函数和$(se ...

  8. Python核心团队计划2020年停止支持Python2,NumPy宣布停止支持计划表

    Python核心团队计划在2020年停止支持Python 2.NumPy项目自2010年以来一直支持Python 2和Python 3,并且发现支持Python 2对我们有限的资源增加了负担:因此,我 ...

  9. numpy&matplotlib读书笔记

    Matplotlib matplotlib是Python优秀的数据可视化第三方库 matplotlib库的效果可参考 http://matplotlib.org/gallery.html matplo ...

  10. some knowledge of language

    1:编译型语言2:解释型语言编译型:编译形成结果,再整体运行解释型:运行产生结果,边解释运行java 特殊(.class)再解释3:脚本语言是解释语言它的优点是方便阅读,不需要写非常多的类型相关的代码 ...