Ngnix安装及常用配置

一、安装Nginx

  1.检查依赖

yum install gcc-c++

yum install -y pcre pcre-devel

yum install -y zlib zlib-devel

2.下载

(官网下载地址https://nginx.org/en/download.html)

wget https://nginx.org/download/nginx-1.8.1.tar.gz

3.安装

tar -zxvf nginx-1.8.1.tar.gz

cd nginx-1.8.1

./configure

make && make install

启动

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

二、进行配置

修改完nginx.conf后,如果启动报错,执行 nginx -t 进行查看配置文件是否有问题

1.配置

安装完nginx后,修改相应的nginx.conf文件

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

修改为:

user www-data;

worker_processes auto;

pid /run/nginx.pid;

events {
  worker_connections 1024; #单个后台进程的最大并发链接数
}
http {

#设置访问的web应用列表

upstream VideoSecuritySystem{

  server 192.168.0.156:8080; #!!!!!!!!!!!!!!修改为自己的路径

}

upstream one{

  server 192.168.0.156:8080; #!!!!!!!!!!!!!!!修改为自己的路径

}
upstream two{

  server 192.168.0.156:8081; #!!!!!!!!!!!!!!!修改为自己的路径

}

#HTTP服务器
server {

listen 80;

server_name 192.168.0.156;#!!!!!!修改!!!!可以是域名,前提是tomcat配置过,否则无法获取请求

index index.jsp

root /home/chx/allSoftCert/apache-tomcat-8.5.38/webapps/VideoSecuritySystem; #!!!!!!!修改为自己设置的根目录

charset utf-8;

proxy_connect_timeout 180;

proxy_send_timeout 180

proxy_read_timeout 180;

proxy_set_header Host $host;

proxy_set_header X-Forwarder-For $remote_addr;

location / {

  proxy_pass http://VideoSecuritySystem; #默认的展示服务

}

location /one/{

  proxy_pass http://one; #!!!!!!!!!!修改为自己的upstream

}

location /two/ {

  proxy_pass http://two; #!!!!!!!!!!修改为自己的upstream

}

}

}

2.验证

  linux下放置了两份tomcat,一个端口8080,一个端口8081,通过nginx反向代理,不用输入端口号进行访问。

  

三、额外补充篇:

如果需要支持rtmp,进行如下配置:

./configure --add-module=/home/soft/nginx-rtmp-module-master --with-http_ssl_module

如果提示缺少openssl library ,执行

yum install openssl openssl-devel -y

make && make install

然后创建文件

mkdir /home/soft/video

在 /usr/local/nginx/conf/nginx.conf里加入

rtmp {
  server {
    listen 11111;
    chunk_size 4000;
    application video {
      live on;
      max_connections 1024;
    }
    application hls {
      live on;
      hls on;
      hls_path /home/soft/video/hls;
      hls_fragment 10s;
    }

  }
}

在server里加入

location /hls {

types{

application/vnd.apple.mpegurl m3u8;

video/mp2t ts;

}
root /home/soft/video;

add_header Cache-Control no-cache;

add_header Access-Control-Allow-Origin *;

}

四、知识总结

简介:Nginx同Apache一样都是一种WEB服务器,Apache对于高并发高访问的支持并不是很好,Nginx是一款用c语言编写的可支持百万级别TCP连接的服务器。

作用:

1.HTTP服务器和反向代理服务器。

2.同时也是一个IMAP、POP3、SMTP代理服务器。

3.Nginx可以作为一个HTTP服务器进行网站的发布处理,另外Nginx可以作为反向代理进行负载均衡的实现。

原理:

正向代理(不明确是哪个客户端进行访问):

正向代理最大的特点是客户端非常明确要访问的服务器地址,用户通过访问代理服务器访问国外网站,服务器只清楚请求来自哪个代理服务器,而不清楚来自哪个具体的客户端。

正向代理模式屏蔽或者隐藏了真实客户端信息。

反向代理(不明确是哪台服务器进行处理):多个客户端给服务器发送的请求,Nginx服务器接收到之后,按照一定的规则分发给了后端的业务处理服务器进行处理。

请求的来源是明确的,但是请求具体由哪台服务器处理的并不明确了,Nginx扮演的就是一个反向代理角色。

使用:

Ngnix + Tomcat + Java

Nginx安装及分流多个web服务的更多相关文章

  1. Nginx 学习笔记(二)Web 服务启用 HTTP/2

    个人网站提升为HTTP2.0协议,加速访问 一.条件 1.openssl的版本必须在1.0.2e及以上 2.nginx的版本必须在1.9.5以上 二.编译安装 1.openssl 编译安装 (1)开始 ...

  2. Dynamics AX 2012 R2 安装 AIF IIS上的Web服务

    1.为什么使用IIS上的WEB服务 组件? 如果你要在Dynamics AX Service中使用HTTP Adapter,那么你就要安装IIS上的WEB服务 组件.HTTP Adapter会在IIS ...

  3. Nginx 在Windows下搭建静态Web服务

    简介 nginx [engine x] is an HTTP and reverse proxy server, a mail proxy server, and a generic TCP/UDP ...

  4. nginx实践(一)之静态资源web服务

    静态资源服务场景CDN 配置语法-文件读取(nginx优势之一sendfile) 配置语法-tcp_nopush 简单的说就是把多个包合并,一次传输给客户端 配置语法-tap_nodelay 配置语法 ...

  5. nginx实战(三)之静态资源web服务(跨站访问)

    语法 虽然说浏览器禁止跨站访问以防(CSRF),但出于一些原因还是要进行跨站访问,服务端通过设置头信息Access-Control-Allow-Orign:xxxx,客户端收到后就会允许跨站访问了 实 ...

  6. nginx实践(四)之静态资源web服务(防盗链)

    防盗链目的 防止资源被盗用 http_refer 主要是判断refer信息,判断请求来源是不是合法身份 语法 实例 参数说明: none表示允许没有代理的头信息过来,blocked表示refer信息不 ...

  7. nginx实践(二)之静态资源web服务(浏览器缓存场景)

    配置语法-expires

  8. web服务之nginx部署

    本期内容概要 了解web服务 Nginx和Apache的对比 部署Nginx 内容详细 1.什么是web服务 Web服务是一种服务导向架构的技术,通过标准的Web协议提供服务,目的是保证不同平台的应用 ...

  9. Nginx 安装与详解

    nginx简介 nginx是一个开源的,支持高性能,高并发的www服务和代理服务软件.它是一个俄罗斯人lgor sysoev开发的,作者将源代码开源出来供全球使用.nginx比它大哥apache性能改 ...

随机推荐

  1. 2 USB标准请求

    2 USB标准设备请求的结构 2.1 标准请求 bmRequestType 的D6~D5为00的请求,USB协议定义了11个标准请求(bRequest),其名字与相应的bRequest的值如下表: 表 ...

  2. 解决 html5 input type='number' 类型可以输入e

    当给 input 设置类型为 number 时,比如,我想限制,只能输入 0-9 的正整数,正则表达式如下: /^[-]?$/ // 匹配 0-9 的整数且只匹配 0 次或 1 次 用正则测试,小数点 ...

  3. .net 委托 +lamda表达式

    1.委托与类同级 想当于定义了一个类型 如 delegate int Sum(int a, int b);// 在声明类之前声明 2.这里可以在类里写个函数 public int sumAB(int ...

  4. git 和github简介

    关于github不清楚的可以百度, 在这里,可以创建一个新的仓库 点击Create repository后会出现下面这些信息,其中第一块是仓库的url链接 第二块是你在本地目录中创建一个READEME ...

  5. nginx防DDOS、cc、爬虫攻击

    一.防止DDOS.CC攻击 http { limit_conn_zone $binary_remote_addr zone=perip:10m; limit_conn_zone $server_nam ...

  6. TOP和PS aux命令显示出来的栏目所代表的意思

    USER: 行程拥有者 PID: pid %CPU: 占用的 CPU 使用率 %MEM: 占用的记忆体使用率 VSZ: 占用的虚拟记忆体大小 RSS: 占用的记忆体大小 TTY: 终端的次要装置号码 ...

  7. linux 7下已有mysql之后,如何使用

    今天在使用阿里云平台的esc时,选择的centos7系统,在安装mariadb的时候,发现系统已经自带了,然后却无法使用,在调查了之后,发现启动service的依赖件没有安装,所以安装以下依赖件. m ...

  8. 固定Linux虚拟IP地址

    由于我的开发环境是在VMWare虚拟机里安装Centos,然后在host文件中设置拦截,这样就可以直接跳转虚拟机的CentOS,但是虚拟机的IP地址总是会变,就要随时修改host文件,很麻烦.决定虚拟 ...

  9. redis安装到本地服务的方法

    要安装Redis,首先要获取安装包. Windows的Redis安装包需要到以下GitHub链接找到. 链接:https://github.com/MSOpenTech/redis 打开网站后,找到R ...

  10. Linux service,挂载,定时任务等常用服务

    一.防火墙 防火墙根据配置文件/etc/sysconfig/iptables 来控制本机的“出.入”网络访问行为 其对行为的配置策略有四个策 1. 基础必备技能           查看防火墙状态 s ...