#user  nobody;
worker_processes ; #error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info; pid logs/nginx.pid; events {
worker_connections ;
} 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"'; #access_log logs/access.log main; sendfile on;
#tcp_nopush on; #keepalive_timeout ;
keepalive_timeout ; #gzip on; # proxy_pass 和 fastcgi_pass中会用到 upstream定义的代理服务器
# upstream 中可以定义多个server 代理服务器
upstream vue{
server localhost:;
} server {
listen ;
server_name localhost;
#access_log logs/host.access.log main; location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://vue;
} #proxy_intercept_errors 针对location匹配后的结果是proxy_pass后的错误处理
proxy_intercept_errors on;
error_page /.html;
error_page /50x.html; location = /50x.html {
root html;
}
location = /.html {
root html;
} location /term {
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr; #完全可以自定义一个http header,在java中通过HttpServletRequest.getHeader(headerName)
#就可以获取到自定义头的值
#语法是 proxy_set_header headerName headerValue;
#如果headerValue不是nginx提供的变量,而是字符串,就通过单引号给引起来
proxy_set_header luo-hao-nan 'luohaonan';
proxy_pass http://localhost:8082/;
}
} } # c:\nginx-1.16.>nginx -h
# nginx version: nginx/1.16.
# Usage: nginx [-?hvVtTq] [-s signal] [-c filename] [-p prefix] [-g directives] # Options:
# -?,-h : this help
# -v : show version and exit
# -V : show version and configure options then exit
# -t : test configuration and exit
# -T : test configuration, dump it and exit
# -q : suppress non-error messages during configuration testing
# -s signal : send signal to a master process: stop, quit, reopen, reload
# -p prefix : set prefix path (default: NONE)
# -c filename : set configuration file (default: conf/nginx.conf)
# -g directives : set global directives out of configuration file # nginx简单配置思路
# 围绕着location展开,对匹配的路径进行 [被请求内容] 定位
# [被请求内容] 可以来自本地文件系统,由root指令指定[被请求内容]的存放位置
# [被请求内容] 也可以来自proxy_pass指令指定的地址,此时nginx将把请求转发到proxy_pass指令指定的地址 # proxy_pass指令后面的指定的地址 可以直接是一个url比如[http://localhost:8082/]
# proxy_pass指令后面的指定的地址 也可以是upstream定义的一组url的名称入上面的vue,此时请求被分发到vue对应的一组url上面 # 通过proxy_pass后在后端服务接口会丢失部前端用户的信息,比如说ip地址。为了解决这个问题,需要使用proxy_set_header指令,
# 通过proxy_set_header指令设置头信息,让头中包含自定义的信息,然后再后端服务接口中在手动取出对应的头信息就ok了,
# 比如所针对nginx代理后服务端接口使用java的情况下,HttpServletRequest.getRemoteAddr()获取到的是nginx的地址,而不是真实的
# 客户浏览器的地址,那么通过在location中设置proxy_set_header X-Real-IP $remote_addr;就可以在后端服务接口中通过header获取
# 客户的真实ip了。HttpServletRequest.getHeader("X-Real-IP").需要注意的是header名称是任意的,也可以设置成其他的名称,
# 要灵活的操作就ok了。 # 如果使用proxy_pass,同样想使用error_page功能,那么需要设置proxy_intercept_errors为on

other#nginx配置的更多相关文章

  1. nginx配置反向代理或跳转出现400问题处理记录

    午休完上班后,同事说测试站点访问接口出现400 Bad Request  Request Header Or Cookie Too Large提示,心想还好是测试服务器出现问题,影响不大,不过也赶紧上 ...

  2. Windos环境用Nginx配置反向代理和负载均衡

    Windos环境用Nginx配置反向代理和负载均衡 引言:在前后端分离架构下,难免会遇到跨域问题.目前的解决方案大致有JSONP,反向代理,CORS这三种方式.JSONP兼容性良好,最大的缺点是只支持 ...

  3. Windows下Nginx配置SSL实现Https访问(包含证书生成)

    Vincent.李   Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...

  4. Nginx 配置简述

    不论是本地开发,还是远程到 Server 开发,还是给提供 demo 给人看效果,我们时常需要对 Nginx 做配置,Nginx 的配置项相当多,如果考虑性能配置起来会比较麻烦.不过,我们往往只是需要 ...

  5. Nginx配置详解

    序言 Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的.从2004年发布至今,凭借开源的力量,已经接近成熟与完善. Nginx功能丰富,可作为HTTP服务器,也 ...

  6. Nginx配置Https

    1.申请证书: https://console.qcloud.com/ssl?utm_source=yingyongbao&utm_medium=ssl&utm_campaign=qc ...

  7. nginx配置为windows服务中的坑

    网上搜索“nginx 配置为windows服务”,很容易搜索到使用windows server warpper来配置,于是按照网上的方法我从github上的链接下载了1.17版本,前面都很顺利,很容易 ...

  8. 【nginx配置】nginx做非80端口转发

    一个场景 最近在使用PHP重写一个使用JAVA写的项目,因为需要查看之前的项目,所以要在本地搭建一个Tomcat来跑JAVA的项目.搭建成功后,因为Tomcat监听的端口是8080,因此,访问的URL ...

  9. Apache、nginx配置的网站127.0.0.1可以正常访问,内外网的ip地址无法访问,谁的锅?

    最近做开发,发现一个比较尴尬的问题.因为我是一个web开发者,经常要用到Apache或者nginx等服务器软件,经过我测试发现,只要我打开了adsafe,我便不能通过ip地址访问我本地的网站了,比如我 ...

  10. nginx配置301重定向

    1. 简介 301重定向可以传递权重,相比其他重定向,只有301是最正式的,不会被搜索引擎判断为作弊 2. 栗子 savokiss.com 301到 savokiss.me 3. nginx默认配置方 ...

随机推荐

  1. python - 关于json和pickle两个序列化模块的区别

    传送门 https://stackoverflow.com/a/20980488/5955399 区别 json:用于字符串(unicode text)和python基本数据类型间进行转换.优点:跨语 ...

  2. 关于自学java的内容及感受

    这周自学了关于java输入的知识:java输入的方法与c++和c有些不同,他需要在开头加一个import连接系统的包,才能进行输入语句的编写. 自己编写了一点简单的输入的程序: package mod ...

  3. Java基础 -4.4

    For循环 for循环也是一种常规的使用结构 public static void main(String[] args) { for(定义循环的初始值;循环判断;修改循环条件) { 循环语句的执行; ...

  4. DuiLib中FlashDemo的例子经验杂粹1

    转载:https://www.jianshu.com/p/3e958ae9e5ab 最近用duilib做个东西,经常卡壳 ,而且以前学的现在又忘.现在觉得应该好好做笔记,以前老是觉得博客是很郑重的东西 ...

  5. 《SQL 进阶教程》 查找局部不一致的数据

    -- 从下面这张商品表里找出价格相等的商品的组合 select * from products p1LEFT JOIN products p2on p1.price = p2.price and p1 ...

  6. [转]Java——Servlet的配置和测试

    本文转自:http://blog.csdn.net/makefish/article/details/6904807 本文以一个实例介绍如何用Java开发Servlet. 主要内容有: 配置和验证To ...

  7. MyBatis 配置文件详解

    根元素<configuration>,子元素: <properties> <setttings> <typeAliases> <typeHandl ...

  8. XPath 和 CSS

    1.XPath XPath 即 XML 路径语言 (XML Path Language),他是一种用来确定 xml 文档中某部分位置的语言. xml文档(html 属于 xml)是由一系列节点构成的树 ...

  9. zabbix监控 -mysql数据库

    1.禁用安装防护[root@mysql213 ~]# vi /etc/selinux/config #关闭安装 SELINUX=disabled 2.授权zabbix监控账号 mysql -uroot ...

  10. Glove - sh demo.sh出错 Error: suffix or operands invalid for `vbroadcastss'

    Glove+Python,使用预训练模型,执行sh demo.sh 报错:Error: suffix or operands invalid for `vbroadcastss' 解决:修改Makef ...