Nginx简单介绍及安装

-Nginx简介

Nginx简介
Nginx是一款高性能的HTTP和反向代理服务器,主要有以下优点

  • 支持高并发

  • 配置简单

  • 占用的资源少

nginx作为代理服务器主要用来实现反向代理和负载均衡。
要理解反想代理首先介绍一下正向代理,如下图正向代理是代理客户端,服务端不知道真实的客户端是谁,客户端请求的服务都被代理服务器代替来请求。这里写图片描述
反向代理则是代理的服务端,以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器,用户不需要也不关心到底是哪台服务器为自己服务,反向代理是负载均衡实现的基础。
这里写图片描述
负载均衡:简单的理解就是将客户端的请求分发到不同的服务器,由不同的服务器做出响应,减轻服务器的压力。更加快速的响应客户端的请求。

Linux环境安装Nginx
参考文章:http://www.runoob.com/linux/nginx-install-setup.html
由于Nginx的启动端口是80小于1024,所以使用root用户安装
1. 安装编译工具及库文件

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel
  1. 安装PCRE
    PCRE 作用是让 Nginx 支持 Rewrite 功能。
    这里写图片描述

解压安装包

tar zxvf pcre-8.35.tar.gz

进入pcre目录执行以下命令进行编译安装

cd pcre-8.35
./configure
make && make install

安装完成之后查看PCRE的版本

pcre-config --version

这里写图片描述

下载Nginx
下载地址:http://nginx.org/download/nginx-1.9.9.tar.gz

wget http://nginx.org/download/nginx-1.9.9.tar.gz

这里写图片描述
解压目录

tar -zxvf nginx-1.9.9.tar.gz 

编译安装

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/pcre-8.35

这里写图片描述

make && make install

这里写图片描述

到此Nginx安装完成。
备注:nginx 常用命令
命令执行路径在nginx/sbin目录下

./nginx -?    //nginx命令帮助
./nginx -v    //查看nginx 版本
./nginx -t    //检查配置文件是否正确
./nginx       //启动nginx
./nginx -s reopen //重启nginx
./nginx -s reload  //重新加载配置文件
./nginx -s stop  //关闭nginx

这里写图片描述

启动Nginx使用浏览器访问,出现以下地址代表安装正确。http默认端口80,如果配置文件中监听的不是80端口,则需要加上端口号。
这里写图片描述

nginx.conf 配置


#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  warn;

#pid         logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

   # log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
   #                   '$status $body_bytes_sent "$http_referer" '
   #                  '"$http_user_agent" "$http_x_forwarded_for"';

  log_format  main
  ' $remote_user [$time_local]  $http_x_Forwarded_for $remote_addr  $request '
  '$http_x_forwarded_for '
  '$upstream_addr '
  'ups_resp_time: $upstream_response_time '
  'request_time: $request_time' '  request_body: $request_body';

    access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  105;

    client_max_body_size 10m;
    client_header_buffer_size  32k;
    large_client_header_buffers 4 32k;
    tcp_nopush      on;
    tcp_nodelay     on;

    #gzip  on;

    gzip  on;
    gzip_min_length 1k;
    gzip_buffers    4 16k;
    gzip_comp_level 4;
    gzip_types      text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
    gzip_vary       on;

    proxy_buffers   8 8k;

    proxy_cache_path     data/cache levels=1:2 keys_zone=one:10m;
    proxy_cache_min_uses 4;
    proxy_cache_valid    10m;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header REMOTE-HOST $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    fastcgi_buffers 8 128k;

    server_tokens off;

    server {

    listen 80;
        server_name localhost;

    location / {
          rewrite ^/(.*) https://$host/$1;
           }
        location /mweb {
            proxy_pass http://222.85.230.6:8080/mweb;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_ignore_client_abort on;

            client_max_body_size    10m;
            client_body_buffer_size 128k;
        }



        location /mca {
            proxy_pass  http://127.0.0.1/mca;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_ignore_client_abort on;

            client_max_body_size    10m;
            client_body_buffer_size 128k;
        }

        location /mrbui {
            proxy_pass  http://127.0.0.1/mrbui;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_ignore_client_abort on;

            client_max_body_size    10m;
            client_body_buffer_size 128k;
        }



        location /bkg {
            proxy_pass  http://127.0.0.1/bkg;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_ignore_client_abort on;

            client_max_body_size    10m;
            client_body_buffer_size 128k;
        }

        location /mrpos  {
            proxy_pass  http://127.0.0.1/mrpos;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_ignore_client_abort on;

            client_max_body_size    10m;
            client_body_buffer_size 128k;
        }
        location /mercStandard {
                proxy_pass  http://222.85.230.6:8080/mercStandard;
        }


        location /sysmng { 
             deny all; 
        } 

        location /console {
            deny  all;
        }

        location /admin-console {
            deny  all;
        }

        location /management {
            deny  all;
        }

        location /jmx-console {
            deny  all;
        }

        location /invoker {
            deny  all;
        }

        location /web-console {
            deny  all;
        }

    #   location /status {
    #       check_status;
    #       access_log off;
    #       allow 100.126.54.0/24;
    #       deny  all;
    #        }

        error_page  404              /404.html;

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
     }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值