• nginx之"/"结尾


    一、配置127.0.0.1:8081的tomcat下的文件:

    1、ROOT/a.html : this is ROOT page

    2、ROOT/testa.html : nihao

    3、ROOT/index.html : this is ROOT index page

    4、test/a.html  :  this is test page

    5、test/index.html  :  this is test index page

     

    二、nginx 的server_name配置如下:

    1、proxy_pass的URI不带路径:

    server {

            listen 80;

            server_name www.test.com;

            location /nihao {            

                proxy_pass http://127.0.0.1:8081;

                index  index.html;

            } 

                    #location 后无/   proxy_pass 后无/  代理到 http://127.0.0.1:8081/nihao/a.html

                    #curl http://www.test.com/nihao/a.html    因hello目录不存在

                 #The requested resource is not available

     

            location /test {

                proxy_pass http://127.0.0.1:8081;

                index  index.html;

            }

                    #location 后无/   proxy_pass 后无/  代理到 http://127.0.0.1:8081/test/a.html

                  #curl http://www.test.com/test/a.html

                  #this is test page

     

            location /hello/ {

                proxy_pass http://127.0.0.1:8081;

                index  index.html;

            }

                    #location 后有/   proxy_pass 后无/  代理到 http://127.0.0.1:8081/hello/a.html

                    #curl http://www.test.com/hello/     因hello目录不存在

                 #The requested resource is not available

            location /test/ {

                proxy_pass http://127.0.0.1:8081;

                index  index.html;

            }

                   #location 后有/   proxy_pass 后无/  代理到 http://127.0.0.1:8081/test/a.html

                   #curl http://www.test.com/test/

                #this is test index page

    }

    server {

            listen 80;

            server_name www.test1.com;

            location /nihao {

                proxy_pass http://127.0.0.1:8081/;

                index  index.html;

            }

                  #location 后无/   proxy_pass 后有/  代理到 http://127.0.0.1:8081/a.html

                  #curl http://www.test1.com/nihao/a.html

                #this is ROOT page

     

            location /test {

                proxy_pass http://127.0.0.1:8081/;

                index  index.html;

            }

                #location 后无/   proxy_pass 后有/  代理到 http://127.0.0.1:8081/a.html   

                 #curl http://www.test1.com/test/a.html

               #this is ROOT page

     

            location /hello/ {

                proxy_pass http://127.0.0.1:8081/;

                index  index.html;

            }

                #location 后有/   proxy_pass 后有/  代理到 http://127.0.0.1:8081/index.html

                #curl http://www.test1.com/hello/

              #this is ROOT index page

     

            location /test/ {

                proxy_pass http://127.0.0.1:8081/;

                index  index.html;

            }

                #location 后有/   proxy_pass 后有/  代理到 http://127.0.0.1:8081/index.html

               #curl http://www.test1.com/test/

             #this is ROOT index page

    }

     

    2、proxy_pass的URI带路径:

    server {

            listen 80;

            server_name www.test.com;

            location /nihao {

                proxy_pass http://127.0.0.1:8081/test;

                index  index.html;

            }

                    #location 后无/   proxy_pass 后无/  代理到 http://127.0.0.1:8081/test/a.html

                 #curl http://www.test.com/nihao/a.html

                 #this is test page

                 #curl http://www.test.com/nihao

                 #this is test index page

     

            location /test {

                proxy_pass http://127.0.0.1:8081/test;

                index  index.html;

            }

                   #location 后无/   proxy_pass 后无/  代理到 http://127.0.0.1:8081/test//

                 #curl http://www.test.com/test  重定向为:http://www.test.com/test//

                 #指向此网址的请求无限循环重定向

     

            location /hello/ {

                proxy_pass http://127.0.0.1:8081/test;

                index  index.html;

            }

                   #location 后有/   proxy_pass 后无/  代理到 http://127.0.0.1:8081/testa.html

                 #curl http://www.test.com/hello/a.html

                 #nihao

                 #curl http://www.test.com/hello/   重定向为:http://www.test.com/hello//

                 #指向此网址的请求无限循环重定向

     

            location /test/ {

                proxy_pass http://127.0.0.1:8081/test;

                index  index.html;

            }

                   #location 后有/   proxy_pass 后无/  代理到 http://127.0.0.1:8081/testa.html

                 #curl http://www.test.com/test/a.html

                 #nihao

                 #curl http://www.test.com/test/  重定向为:http://www.test.com/test//

                 #指向此网址的请求无限循环重定向

    }

    server {

            listen 80;

            server_name www.test1.com;

            location /nihao {

                proxy_pass http://127.0.0.1:8081/test/;

                index  index.html;

            }

                   #location 后无/   proxy_pass 后有/  代理到 http://127.0.0.1:8081/test/a.html

                 #curl http://www.test1.com/nihao

                 #this is test index page

                 #curl http://www.test1.com/nihao/a.html

                 #this is test page

     

            location /test {

                proxy_pass http://127.0.0.1:8081/test/;

                index  index.html;

            }

                   #location 后无/   proxy_pass 后有/  代理到 http://127.0.0.1:8081/test/index.html

                 #curl http://www.test1.com/test

                 #this is test index page

     

            location /hello/ {

                proxy_pass http://127.0.0.1:8081/test/;

                index  index.html;

            }

                   #location 后有/   proxy_pass 后有/  代理到 http://127.0.0.1:8081/test/a.html

                 #curl http://www.test1.com/hello

                 #this is test index page

                 #curl http://www.test1.com/hello/a.html

                 #this is test page

            location /test/ {

                proxy_pass http://127.0.0.1:8081/test/;

                index  index.html;

            }

                    #location 后有/   proxy_pass 后有/  代理到 http://127.0.0.1:8081/test/a.html

                  #curl http://www.test1.com/test/a.html

                  #this is test page

    }

     

    三、总结:

    nginx中配置proxy_pass代理转发时,如果在proxy_pass后面的url/,表示绝对根路径;如果没有/,表示相对路径,把匹配的路径部分也给代理走。

    proxy_pass的URI带路径中如果location的不带/,最好proxy_pass也不带;

  • 相关阅读:
    快逸报表调用存储过程(SqlServer)
    一个睡五分钟等于六个钟头的方法 (转)
    Windows Live Writer For Windows Server 2003
    设计模式装饰者模式
    SqlServerCUBE
    Android 70道面试题汇总不再愁面试
    说服力:让你的PPT会说话
    亮剑Java项目开发案例导航
    初入社会必知的88个潜规则
    android UI进阶之仿iphone的tab效果2
  • 原文地址:https://www.cnblogs.com/wushank/p/11730557.html
Copyright © 2020-2023  润新知