admin 管理员组

文章数量: 1184232

redirect

redirect-重定向

资源更换地址后,为保证原地址的有效性,而对原url做的302/301重定向处理。
302:暂时性转移,每次访问都会请求到服务端判断
301:永久性转移,缓存后访问不会请求到服务端,而是直接跳转(谨慎使用)

301与302对SEO的不同影响

实例

node服务:server.js

const http = require('http')http.createServer(function (request, response) {console.log('request come', request.url)if (request.url === '/') {response.writeHead(302, {  // or 301'Location': '/new'})response.end()}if (request.url === '/new') {response.writeHead(200, {'Content-Type': 'text/html',})response.end('<div>this is content</div>')}
}).listen(8888)console.log('server listening on 8888')

访问http://loacalhost:8888,在network中可以观察到,localhost的请求返回状态为302,返回头中增加了Location:/new,声明了重定向后的接口名,浏览器接收到后再访问返回的新接口,完成重定向。
而当返回码为301时,浏览器会做缓存,即使服务端内容修改了,浏览器还是会调用上次301的接口数据,除非用户主动清除浏览器缓存,所以对301请谨慎使用。

本文标签: redirect