什么是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设置global变量和session变量

    1.在MySQL中要修改全局(global)变量,有两种方法: 方法一,修改my.ini配置文件,如果要设置全局变量最简单的方式是在my.ini文件中直接写入变量配置,如下图所示.重启数据库服务就可以 ...

  2. 在Java的Condition接口【唤醒全部线程】

    在Java的Condition接口中,存在的几个方法跟Synchronized中的wait(),waitall(),wait(time ^),这个几个方法一一对应起来,但是在Lock.newCondi ...

  3. java上传文件常见几种方式

    1.ServletFileUpload 表单提交中当提交数据类型是multipare/form-data类型的时候,如果我们用servlet去做处理的话,该http请求就会被servlet容器,包装成 ...

  4. cytoscape.js

    http://js.cytoscape.org/ HTML 报告中插入动态网络关系图利器

  5. C++如何获取当前路径下所有文件的文件名

    今天我遇到了这样一个任务:要求编写一个程序,统计和这个程序在同一目录下(及其子目录)所有文件的单词数.统计单词数十分倒不是太难,倒是找出同一目录下的所有文件,是我从来没有接触过的.仔细分析,这个问题其 ...

  6. 关于分布式事务,XA协议的学习笔记

    XA分布式事务协议,包含二阶段提交(2PC),三阶段提交(3PC)两种实现. 1.二阶段提交方案:强一致性 事务的发起者称协调者,事务的执行者称参与者. 处理流程: 1.准备阶段 事务协调者,向所有事 ...

  7. Spring Boot的Maven配置

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  8. HTTP lab01 做一个简单的测试用 web页面

      做一个简单的测试用 web页面     1.安装httpd服务   yum install httpd   安装完httpd服务后,系统就自动生成了/var/www/html目录     创建一个 ...

  9. jsp(web作业)

    一:jsp简介 SP即Java Server Pages,它和servlet技术一样,都是sun公司定义的一种用于开发动态web资源的技术.该技术的最大特点在于:写JSP就像写html,但它相比htm ...

  10. python图形界面编程

    EasyGui(easygui-docs-0.96\tutorial\index.html) import easygui as g import sys while 1: g.msgbox('mes ...