当你的网站改版后,除了Web程序、数据库的升级,还需要为改版前后的URL设置对应的重定向规则,否则会使搜索引擎认为产生了死链,进而导致网页权重的降低。
- 新建一个
redirect.map
映射文件,放置在nginx的主配置目录下,主配置目录可以通过nginx -V
命令查看,即编译选项中的--prefix
参数,默认位置为/etc/nginx
。
- 为每一对URL填写映射规则,一行一对。其中映射规则如下:
例如,呉真的博客从原先的WordPress程序变更为Hexo程序,链接格式从原先的/%post-id%.html
变更为RESTful风格的/posts/%abbrlink%/
:
1 2
|
~^/149.html /posts/35dd3195/; ~^/241.html /posts/888cb050/;
|
- 在nginx中声明映射文件,编辑nginx主配置文件,默认为
/etc/nginx/nginx.conf
,在http
域中添加:
1 2 3 4 5 6 7 8 9
|
...... http { ...... map $request_uri $new { include /etc/nginx/redirect.map; } ...... } ......
|
- 为虚拟主机应用重定向规则,编辑虚拟主机配置文件,添加:
1 2 3 4 5 6 7
|
server { ...... if ($new) { return 301 https://你的域名$new; } ...... }
|
- 验证nginx配置文件是否正确
nginx -t
。
- 重启nginx服务
systemctl restart nginx
。