Nginx rewrite 规则 与 proxy_pass 实现

https://www.cnblogs.com/jicki/p/5546916.html

Nginx rewrite 规则  与 proxy_pass 实现

 
 
------------------------------------------------------------------------------------------------------
~         大小写敏感匹配
~*        大小写不敏感匹配
!~        大小写敏感不匹配
!~*       大小写不敏感不匹配
------------------------------------------------------------------------------------------------------
 
 
------------------------------------------------------------------------------------------------------
-f        检测文件存在
-d        检测目录存在
-e        检测文件,目录或者符号链接存在
-x        检测文件可执行
------------------------------------------------------------------------------------------------------
 
 
------------------------------------------------------------------------------------------------------
break     –  停止rewrite检测,也就是说当含有break flag的rewrite语句被执行时,该语句就是rewrite的最终结果。
last      –  停止rewrite检测,但是跟break有本质的不同,last的语句不一定是最终结果。
redirect  –  返回302临时重定向,一般用于重定向到完整的URL(包含http:部分)
permanent –  返回301永久重定向,一般用于重定向到完整的URL(包含http:部分)
------------------------------------------------------------------------------------------------------
 
 
一些实际例子
 
 
 
if($http_host = www.qq.com)                  
{
 rewrite (.*) http://www.baidu.com$1 permanent;
 }
 

// 如果请求的url是 www.qq.com  则永久重定向到 www.baidu.com

 
 
 
 
 
 
rewrite ^/([0-9]+).html$ /user/id=$1 last;
 
 

// 如果 www.qq.com/user/id=123456   则显示为 www.qq.com/123456.html

 
 
 
 
 
 location ^~ /qq/
 {
    proxy_pass http://www.qq.com/;
 }
 

//如果请求目录为 /qq/  则代理到 www.qq.com     如果www.qq.com/qq/  则代理到 www.qq.com

 
 
 
 
location ~ ^/data
{
 deny all;
}
 

// 禁止 data 目录下所有文件的请求

 
 
 
 
 
 
if (!-f $request_filename)
{
 break;
 proxy_pass  http://www.qq.com;
}
 

// 如果请求的文件名不存在 则代理到 www.qq.com

 
 
 
 
 
 
if (-d $request_filename)
{
rewrite ^/(.*)([^/])$ http://$host/$1$2/ permanent;
}
 

// 如果请求的目录存在  则自动增加 / 符号

禁止访问 /svn/ git  cvs 这几个目录...防止 svn 文件下载··源码泄漏

location ~ .*\.(svn|git|cvs)

{

deny all;

}

[转帖]Nginx rewrite 规则 与 proxy_pass 实现的更多相关文章

  1. Nginx rewrite 规则 与 proxy_pass 实现

    Nginx rewrite 规则  与 proxy_pass 实现     -------------------------------------------------------------- ...

  2. Nginx系列二:(Nginx Rewrite 规则、Nginx 防盗链、Nginx 动静分离、Nginx+keepalived 实现高可用)

    一.Nginx Rewrite 规则 1. Nginx rewrite规则 Rewrite规则含义就是某个URL重写成特定的URL(类似于Redirect),从某种意义上说为了美观或者对搜索引擎友好, ...

  3. [转】 nginx rewrite规则

    http://www.cnblogs.com/cgli/archive/2011/05/16/2047920.html 最近在VPS上尝试配置安装一个网站,VPS安装了LNMP(Linux+Nginx ...

  4. Nginx Rewrite规则记录

    Rewrite 是一种服务器的重写脉冲技术,它可以使得服务器可以支持 URL 重写,是一种最新流行的服务器技术.它还可以实现限制特定IP访问网站的功能.很多情况下,某个 IP 的访问很容易造成 CPU ...

  5. Nginx Rewrite规则详解

    Rewrite规则含义就是某个URL重写成特定的URL,从某种意义上说为了美观或者对搜索引擎友好,提高收录量及排名等. Rewrite规则的最后一项参数为flag标记,支持的flag标记主要有以下几种 ...

  6. Nginx Rewrite规则

    location = / { # 精确匹配 / ,主机名后面不能带任何字符串 [ configuration A ] } location / { # 因为所有的地址都以 / 开头,所以这条规则将匹配 ...

  7. [转帖]Nginx rewrite模块深入浅出详解

    Nginx rewrite模块深入浅出详解 https://www.cnblogs.com/beyang/p/7832460.html rewrite模块(ngx_http_rewrite_modul ...

  8. nginx rewrite规则实例讲解

    一.正则表达式匹配,其中: * ~ 为区分大小写匹配* ~* 为不区分大小写匹配* !~和!~*分别为区分大小写不匹配及不区分大小写不匹配 二.文件及目录匹配,其中:* -f和!-f用来判断是否存在文 ...

  9. codeigniter nginx rewrite规则配置【转】

    转自:http://www.nginx.cn/1134.html nginx如何配置才能支持codeigniter ? 1. codeigniter的url美化去掉index.php   1 2 3 ...

随机推荐

  1. ICEM-带把圆环

    原视频下载地址:https://pan.baidu.com/s/1pKSXyR5 密码: dynm

  2. call 和 apply 方法

    1:每个函数都包含两个非继承而来的方法:call(),apply(). 2:call方法和apply方法作用是一样的. 下边是call的使用例子: window.color = 'red'; docu ...

  3. localstorage 必知必会

    做项目中发现localstorage在不同的域名下是不能相互访问的,于是找到了以下这篇文章,对localStorage做一个深入的了解 HTML API localstorage在浏览器的API有两个 ...

  4. 康哲20191114-1 每周例行报告kz404

    此作业的要求参见https://edu.cnblogs.com/campus/nenu/2019fall/homework/10004 本周PSP  本周进度条  本周折线图  饼状图

  5. centos7磁盘分区、格式化、挂载

    1.分区:a. 查看磁盘分区表: # fdisk -l b. 查看指定磁盘分区表: # fdisk -l /dev/sdb c. 分区命令: fdisk /dev/sdb 常用命令: n:创建新分区 ...

  6. Barman 安装

    Barman需要用到psql客户端,所以需要在Barman服务器安装psql数据库 1 linux操作系统环境准备: python版本:2.6或2.7 yum -y install epel-rele ...

  7. Tomcat 管理监控工具

    本文链接:https://blog.csdn.net/weixin_34364071/article/details/86753232 专注于Java领域优质技术号,欢迎关注 原创: 侯树成 Tomc ...

  8. Oracle数据库安装以及使用脚本创建数据库授权

    安装数据库 事实上Oracle安装 1.安装准备 Oracle的安装包下载以后是两个压缩包,同时选中两个压缩包右击进行解压 2.解压完成如下图所示 3.双击 setup.exe 文件进行安装,会弹出以 ...

  9. leetcode 50. Pow(x, n) 、372. Super Pow

    50. Pow(x, n) 372. Super Pow https://www.cnblogs.com/grandyang/p/5651982.html https://www.jianshu.co ...

  10. sql 中 '' 与 null 的区别

    SELECT * from t_company where content = '' SELECT * from t_company where content is null update t_co ...