重定向nginx 伪静态 重定向 包括域名、目录、文件等方法

域名重定向  时间:2021-01-23  阅读:()

nginx伪静态重定向包括域名、 目录、文件等方法在网站建设中需要网页重定向的情况很多如网页目录结构变动网页重命名、网页的扩展名改变、网站域名改变等。如果不做重定向用户的收藏和搜索引擎数据库中的旧地址只能让访客得到一个404错误信息页面访问流量白白丧失。不仅如此之前该页面的一切积累(比如PR值)就都白费了。

301重定向不仅能使页面实现自动跳转对于搜索引擎来说也可能可以传递PR值

1 、将多个域名指向同一web目录server_name www.php100.com php100.com;rewrite^/$/ redirect;

2、将不带www的域名301转向到带www的域名server_name www.php100.com php100.com;if ($host !="www.php100.com" ) {rewrite^/(.*)$http://www.php100.com/$1 permanent;

}nginx重定向规则详细介绍rewrite命令nginx的rewrite相当于apache的rewriterule(大多数情况下可以把原有apache的rewrite规则加上引号就可以直接使用)它可以用在server, location和IF条件判断块中,命令格式如下rewrite正则表达式替换目标flag标记flag标记可以用以下几种格式

last–基本上都用这个F lag。break–中止Rewirte不在继续匹配red irect–返回临时重定向的HTTP状态302permanent–返回永久重定向的HTTP状态301

例如下面这段设定nginx将某个目录下面的文件重定向到另一个目录,$2对应第二个括号(.*)中对应的字符串location/download/ {rewrite^(/download/.*)/m/(.*)\. .*$$1/nginx-rewrite/$2.gz break;

}nginx重定向的IF条件判断

在server和location两种情况下可以使用nginx的IF条件判断条件可以为以下几种

正则表达式

如

匹配判断

~为区分大小写匹配; !~为区分大小写不匹配

~*为不区分大小写匹配; !~为不区分大小写不匹配

例如下面设定nginx在用户使用ie的使用重定向到/nginx-ie目录下if ($http_user_agent~MSIE) {rewrite^(.*)$/nginx-ie/$1 break;

}

文件和目录判断

-f和!-f判断是否存在文件

-d和!-d判断是否存在目录

-e和!-e判断是否存在文件或目录

-x和!-x判断文件是否可执行

例如下面设定nginx在文件和目录不存在的时候重定向if (!-e$request_fi lename) {proxy_pass http://127.0.0.1/;

}return

返回http代码例如设置ng inx防盗链location~*\.(gif|jpg|png|swf|flv)${val id_referers none blocked http://www.php100.com/http://www.php100.cc/;if ($inval id_referer) {return 404;

}

}set

设置nginx变量

301重定向方法

并合并.有两种实现方法,第一种方法是判断nginx核心变量host(老版本是http_host)server{server_name www.php100.com php100.com;if ($host !='www.php 100.com) {rewrite^/(.*)$http://www.php100.com/$1 permanent;

}

. . .

}

第二种方法server{server_name php100.com;rewrite^/(.*)http://www.php100.com/$1 permanent;

}

测试了第一种方法ok这两种方法中 permanent是关键详细说明见nginx重定向规则说明。last–基本上都用这个F lag。break–中止Rewirte不在继续匹配redirect–返回临时重定向的HTTP状态302permanent–返回永久重定向的HTTP状态301

好了,现在可以检查结果

第二种方法没有测试成功. . .nginx rewrite伪静态配置参数详细说明(转)http://hi .baidu.com/hx10/blog/item/942a0ad784f3ffd0a144df94.htmlnginx rewrite伪静态配置参数和使用例子附正则使用说明正则表达式匹配其中

*~为区分大小写匹配

*~*为不区分大小写匹配

* !~和!~*分别为区分大小写不匹配及不区分大小写不匹配

文件及目录匹配其中

* -f和!-f用来判断是否存在文件

* -d和!-d用来判断是否存在目录

* -e和!-e用来判断是否存在文件或目录

* -x和!-x用来判断文件是否可执行flag标记有

* last相当于Apache里的[L]标记表示完成rewrite

*break终止匹配,不再匹配后面的规则

* red irect返回302临时重定向地址栏会显示跳转后的地址

*permanent返回301永久重定向地址栏会显示跳转后的地址一些可用的全局变量有可以用做条件判断(待补全)

$args

$content_length$content_type

$document_root$document_uri$host

$http_user_agent$http_cookie

$l imit_rate

$request_body_fi le$request_method$remote_addr

$remote_port

$remote_user

$request_fi lename$request_uri

$q uery_string

$scheme

$server_protocol$server_addr

$server_name

$server_port

$uri

结合QeePHP的例子if (!-d$request_fi lename) {rewrite

^/([a-z-A-Z]+)/([a-z-A-Z]+)/?(.*)$/index.php?namespace=user&control ler=$1&action=$2&$3 last;rewrite^/([a-z-A-Z]+)/?$/index.php?namespace=user&control ler=$1 last;break;

多目录转成参数abc.domian.com/sort/2=>abc.domian.com/index.php?act=sort&name=abc&id=2if ($host~* (.*)\.domain\.com) {set$sub_name$1 ;rewrite^/sort\/(\d+)\/?$/index.php?act=sort&cid=$sub_name&id=$1 last;

}

目录对换

/123456/xxxx->/xxxx?i d=123456rewrite^/(\d+)/(.+)/ /$2?id=$1 last;

例如下面设定nginx在用户使用ie的使用重定向到/nginx-ie目录下if ($http_user_agent~MSIE) {rewrite^(.*)$/nginx-ie/$1 break;

}

目录自动加“/”if (-d$request_fi lename){rewrite^/(.*)([^/])$http://$host/$1$2/permanent;}

禁止htaccesslocation~/\.ht{denyal l ;

}

禁止多个目录location~^/(cron|templates)/ {denyal l ;break;

}

禁止以/data开头的文件

可以禁止/data/下多级目录下. log.txt等请求;location~^/data{denyal l ;

}

禁止单个目录

不能禁止. l o g.txt能请求location/searchword/cron/{denyal l ;

}

禁止单个文件location~/data/sql/data.sql {denyal l ;

}

给favicon. ico和robots.txt设置过期时间;

这里为favicon. ico为99天,robots.txt为7天并不记录404错误日志location~(favicon. ico) {log_not_found off;expires 99d;break;

}location~(robots.txt) {log_not_found off;expires 7d;break;

}

享有云:美国BGP云服务器低至20元/月起,首月打折;香港2核2G2M仅50元/月起

享有云怎么样?享有云是一家新的国内云服务器商家,目前提供国内、香港及海外地区的云服务器,拥有多线路如:BGP线路、CN2线路、高防等云服务器,并且提供稳定、安全、弹性、高性能的云端计算服务,实时满足您的多样性业务需求。目前,美国bgp云服务器,5M带宽,低至20元/月起,270元/年起,首月打折;香港2核2G2M仅50元/月起,450元/年起!点击进入:享有云官方网站地址享有云优惠活动:一、美国B...

速云:深圳独立服务器,新品上线,深港mpls免费体验,多重活动!

速云怎么样?速云是一家国人商家。速云商家主要提供广州移动、深圳移动、广州茂名联通、香港HKT等VDS和独立服务器。目前,速云推出深圳独服优惠活动,机房为深圳移动机房,购买深圳服务器可享受5折优惠,目前独立服务器还支持申请免费试用,需要提交工单开通免费体验试用,次月可享受永久8折优惠,也是需工单申请哦!点击进入:速云官方网站地址活动期限至 2021年7月22日速云云服务器优惠活动:活动1:新购首月可...

onevps:新增(支付宝+中文网站),香港/新加坡/日本等9机房,1Gbps带宽,不限流量,仅需$4/月

onevps最新消息,为了更好服务中国区用户:1、网站支付方式新增了支付宝,即将增加微信;原信用卡、PayPal方式不变;(2)可以切换简体中文版网站,在网站顶部右上角找到那个米字旗,下拉可以换中国简体版本。VPS可选机房有:中国(香港)、新加坡、日本(东京)、美国(纽约、洛杉矶)、英国(伦敦)、荷兰(阿姆斯特丹)、瑞士(苏黎世)、德国(法兰克福)、澳大利亚(悉尼)。不管你的客户在亚太区域、美洲区...

域名重定向为你推荐
软银收购arm如果华为麒麟得不到ARMv9构架升级,性能势必会落后别人,该怎么办?美团月付怎么关闭美团月账单消费记录怎撤除啊?朗逸和速腾哪个好朗逸和新速腾哪个性能更好点?播放器哪个好哪个播放器比较好用行车记录仪哪个好行车记录仪哪种好用?云盘哪个好云盘有哪些,哪个云盘好空间登录器qq空间登录不了怎么办辽宁联通网上营业厅辽宁联通怎样用发短信方式查询话费和流量什么叫dns服务器DNS服务器是什么东东?360云盘共享群360网盘怎样进共享群?
日本软银 搬瓦工官网 地址大全 绍兴高防 本网站服务器在美国 idc资讯 腾讯实名认证中心 如何用qq邮箱发邮件 息壤代理 东莞服务器 国外ip加速器 中国电信测速器 智能dns解析 国外在线代理服务器 服务器论坛 512内存 腾讯云平台 空间排行榜 发证机构 alertpay 更多