关注小众语言、AI技术,记录、分享技术点滴!

0%

php利用header函数实现文件下载时直接提示保存

下面是网上常用的方法

1
2
3
4
5
if (isset($link)) {
Header("HTTP/1.1 303 See Other");
Header("Location: $link");
exit;
}

注:
http响应码
http响应码的分布从1xx ~ 5xx, 比较熟悉的有200(OK), 500 (Internal Server Error), 503 (Service Unavailable)等。
3xx系列的响应码表示“重定向” (Redirection), 这里特别分析303 (See Other),303的rfc2616说明有几点值得我们注意:
服务器在返回303的同时,应该(SHOULD)返回一个不同的URI,并放到Location字段中。
客户端收到303后,可以使用这个URI获取新的资源(必须使用GET获取新资源)
303的响应不能被缓存,但是Get到的新资源是可以被缓存的