nginx 给目录加斜杠 url地址补全最后的/(反斜杠) 给详情页自动加.html

 

再次探讨关于自定义URL尾部加斜杠“/”的问题。

我的网站后台添加页面自定义设置的url,后面都没有添加斜杠“/”,因为程序原因,也不能添加斜杠“/”。
我在htaccess中做了301重定向,打开网址自动在后面添加“/”。
结果百度把有斜杠和没有斜杠的两个url全部收录。
这样必会分散权重,不知道各位朋友是否有碰到这样的问题。
请问如何解决这个问题?

 

比如我的网站       www.youhua.com/didi   是个列表页,那么我想访问输入www.youhua.com/didi 自动跳转到www.youhua.com/didi/

这样不会被分散权重,那么就得需要nginx做301重定向了

 

具体写法如下

location ~* ^/[a-z]+$ {
        rewrite ^/(.*)([^/])$ $scheme://$host/$1$2/ permanent;
    }

^/[a-z]+$  就是匹配英文字母的目录,这样本来  www.youhua.com/didi/ 不会被301,然而www.youhua.com/didi会301到www.youhua.com/didi/

 

还有更复杂一些的写法,不过都是一些正则匹配的规则

比如我想 www.youhua.com/user-55  到  www.youhua.com/user-55/  那么写法如下:

location ~* ^/user-[0-9]+$ {
       #  return 302   https://www.baidu.com;
rewrite ^/(.*)([^/])$ $scheme://$host/$1$2/ permanent;
    }

 

再就是没有html的详情页自动跳转到带有html的页面

www.youhua.com/user-10/article-188  ====>  www.youhua.com/user-10/article-188.html

location ~* ^/user-[0-9]+/article-[0-9]+$ {
         rewrite ^/(.*)([^/])$ $scheme://$host/$1$2.html permanent;
    }

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值