#运行用户,默认即是nginx,可不设置
#user nobody;
#nginx进程,一般设置为和cpu核数一样
worker_processes 1;
#;单个后台worker process进程的最大并发链接数
events {
worker_connections 1024;
}
http {
#文件扩展名与类型映射表
include mime.types;
#默认文件类型
default_type application/octet-stream;
#开启高效传输模式
sendfile on;
#连接超时时间,单位是秒
keepalive_timeout 65;
server {
#监听端口
listen 80;
#映射域名
server_name www.abc.com;
#可以实现多种编码识别
charset utf-8; #nginx添加自定义header.表明,该资源可以被任意外域访问,用作跨域请求使用
add_header Access-Control-Allow-Origin *; location / {
#请求转向mysvr 定义的服务器列表
proxy_pass http://192.168.126.1:9000/;
#用来在后端获取用户发送过来的请求头
proxy_set_header Host $host;
#用来获取客户端的IP
proxy_set_header Remote_Addr $remote_addr;
#在后端这样获取:request.getAttribute("X-real-ip")
proxy_set_header X-Real-IP $remote_addr;
#后端通过request.getAttribute("X-Forwarded-For")获得的将会是客户端ip和第一台nginx的ip
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#访问http://192.168.126.1:9000/的路径会被映射到index.html
index index.html;
} location ~ ^/(hryfilefront) {
proxy_pass http://192.168.126.1:9000;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
} location ~ ^/(hryfile) {
proxy_pass http://192.168.126.1:9000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
} server {
listen 80;
server_name manage.abc.com ;
charset utf-8; location ~ ^/(manage) {
proxy_pass http://192.168.126.1:9002;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~ ^/(hryfile) {
proxy_pass http://192.168.126.1:9002;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~ ^/(oauth) {
proxy_pass http://192.168.126.1:9001;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~ ^/(hryfilefront) {
proxy_pass http://192.168.126.1:9002;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
} location ~ ^/(hryfile) {
proxy_pass http://192.168.126.1:9002;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
} location ~ ^/(admin) {
root /usr/share/nginx/html/admin;
index index.html;
}
} server {
listen 80;
server_name hq.abc.com ;
charset utf-8; location / {
proxy_pass http://192.168.126.1.25:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
} }

安装命令解析

docker pull nginx:1.12.2
docker run -itd --restart=unless-stopped -v /etc/localtime:/etc/localtime -v /etc/timezone:/etc/timezone -p $1:80:80 --name nginx -v /data/yjs/nginx/html:/usr/share/nginx/html -v /data/yjs/nginx/logs:/var/log/nginx -v /data/yjs/nginx/conf/nginx.conf:/etc/nginx/nginx.conf nginx:1.12.2

解析后:

#拉取版本1.12.2的nginx
docker pull nginx:1.12.2
#-i: 以交互模式运行容器,通常与 -t 同时使用;
#-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
#-d: 后台运行容器,并返回容器ID;
#通过--restart选项,可以设置容器的重启策略,以决定在容器退出时Docker守护进程是否重启刚刚退出的容器。
#unless-stopped,在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器
docker run -itd --restart=unless-stopped
# 同步时区
-v /etc/localtime:/etc/localtime
-v /etc/timezone:/etc/timezone
#开放端口,并映射到本地的 80 端口。
-p $1:80:80 --name nginx
#挂载到绝对路径下
-v /data/yjs/nginx/html:/usr/share/nginx/html
-v /data/yjs/nginx/logs:/var/log/nginx
-v /data/yjs/nginx/conf/nginx.conf:/etc/nginx/nginx.conf nginx:1.12.2

参考资源路径:

nginx add_header指令使用方法

https://www.jb51.net/article/47681.htm

nginx proxy_set_header设置、自定义header

https://blog.csdn.net/bao19901210/article/details/52537279

nginx location正则写法

https://www.cnblogs.com/IPYQ/p/7889399.html

nginx配置文件nginx.conf超详细讲解

https://www.cnblogs.com/liang-wei/p/5849771.html

注意事项:

  • 配置路径要为绝对路径
  • 上面的域名要想可以访问,要使用域名信息备案过的域名方可

Nginx配置解析的更多相关文章

  1. 初识nginx——配置解析篇

    一.nginx的介绍 nginx是由俄罗斯人开发的一款高性能的http和反向代理服务器,也可以用来作为邮件代理.相比较于其他的服务器,具有占用内存少,稳定性高等优势 二.nginx的配置 nginx的 ...

  2. 003.Nginx配置解析

    一 Nginx配置文件 1.1 Nginx主配置 Nginx主配置文件/etc/nginx/nginx.conf是一个纯文本类型的文件,整个配置文件是以区块的形式组织,通常每一个区块以一对大括号{}来 ...

  3. Nginx 配置解析

    概述:本篇文章主要对Nginx配置文件中一些常用配置进行了讲解,和如何使用Docker进行安装Nginx.因为该文章是回首在工作闲暇之余整理的,还有待完善,如果有疑义和更好的建议的朋友可以留言给我. ...

  4. nginx配置解析之客户端真实IP的传递

    前后端分离之后,采用nginx作为静态服务器,并通过反向代理的方式实现接口跨域的方式,在降低开发成本的同时也带来了诸多问题,例如客户端真实IP的获取. 在一些特殊场景下,比如风控和支付流程,往往需要获 ...

  5. NGINX(四)配置解析

    前言 nginx配置解析是在初始化ngx_cycle_t数据结构时,首先解析core模块,然后core模块依次解析自己的子模块. 配置解析过程 nginx调用ngx_conf_parse函数进行配置文 ...

  6. php php-fpm安装 nginx配置php

    centos 6.2 linux下安装php5.6.6源码 PHP在 5.3.3 之后已经把php-fpm并入到php的核心代码中了. 所以php-fpm不需要单独的下载安装.要想php支持php-f ...

  7. Nginx 原理解析和配置摘要

    前言 Nginx 作为高性能的 http 服务器,知名度不必多言,相似产品中无出其右.本篇随笔记录我认为较为重要的原理和配置. 1. 原理解析 1.1 结构 以上是 Nginx 的结构图,其包含一个 ...

  8. [Linux.NET]Nginx 泛解析配置请求映射到多端口实现二级域名访问

    由于想实现一个域名放置多个应用运行的目的,而不想通过域名后加端口号方式处理,这种方式处理记起来太麻烦,偷懒党简直不能忍,故而考虑了使用二级域名来处理多个应用同时运行.Google了一番资料并进行了尝试 ...

  9. Nginx 泛解析配置请求映射到多端口实现二级域名访问

    由于想实现一个域名放置多个应用运行的目的,而不想通过域名后加端口号方式处理,这种方式处理记起来太麻烦,偷懒党简直不能忍,故而考虑了使用二级域名来处理多个应用同时运行.Google了一番资料并进行了尝试 ...

随机推荐

  1. Linux管道及I/O重定向

    I/O: 系统设定 默认输入设备:标准输入,STDIN,0 默认输出设备:标准输出,STDOUT,1 标准错误输出:STDERR,2 属于不同的数据流 标准输入:键盘 标准输出和错误输出:显示器 I/ ...

  2. 一步一步图文介绍SpriteKit使用TexturePacker导出的纹理集Altas

    1.为什么要使用纹理集? 游戏是一种很耗费资源的应用,特别是在移动设备中的游戏,性能优化是非常重要的 纹理集是将多张小图合成一张大图,使用纹理集有以下优点: 1.减少内存占用,减少磁盘占用: 2.减少 ...

  3. mybatis interceptor 处理查询参数及查询结果

    拦截器:拦截update,query方法,处理查询参数及返回结果. /** * Created by windwant on 2017/1/12. */ @Intercepts({ @Signatur ...

  4. JavaScript --经典问题

    JavaScript中如何检测一个变量是一个String类型?请写出函数实现 方法1. function isString(obj){ return typeof(obj) === "str ...

  5. adb 在windows7中的使用

    我的系统环境是win7 x64 首先放上资源链接:https://pan.baidu.com/s/1eTV5qX8 密码:2ejw 第一步: 配置环境变量,将adb.exe的路径添加到PATH里面去: ...

  6. SVM 为什么要从原始问题变为对偶问题来求解

    这个问题困扰了我许久,下面是我搜集整理到的答案 对偶问题将原始问题中的约束转为了对偶问题中的等式约束 方便核函数的引入 改变了问题的复杂度.由求特征向量w转化为求比例系数a,在原始问题下,求解的复杂度 ...

  7. Machine Learning笔记整理 ------ (四)线性模型

    1. 线性模型 基本形式:给定由d个属性描述的样本 x = (x1; x2; ......; xd),其中,xi是x在第i个属性上的取值,则有: f(x) = w1x1 + w2x2 + ...... ...

  8. leetcode个人题解——#15 3sums

    class Solution { public: vector<vector<int>> threeSum(vector<int>& nums) { sor ...

  9. JQuery常用函数方法全集

    Attribute: $("p").addClass(css中定义的样式类型); 给某个元素添加样式 $("img").attr({src:"test ...

  10. 官方文档 恢复备份指南一 Introduction to Backup and Recovery

    1.备份分为:物理备份和逻辑备份    物理备份:备份数据文件  控制文件  归档日志文件     逻辑备份:EXP EXPDP备份等 物理备份为主,逻辑做补充     2.错误的类型         ...