Rewrite 需求作业

背景:现在我有一个网站,www.linux.com

www.linux.com访问主页面

friend.linux.com访问交友页面

blog.linux.com访问博客页面

download.linux.com访问博客页面

在nginx上部署三套代码

使用rewrite和return两种方式完成以下需求

1、通过www.linux.com/download访问到下载页面

2、通过www.linux.com/friends访问到交友页面

3、通过www.linux.com/blog访问到博客页面


部署网站

[root@web03 ~]# vim /etc/nginx/conf.d/ln.conf
server {
listen 80;
server_name www.linux.com; location / {
root /code/dist;
index index.html;
}
} server {
listen 80;
server_name friend.linux.com; location / {
root /code/friend;
index friend.html;
}
} server {
listen 80;
server_name blog.linux.com; location / {
root /code/blog;
index blog.html;
}
} server {
listen 80;
server_name download.linux.com; location / {
root /code/download;
index down.html;
}
} [root@web01 conf.d]# mkdir /code -p && cd /code
#上传前端代码文件rz
[root@web01 code]# unzip 下载页面.zip
[root@web01 code]# unzip 主页面.zip
[root@web01 code]# unzip 交友页面.zip
[root@web01 code]# unzip 博客页面.zip [root@web01 code]# nginx -sreload
[root@web01 code]# nginx

rewrite重定向

[root@web03 code]# vim /etc/nginx/conf.d/ln.conf
server {
listen 80;
server_name www.linux.com; location / {
root /code/dist;
index index.html;
} location ~* ^/(download|friend|blog) {
rewrite ^/(.*)$ http://$1.linux.com redirect;
}
} server {
listen 80;
server_name friend.linux.com; location / {
root /code/friend;
index friend.html;
}
} server {
listen 80;
server_name blog.linux.com; location / {
root /code/blog;
index blog.html;
}
} server {
listen 80;
server_name download.linux.com; location / {
root /code/download;
index down.html;
}
}

return重定向

[root@web03 code]# vim /etc/nginx/conf.d/ln.conf

server {
listen 80;
server_name www.linux.com; location / {
root /code/dist;
index index.html;
} server_name www.linux.com; location / {
root /code/dist;
index index.html;
} location ~* ^/(download|friend|blog) {
return 302 http://$request_uri.linux.com;
}
} server {
listen 80;
server_name friend.linux.com; location / {
root /code/friend;
index friend.html;
}
} server {
listen 80;
server_name blog.linux.com; location / {
root /code/blog;
index blog.html;
}
} server {
listen 80;
server_name download.linux.com; location / {
root /code/download;
index down.html;
}
} [root@web03 code]# nginx -sreload

rewrite和return的简单需求的更多相关文章

  1. 【04】Nginx:rewrite / if / return / set 和变量

    写在前面的话 我们前面已经谈了编译安装,基本语法,日志处理,location 匹配,root / alias 的不同效果.这里我们主要谈谈 rewrite(重写)功能,顺便说说 nginx 中自带的变 ...

  2. 由一个简单需求到Linux环境下的syslog、unix domain socket

    本文记录了因为一个简单的日志需求,继而对linux环境下syslog.rsyslog.unix domain socket的学习.本文关注使用层面,并不涉及rsyslog的实现原理,感兴趣的读者可以参 ...

  3. 一个简单需求:HashMap实现相同key存入数据后不被覆盖

    做一个积极的人 编码.改bug.提升自己 我有一个乐园,面向编程,春暖花开! 看似是一个简单的问题,其实里面包含很多的东西! 需求: 实现一个在HashMap中存入(任意类型)相同的key值后,key ...

  4. 从简单需求到OLAP的RANK系列函数

    同事问了一个非常简单的问题,怎么取出每个partition里面另外一个列的最小值? create table t1 (int c1, int c2);   假如按照c2分区,0-10,10-20,20 ...

  5. JavaScript return 最简单解释

    一.return 返回值 1)函数名字 +括号 :fun() ==> retrun 后面的值 2)所以函数的模范返回值是为未定义 3)return; 后面的任何代码都不会执行了 二.arguem ...

  6. Nginx 配置 location 以及 return、rewrite 和 try_files 指令

    正则表达式 Nginx 内置的全局变量 location 前缀字符串及优先级 示例 location 匹配原则 if 和 break 指令 if break return.rewrite 和 try_ ...

  7. 04 . Nginx的Rewrite重写

    Rewrite简介 # Rewrite对应URL Rewrite,即URL重写,就是把传入web的请求重定向到其他URL的过程. # 当运维遇到要重写情况时,往往是要程序员把重写规则写好后,发给你,你 ...

  8. 可惜Java中没有yield return

    项目中一个消息推送需求,推送的用户数几百万,用户清单很简单就是一个txt文件,是由hadoop计算出来的.格式大概如下: uid caller 123456 12345678901 789101 12 ...

  9. ASP.NET WEBAPI 简单CURD综合测试(asp.net MVC,json.net,sql基础存储过程和视图,sqlhelper,json解析)

    草图   真正的后端是不管前端是什么平台,用什么语言的,JSON格式的数据应该可以应对.用ASP.NET WEBAPI尝试做一个后端,实现最基本的CURD,业务逻辑和数据库操作都放在后端,前端只需要正 ...

随机推荐

  1. Python Serial 串口基本操作(收发数据)

    1.需要模块以及测试工具 模块名:pyserial 使用命令下载:python -m pip install pyserial 串口调试工具:sscom5.13.1.exe 2.导入模块 import ...

  2. 解决MySQL 8.0数据库出现乱码的问题

    1.在MySQL 8.0的安装目录下创建一个my.ini文件(保存为utf8格式),然后写入以下内容: [mysql] # 设置mysql客户端默认编码 default-character-set=u ...

  3. Android 源码结构分析

    源码版本:AOSP_7.1.1 硬件平台:Rockchip 由于工作要求,需要对rockchip平台的安卓系统进行剪裁.安卓源码比较庞大,会让人感到无从下手,对此,有必要了解一下源码的大致目录结构以及 ...

  4. C# 数据操作系列 - 3. ADO.NET 离线查询

    0. 前言 在上一篇中,我故意留下了查询的示范没讲.虽然说可以通过以下代码获取一个DataReader: IDataReader reader = command.ExecuteReader(); 然 ...

  5. C语言进阶_变量属性

    人们总说时间会改变一些,但实际上这一切还得你自己来. 一.概念详解 变量:计算机语言中储存计算结果,其值可以被修改.通过变量名来访问计算机中一段连续的内存空间. 属性:区别于同类事物的特征. C语言中 ...

  6. nginx源码安装方法

    nginx源码安装方法 安装方法如下 1.安装nginx必要的源码依赖软件包. yum -y install gcc gcc-c++ automake pcre pcre-devel zlib zli ...

  7. Java元注解@Retention规则

    @Retention是java当中的一个元注解,该元注解通常都是用于对软件的测试 1.适用方式:     @Retention(RetentionPolicy.RUNTIME)     @interf ...

  8. Python脚本:linux上将筛选的文件夹复制到另一个目录,保存目录结构以及文件和文件夹操作方法

    import os,shutil def newDir(dir_path): if not os.path.exists(dir_path): os.makedirs(dir_path) def co ...

  9. IP协议及其它的小弟 ,我保证没人会看的

    IP协议及其它的小弟 IP协议:127.0.0.1就一个32位的标识符.实际上: 类似这样的: 精神小伙慢慢看吧.我赌一包辣条你是不会认真看完的. IP协议的构成 地址解析协议 ARP 前面的叙述中我 ...

  10. quartz 定时任务调度管理器

    本项目使用的是spring-quartz 以下配置可以开启多个已知定时任务 <?xml version="1.0" encoding="UTF-8"?&g ...