nginx-重写URL尾部斜杠

2017/01/01 前置机

百度收录率低,提升收录率,同时合并url权重到带/的url上面 301跳转,目的是把不带/的跳转到带/的上面。 例如:http://bigbug.top/abc 跳转到http://bigbug.top/abc/

1、 在URL结尾添加斜杠

在虚拟主机中这么添加一条改写规则:

rewrite ^(.*[^/])$ $1/ permanent;

例如:

server {
    listen 80;
    server_name bigbug.top;
    rewrite ^(.*[^/])$ $1/ permanent;
    }

排除以*.html结尾文件,其他的都301结尾带斜杠

location /ask {
    rewrite ^(.*[^/*.html])$ $1/ permanent;
    proxy_pass http://10.162.195.115:8099/ask;
    }

排除以.html 和 .do的做301

rewrite ^(.*[^/*.html][^/*.do])$ $1/ permanent

2、 删除URL结尾的斜杠

在虚拟主机中这么添加一条改写规则:

rewrite ^/(.*)/$ /$1 permanent;

例如:

server {
    listen 80;
    server_name bigbug.top;
    rewrite ^/(.*)/$ /$1 permanent;
    } ### 不过建议删除URL结尾的斜杠,会混乱搜索引擎的。 ###

Search

    Table of Contents