Nginx相关知识点

取腰间明珠弹山雀

什么是301永久重定向?

301跳转也叫301重定向,也叫301跳转,也叫301永久重定向,是网站建设过程中的一个功能。一般用于2个域名同时指向同一个网站。一般来说,利用跳转,对网站的排名没有影响,但不会转移全部权重,只能说把损失降到最低。

什么是302临时重定向?

302跳转就网址重定向的一种,它区别于301跳转,301是网址永久重定向,302则是网址的临时定向。302转向或者302重定向(302 redirect)指的是当浏览器要求一个网页的时候,主机所返回的状态码。302状态码的意义是暂时转向到另外一个网址。

所以当我们在做页面跳转的时分必定要正视,利用的不能够是302重定向,而是301重定向。

server {
listen 80;
server_name www.shuke.com;
rewrite ^/(.*) http://shuke.edu.com permanent; # 301
access_log off;
}

server {
listen 80;
server_name www.shuke.com;
rewrite ^/(.*) http://shuke.edu.com redirect; # 302
access_log off;
}

last - 基本使用这个flag
break - 使用这个flag,禁止rewrit,不在继续匹配
redirect - 返回临时重定向的HTTP状态码302
permanent - 返回永久重定向的HTTP状态码301

NGINX的重定向用到了NGINX的HttpRewriteModule

NGINX的重定向IF条件判断
在server和location中可以使用NGINX的IF条件判断,条件可以为以下几种:
正则表达式

  • 为区分大小写匹配 !为区分大小写不匹配
  • *为不区分大小写匹配 !为不区分大小写不匹配

if ($http_user_agent ~ MSIE) {
rewrite ^(.*)$ /nginx-ie/$1 break;
}

条件和目录判断
-f和!-f为判断文件是否存在
-d和!-d为判断是否存在文件
-e和!-e为判断是否存在文件或目录
-x和!-x为判断是否有执行权限

判断文件或目录不存在的时候进行重定向操作
if (!-e $request_filename) {
proxy_pass http://127.0.0.1;
}
return

设置NGINX防盗链
location ~* .(gif|jpg|png|swf|flv) {
valid_referers none blocked www.test.com www.shuke01.com;
if ($valiad_referers) {
return 404;
}
}

NGINX 常见负载均衡

  • 轮训 默认模式
  • weight 权重方式
  • ip_hash 依据IP分配方式
  • least_conn 最少连接数
  • fair(第三方) 响应时间方式
  • url_hash(第三方) 依据URL分配方式

本文标题:Nginx相关知识点

文章作者:shuke

发布时间:2021年11月30日 - 14:11

最后更新:2021年11月30日 - 15:11

原始链接:https://shuke163.github.io/2021/11/30/Nginx-301-302/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

-------------本文结束感谢您的阅读-------------

本文标题:Nginx相关知识点

文章作者:shuke

发布时间:2021年11月30日 - 14:11

最后更新:2021年11月30日 - 15:11

原始链接:https://shuke163.github.io/2021/11/30/Nginx-301-302/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

0%