该指令一般用于对请求的客户端直接返回响应状态码。在该作用域内return后面的所有nginx配置都是无效的。 可以使用在server、location以及if配置中。 除了支持跟状态码,还可以跟字符串或者url链接。

直接返回状态码:

示例1:
server{
listen ;
server_name www.aming.com;
return ;
rewrite /(.*) /abc/$; //该行配置不会被执行。
} 示例2:
server {
..... if ($request_uri ~ "\.htpasswd|\.bak")
{
return ;
rewrite /(.*) /aaa.txt; //该行配置不会被执行。
}
//如果下面还有其他配置,会被执行。
.....
}

返回字符串:

示例3:
server{
listen ;
server_name www.aming.com;
return "hello";
}
说明:如果要想返回字符串,必须要加上状态码,否则会报错。
还可以支持json数据 示例4:
location ^~ /aming {
default_type application/json ;
return '{"name":"aming","id":"100"}';
} 也支持写一个变量 示例5:
location /test {
return "$host $request_uri";
}

返回URL :

示例6:
server{
listen ;
server_name www.aming.com;
return http://www.aminglinux.com/123.html;
rewrite /(.*) /abc/$; //该行配置不会被执行。
}
注意:return后面的url必须是以http://或者https://开头的。

实战示例:

背景:网站被黑了,凡是在百度点击到本网站的请求,全部都跳转到了一个赌博网站。
通过nginx解决:
if ($http_referer ~ 'baidu.com')
{
return "<html><script>window.location.href='//$host$request_uri';</script></html>";
} 如果写成:
return http://$host$request_uri; 在浏览器中会提示“重定向的次数过多”,因为会被反复跳转。

nginx return配置说明的更多相关文章

  1. Nginx return 关键字配置小技巧

    Nginx的return关键字属于HttpRewriteModule模块: 语法:return http状态码 默认值:无 上下文:server,location,if 该指令将结束执行直接返回htt ...

  2. 170816、nginx常用配置说明

    #user nobody; #开启进程数 <=CPU数  worker_processes 1; #错误日志保存位置 #error_log logs/error.log; #error_log ...

  3. Nginx ServerName 配置说明(转)

    Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了. 下面我就来说说server_name的使用吧: s ...

  4. Nginx ServerName 配置说明

    Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了.下面我就来说说server_name的使用吧:ser ...

  5. nginx if配置说明

    格式:if (条件判断) { 具体的rewrite规则 } 条件举例: 条件判断语句由Nginx内置变量.逻辑判断符号和目标字符串三部分组成. 其中,内置变量是Nginx固定的非自定义的变量,如,$r ...

  6. nginx相关配置说明

    基础: nginx配置文件主要分为六个区域:main section.events section.http section.sever section. location section.upstr ...

  7. nginx 常用配置说明

    一.location 配置 1.1 语法规则: location [=|~|~*|^~] /uri/ { … }= 开头表示精确匹配^~ 开头表示uri以某个常规字符串开头,理解为匹配 url路径即可 ...

  8. Nginx完整配置说明

    http://blog.csdn.net/marising/article/details/3979493 可以参考如下的完整例子 http://wiki.codemongers.com/NginxF ...

  9. nginx的配置说明

    #定义Nginx运行的用户和用户组user www www; #nginx进程数,建议设置为等于CPU总核心数.worker_processes 8; #全局错误日志定义类型,[ debug | in ...

随机推荐

  1. springmvc集成shiro后,session、request是否发生变化

    1. 疑问 我们在项目中使用了spring mvc作为MVC框架,shiro作为权限控制框架,在使用过程中慢慢地产生了下面几个疑惑,本篇文章将会带着疑问慢慢地解析shiro源码,从而解开心里面的那点小 ...

  2. 前端1-----HTML了解,内联标签(图片,超链接锚点,超链接邮箱)

    前端1-----HTML了解,内联标签(图片,超链接锚点,超链接邮箱) 一丶自定制B/S # -*-coding:utf-8-*- # Author:Ds import socket IP_PORT= ...

  3. vue项目的一个package.json

    {   "name": "projectName",   "version": "1.0.1",   "des ...

  4. 基于RSA的WEB前端密码加密方案

    受制于WEB页面源码的暴露,因此传统的对称加密方案以及加密密钥都将暴露在JS文件中,同样可以被解密. 目前比较好的解决方案是WEB页面全程或用户登录等关键环节使用HTTPS进行传输. 另外一种解决方案 ...

  5. 基于 Vue + Element 的响应式后台模板

    项目地址 https://github.com/caochangkui/vue-element-responsive-demo 主要功能 响应式侧边栏 面包屑导航(结合router.js) 路由动效 ...

  6. Odoo日历视图详解

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826148.html 一:日历视图定义 根元素为<calendar>. 主要的属性有:    ...

  7. win黑窗口命令

    rd 删除 文件夹, 语法: rd [/S] [/Q] [drive:]path 参数: drive 盘符 path 文件路径 /S   递归删除文件夹( 删除前, 要确认是否进行删除) /Q  关闭 ...

  8. Linux程序在Windows下编译运行_MinGW和Cygwin

    linux要在windows下编译运行,需要win下的gcc编译器,一般有两种:MinGW和Cygwin. 但某些函数在windows没有,即使使用两种工具也编译不过,需要查询windows函数并使用 ...

  9. Python xlrd模块读取Excel表中的数据

    1.xlrd库的安装 直接使用pip工具进行安装(当然也可以使用pycharmIDE进行安装,这里就不详述了) pip install xlrd 2.xlrd模块的一些常用命令 ①打开excel文件并 ...

  10. Linux操作系统-CentOS7启动流程和服务管理

    Linux操作系统-CentOS7启动流程和服务管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.systemd POST --> Boot Sequence --&g ...