一.什么是Nginx:

  Nginx是一个高性能的HTTP和反向代理服务,也是一个IMAP/POP3/SMTP服务。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

二.Nginx作用:

  反向代理,集群,虚拟服务器,负载均衡,动静分离,解决跨域问题等

三.安装Nginx:

  1.链接 https://nginx.org/en/download.html,如下

    Nginx从安装到使用 随笔 第1张

  2.linux和windows版本下载完后解压(windows版本解压即可)

  以linux为例,解压后得到

    Nginx从安装到使用 随笔 第2张

  3.进入文件夹后可以看到目录

    Nginx从安装到使用 随笔 第3张

  4.执行

./configure

  5.如果出现错误如下,则

    Nginx从安装到使用 随笔 第4张

      (1)安装编译工具及库文件

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

      (2)安装PCRE,链接https://sourceforge.net/projects/pcre/files/pcre/

        下载PRCE安装包并解压,例如下图

        Nginx从安装到使用 随笔 第5张

        进入解压后的文件夹,找到configure并执行

cd prce-8.43.tar.gz
./configure

        安装并查看prce版本

make && make install
pcre-config --version

  6.再次进入nginx-1.14.2文件夹,执行

./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.43

  7.再执行make(注意上面那行代码,这里默认会去找/usr/local/src/ 下的prce-8.43文件夹),然后make install完成安装。

  8.查看nginx版本(上面指定的目录)

/usr/local/webserver/nginx/sbin/nginx -v

  例如

    Nginx从安装到使用 随笔 第6张

  9.启动nginx,进入第6步中指定的文件夹中,再进入sbin文价夹中,执行./nginx

    (在nginx文件夹中重启是sbin/nginx -s  reopen,关闭 sbin/nginx -s stop,直接在sbin文件夹中./nginx -s reopen)

  10.查看nginx是否启动,例如

    Nginx从安装到使用 随笔 第7张

  nginx默认端口是80,所以直接访问ip地址,例如下图所示,即可知nginx启动成功

    Nginx从安装到使用 随笔 第8张

四.使用Nginx

   Nginx从安装到使用 随笔 第9张

  1.静态资源文件夹里的文件可以直接在外部访问,例如

    Nginx从安装到使用 随笔 第10张

  2.实现反向代理(不暴露真实IP地址)

    修改nginx.conf配置文件

      Nginx从安装到使用 随笔 第11张

  重新加载配置文件

./nginx -s reload

  测试:

    Nginx从安装到使用 随笔 第12张

  如果反向代理没有成功,可以查看log日志,找到并进入logs文件夹,输入

cat error.log

  例如下图

    Nginx从安装到使用 随笔 第13张

  如果发现正常启动成功,却没有成功配置反向代理。可以看看是否是自己修改了正确的配置文件(注意,nginx解压后的conf文件夹中有一个配置文件,而nginx启动目录下的文件夹中有一个nginx.conf配置文件,还有一个nginx.conf.default配置文件,可以试着将三个配置文件都修改试试,如果你是按照上面安装步骤,应该修改的是/usr/local/webserver/nginx/conf中的nginx.conf和nginx.conf.default)

  3.实现集群(使用nginx实现负载均衡)

    负载均衡算法: 

      轮询机制:在配置文件中添加(请求会轮流转发到129和130两个服务器)

upstream backserver { 
    server 192.168.2.129; 
    server 192.168.2.130; 
} 

      权重(比例分配):

upstream backserver { 
    server 192.168.2.129 weight=10; //129访问10次,130访问一次
    server 192.168.2.130 weight=1; 
} 

      IP绑定:(一个ip地址就固定访问一个服务器了,但可以解决session共享问题)

upstream backserver { 
    ip_hash; 
    server 192.168.2.129; 
    server 192.168.2.130; 
} 

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄