Nginx是一款轻量级的网页服务器、反向代理服务器。相较于Apache、lighttpd具有占有内存少,稳定性高等优势。**它最常的用途是提供反向代理服务。**

http://zlib.net/zlib-1.2.11.tar.gz
$ tar -zxvf zlib-1.2.11.tar.gz
$ ./configure
$ make && make install


4.安装nginx

  1.  
    $ cd /usr/local/
  2.  
    $ wget http://nginx.org/download/nginx-1.8.0.tar.gz
  3.  
    $ tar -zxvf nginx-1.8.0.tar.gz
  4.  
    $ cd nginx-1.8.0
  5.  
    $ ./configure --user=nobody --group=nobody --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-http_realip_module --with-http_sub_module --with-http_ssl_module
  6.  
    (注: --with-http_ssl_module:这个不加后面在nginx.conf配置ssl:on后,启动会报nginx: [emerg] unknown directive "ssl" in /opt/nginx/conf/nginx.conf 异常)
  7.  
    $ make && make install
  8.  

    时提示以下错误:

    ./configure: error: SSL modules require the OpenSSL library.

    支持此命令:

    yum -y install openssl openssl-devel

  9.  
    报错:./configure: error: the HTTP gzip module requires the zlib library
  10.  
     

在–prefix后面接以下命令:

  1.  
    --with-pcre=/usr/local/pcre-8.36 指的是pcre-8.36 的源码路径。--with-zlib=/usr/local/zlib-1.2.8 指的是zlib-1.2.8 的源码路径。
  2.  
     

点击此处下载安装脚本

5.启动

$ /usr/local/nginx/sbin/nginx

检查是否启动成功:

打开浏览器访问此机器的 IP,如果浏览器出现 Welcome to nginx! 则表示 Nginx 已经安装并运行成功。

部分命令如下:
重启:

$ /usr/local/nginx/sbin/nginx –s reload

停止:

$ /usr/local/nginx/sbin/nginx –s stop

测试配置文件是否正常:

 $ /usr/local/nginx/sbin/nginx –t

强制关闭:

  1.  
    $ pkill nginx
  2.  
     

http://myserver;
}

我们在 upstream 中指定了一组机器,并将这个组命名为 myserver,这样在 proxypass 中只要将请求转移到 myserver 这个 upstream 中我们就实现了在四台机器的反向代理加负载均衡。其中的 ip_hash 指明了我们均衡的方式是按照用户的 ip 地址进行分配。另外还有轮询、指定权重轮询、fair、url_hash几种调度算法。

总结

以上是最简单的通过 nginx 实现静态文件转发、反向代理和负载均衡的配置。在 nginx 中所有的功能都是通过模块来实现的,比如当我们配置 upstream 时是用 upstream 模块,而 server 和 location 是在 http core 模块,其他的还有流控的 limt 模块,邮件的 mail 模块,https 的 ssl 模块。他们的配置都是类似的可以再 nginx 的模块文档中找到详细的配置说明。

*********************************************************************************

文章转自:

安装所需环境

Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Windows 版本,本篇则使用 CentOS 7 作为安装环境。

一. gcc 安装
安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:

yum install gcc-c++

二. PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。命令:

yum install -y pcre pcre-devel

三. zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。

yum install -y zlib zlib-devel

四. OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。

yum install -y openssl openssl-devel

官网下载

1.直接下载.tar.gz安装包,地址:https://nginx.org/en/download.html

2.使用wget命令下载(推荐)。确保系统已经安装了wget,如果没有安装,执行 yum install wget 安装。

wget -c https://nginx.org/download/nginx-1.12.0.tar.gz

我下载的是1.12.0版本,这个是目前的稳定版。

解压

依然是直接命令:

tar -zxvf nginx-1.12.0.tar.gz
cd nginx-1.12.0

配置

其实在 nginx-1.12.0 版本中你就不需要去配置相关东西,默认就可以了。当然,如果你要自己配置目录也是可以的。
1.使用默认配置

./configure

2.自定义配置(不推荐)

./configure \
--prefix=/usr/local/nginx \
--conf-path=/usr/local/nginx/conf/nginx.conf \
--pid-path=/usr/local/nginx/conf/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi

注:将临时文件目录指定为/var/temp/nginx,需要在/var下创建temp及nginx目录

编译安装

make
make install

查找安装路径:

whereis nginx
nginx-whereis.png

启动、停止nginx

cd /usr/local/nginx/sbin/
./nginx 
./nginx -s stop
./nginx -s quit
./nginx -s reload

启动时报80端口被占用:
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

 解决办法:1、安装net-tool 包:yum install net-tools

 

./nginx -s quit:此方式停止步骤是待nginx进程处理任务完毕进行停止。
./nginx -s stop:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。

查询nginx进程:

ps aux|grep nginx

重启 nginx

1.先停止再启动(推荐):
对 nginx 进行重启相当于先停止再启动,即先执行停止命令再执行启动命令。如下:

./nginx -s quit
./nginx

2.重新加载配置文件:
当 ngin x的配置文件 nginx.conf 修改后,要想让配置生效需要重启 nginx,使用-s reload不用先停止 ngin x再启动 nginx 即可将配置信息在 nginx 中生效,如下:
./nginx -s reload

启动成功后,在浏览器可以看到这样的页面:

nginx-welcome.png

开机自启动

即在rc.local增加启动代码就可以了。

vi /etc/rc.local

增加一行 /usr/local/nginx/sbin/nginx
设置执行权限:

chmod 755 rc.local

nginx-rclocal.png

到这里,nginx就安装完毕了,启动、停止、重启操作也都完成了,当然,你也可以添加为系统服务,我这里就不在演示了。

--------------------------------------分割线 --------------------------------------

Nginx负载均衡配置实战  http://www.linuxidc.com/Linux/2014-12/110036.htm

CentOS 6.2实战部署Nginx+MySQL+PHP http://www.linuxidc.com/Linux/2013-09/90020.htm

使用Nginx搭建WEB服务器 http://www.linuxidc.com/Linux/2013-09/89768.htm

搭建基于Linux6.3+Nginx1.2+PHP5+MySQL5.5的Web服务器全过程 http://www.linuxidc.com/Linux/2013-09/89692.htm

CentOS 6.3下Nginx性能调优 http://www.linuxidc.com/Linux/2013-09/89656.htm

CentOS 6.3下配置Nginx加载ngx_pagespeed模块 http://www.linuxidc.com/Linux/2013-09/89657.htm

CentOS 6.4安装配置Nginx+Pcre+php-fpm http://www.linuxidc.com/Linux/2013-08/88984.htm

Nginx安装配置使用详细笔记 http://www.linuxidc.com/Linux/2014-07/104499.htm

Nginx日志过滤 使用ngx_log_if不记录特定日志 http://www.linuxidc.com/Linux/2014-07/104686.htm

--------------------------------------分割线 --------------------------------------

Nginx 的详细介绍:请点这里
Nginx 的下载地址:请点这里

 参考:

https://blog.csdn.net/wxyjuly/article/details/79443432

https://www.cnblogs.com/boonya/p/7907999.html

标签智能推荐:

Linux的基础应用

与CentOs系统安装centos7安装python3python开发之virtualenv与virtualenvwrapper应用Ubuntu安装之python开发二、linux基础Linux远程连接Linux文档目录结构 Shell基本命令Vim编辑器使用Linux与Web服务基础Linux中Xshell常用快捷键Linux基础系统优化及基础命令(一)Linux基础系统优化及基础命令

Linux下Nginx的下载、安装配置、启动、重启、停止

n注意:path有多个路径的话用冒号“:”隔开而不是用分号“;”,比如说之前配置过jdk3.执行source/etc/profile,使配置文件生效。4.执行nginx-v如果能看到版本,就说明nginx已经安装成功了四、nginx启动/usr/local/nginx/sbin/nginx-c/usr/local/nginx/conf/nginx.conf五、重启进入/usr/local/ngin

centos7安装mysql5.6版本 + 主从复制

centos安装5.6版本:CentOS7下使用YUM安装MySQL5.6主从复制:Mysql主从复制与读写分离原理及配置教程卸载和安装5.7版本:CentOS7安装与卸载MySQL5.7安装5.7版本包含修改mysql的编码:CentOS7安装MySQL(完整版)注意:为mysql设置远程连接之后,要关闭防火墙,远程服务器才能连接自己的mysql数据库关闭防火墙:https://www.cnbl

第一次linux下安装nginx记录

CentOS7安装Nginx并配置自动启动1、下载Nginx安装包----》地址:http://nginx.org/en/download.html2.上传安装包到服务期:rz命令3.解压安装包:tar-zxvf文件名4.进入解压后的目录:cdnginx-1.17.6/5.检测当前系统环境,以确保能成功安装nginx:./configure6.如果没有出现./configure:error提示,表

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

henif[-f/data/nginx-1.20.1/nginx.pid-a-s/data/nginx-1.20.1/nginx.pid]then:else/data/nginx-1.20.1/sbin/nginx-c/data/nginx-1.20.1/nginx.confecho"nginxisrunning..."fielif["$1"="stop"]thenif[-f/data/nginx

CentOS 7 安装 Nginx 配置反向代理

//nginx.org/keys/nginx_signing.keymodule_hotfixes=true2、安装Nginx通过以下命令安装Nginxsudoyuminstallnginx3、配置Nginx开机启动通过以下命令配置Nginx开机启动systemctlenablenginx4、启动Nginx服务通过以下命令启动Nginx服务systemctlstartnginxstart启动,st

Nginx安装(我觉得我这篇可能是全网最清晰的一篇安装步骤了)

当前博文的童靴,都不再是任何问题了;并且对于nginx的编译安装,以及安装的方式,相信都已经有了一个更好的自身理解;  3、设置全局的nginx 命令(需注意的是:如果需要安装多个nginx服务,则此处便没有必要将nginx设置为全局命令了,建议使用nginx命令时,还是直接指定对应的nginx路径,然后进行执行,这样可以更好的区分当前所执行的到底是那个nginx服务

Centos7 安装nginx

su:登录root账号安装依赖:yum-yinstallpcrepcre-develyum-yinstallzlibzlib-develyum-yinstallopensslopenssl-devel下载nginx安装包:https://nginx.org/en/download.htmlnginx-1.12.2.tar.gz解压tar-xvf nginx-1.12.2.tar.gzcd

Centos7添加配置systemctl自定义服务

Centos7我们使用yum安装的MySQL,Nginx等,都可以很方便地通过systemctlstart/stopservicename控制服务启停。那要是我们自己自定义安装的应用,如二进制或者源码安装的MySQL等应用,是否也可以配置成通过systemctl来控制服务启停呢?答案是可以的。其实也比较简单,以Nginx为例,我们只需要配置nginx.service服务文件即可。具体配置,分以下三

Linux(centos)安装nginx

Linux(centos)安装nginx转载请注明出处注意,本教程安装环境为centos7,使用nginx官网压缩包编译安装(非rpm或apt),本人亲测有效~chapterOne:卸载系统自带nginx停止Nginx软件。servicenginxstop删除Nginx的自动启动。chkconfignginxoff删除yum安装yumremovenginx从源头删除Nginxrm-rf/usr/s