Nginx详解十八:Nginx深度学习篇之Rewrite规则

时间:2022-09-02 07:25:32

Rewrite规则可以实现对url的重写,以及重定向

作用场景:

1、URL访问跳转,支持开发设计,如页面跳转,兼容性支持,展示效果等

2、SEO优化

3、维护:后台维护、流量转发等

4、安全

配置语法

配置语法:rewrite regex replacement [flag];
默认状态:-
配置方法:server、location、if
如:rewrite ^(.*)$ /pages/maintain.html break;

常用的正则表达式

Nginx详解十八:Nginx深度学习篇之Rewrite规则

在linux下,可以用pcretest来测试

Nginx详解十八:Nginx深度学习篇之Rewrite规则

flag:

Nginx详解十八:Nginx深度学习篇之Rewrite规则

Nginx详解十八:Nginx深度学习篇之Rewrite规则

server {
listen 80 default_server;
server_name jeson.t.imooc.io;

access_log /var/log/nginx/log/host.access.log main;

root /opt/app/code;
location ~ ^/break {
rewrite ^/break /test/ break;
}

location ~ ^/last {
rewrite ^/last /test/ last;
}

location /test/ {
default_type application/json;
return 200 '{"status":"success"}';
}
}

Nginx详解十八:Nginx深度学习篇之Rewrite规则

检查配置语法并重载

nginx -tc /etc/nginx/nginx.conf 
nginx -s reload -c /etc/nginx/nginx.conf

Nginx详解十八:Nginx深度学习篇之Rewrite规则

Nginx详解十八:Nginx深度学习篇之Rewrite规则

Nginx详解十八:Nginx深度学习篇之Rewrite规则

Nginx详解十八:Nginx深度学习篇之Rewrite规则

server {
listen 80 default_server;
server_name jeson.t.imooc.io;

access_log /var/log/nginx/log/host.access.log main;

root /opt/app/code;
location ~ ^/break {
rewrite ^/break /test/ break;
}

location ~ ^/last {
rewrite ^/last /test/ last;
#rewrite ^/last /test/ redirect;
}

location ~ ^/imooc {
rewrite ^/imooc http://www.imooc.com/ permanent;
#rewrite ^/imooc http://www.imooc.com/ redirect;
}

location /test/ {
default_type application/json;
return 200 '{"status":"success"}';
}
}

Nginx详解十八:Nginx深度学习篇之Rewrite规则

检查并重启

Nginx详解十八:Nginx深度学习篇之Rewrite规则

Nginx详解十八:Nginx深度学习篇之Rewrite规则

Rewrite规则优先级

执行server块的rewrite > 执行location匹配 > 执行选定的location中的rewrite

Rewrite规则书写

RewriteCode %{HTTP_HOST} nginx.org

RewriteRule (.*)

Nginx详解十八:Nginx深度学习篇之Rewrite规则的更多相关文章

  1. Nginx详解十:Nginx场景实践篇之Nginx静态资源场景配置

    一.静态资源WEB服务 1.静态资源类型:非服务器动态运行生成的文件 2.静态资源服务场景-CDN 假设静态资源存储中心在云南,用户在北京去请求一个文件,那么就会造成一个传输的延时,而如果Nginx同 ...

  2. Nginx详解十七:Nginx深度学习篇之动静分离

    动静分离:通过中间件将动态请求和静态请求分离 作用:分离资源,减少不必要的请求消耗,减少请求延时 动静分离还有个好处就是,当动态请求的后端服务出问题了,只会影响动态的部分,静态资源不影响,照样加载 如 ...

  3. Nginx详解十六:Nginx场景实践篇之缓存服务

    缓存类型: 服务端缓存 代理缓存 客户端缓存 Nginx代理缓存 配置语法 使用之前需要先定义一个proxy_cache_path配置语法:proxy_cache_path path [levels= ...

  4. Nginx详解十五:Nginx场景实践篇之负载均衡

    负载均衡 GSLB(全局的负载均衡,往往是以国家为单位,或者以省为单位) SLB Nginx就是一个典型的SLB模型, 分为四层负载均衡和七层负载均衡 七层负载均衡可以处理应用层,如thhp信息,Ng ...

  5. Nginx详解十四:Nginx场景实践篇之代理服务

    代理的作用 Nginx代理 正向代理 反向代理 正向代理和反向代理的区别:代理的对象不一样 正向代理代理的对象是客户端,反向代理代理的对象是服务端 反向代理: 配置语法:proxy_pass URL; ...

  6. 学习《深度学习与计算机视觉算法原理框架应用》《大数据架构详解从数据获取到深度学习》PDF代码

    <深度学习与计算机视觉 算法原理.框架应用>全书共13章,分为2篇,第1篇基础知识,第2篇实例精讲.用通俗易懂的文字表达公式背后的原理,实例部分提供了一些工具,很实用. <大数据架构 ...

  7. Nginx详解十三:Nginx场景实践篇之防盗链

    防盗链: 目的:防止资源被盗用 防盗链设置思路 首要方式:区别哪些请求是非正常的用户请求 基于http_refer防盗链配置模块(判断refer(上一步的链接)信息是否为允许访问的网站) 配置语法:v ...

  8. Nginx详解十一:Nginx场景实践篇之Nginx缓存

    浏览器缓存: HTTP协议定义的缓存机制(如:Expires.Cache-control等) 当浏览器第一次请求的时候,浏览器是没有缓存的 第二次请求开始就有缓存了 校验过期机制 配置语法-expir ...

  9. Nginx详解九:Nginx基础篇之Nginx的访问控制

    基于IP的访问控制:http_access_module 不允许指定网段的用户访问:配置语法:deny address | CIDR | unix: | all;默认状态:-配置方法:http.ser ...

随机推荐

  1. Ceph与OpenStack的Nova相结合

    https://ervikrant06.wordpress.com/2015/10/24/how-to-configure-ceph-as-nova-compute-backend/ 在Ceph的ad ...

  2. Java for LeetCode 140 Word Break II

    Given a string s and a dictionary of words dict, add spaces in s to construct a sentence where each ...

  3. OmniThreadLibrary 3&period;03b发布了

    虽然版本号升的不大,但这也是一个重要的版本.作者发现了一个长期存在的bug,就是建立一个线程,如果不指定线程的优先级则默认设置为idle.(正确的应是Normal) 看一下具体的改动情况: 新功能: ...

  4. Android学习之 sildingmenu

    仿SlidingMenu Android抽屉菜单效果drawer menu - appdoll.com Android "多方向"抽屉 - 开源中国社区 自定义Android滑动式 ...

  5. for语句及switch case用法示例

    for(初始条件:循环条件:状态改变){   循环体:执行代码} 示例一: 示例二: 示例三: 示例四: 示例五: 示例六: 示例七: switch case: 示例一: 示例二: 示例三:

  6. FMS中实现pull stream

    //程序启动时执行 application.onAppStart = function() { this.myNC= new NetConnection(); this.myNC.onStatus = ...

  7. 分布式计算框架Gearman原理详解

    什么是Gearman? Gearman提供了一个通用的应用程序框架,用于将工作转移到更适合于工作的其他机器或流程.它允许你并行工作,负载平衡处理,并在语言间调用函数.它可用于从高可用性网站到传输数据库 ...

  8. 一次Linux服务器被入侵和删除木马程序的经历

    转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://wzlinux.blog.51cto.com/8021085/1740113 一.背景 晚上看到有台服 ...

  9. What and How in an Application

    Basically, two concerntrations: 1. What: business docs and prototype design 2. How: technical docs a ...

  10. android 4&period;0主线程訪问网络问题

    在4.0下面,在主线程中訪问网络,假设请求超过6s的话,就会报ANR,那么这就会带来一个问题,假设网络慢或者请求的数据过大时,界面会卡顿,造成界面灵敏性非常差,因此网络请求一般不能放在主线程中操作,g ...