通常在通过php判断一个不存在的资源(比如category、product不存在)时需要通过header返回一个404的状态并显示相应的404页面,在之前的服务器上写法如下:
代码如下 | 复制代码 |
header('HTTP/1.1 404 Not Found'); header('Status: 404 Not Found'); require('404.php'); exit(); |
但是换了新的服务器发现页面上出现一些字母+数字的乱码,检查后发现当前server的请求页面时通信协议的版本和代码中的HTTP/1.1不一致,要想知道当前server的通信协议的名称和版本可以用$_SERVER['SERVER_PROTOCOL'] ,经测试我server的http版本是1.0,所以代码要修改为:
代码如下 | 复制代码 |
header('HTTP/1.0 404 Not Found'); header('Status: 404 Not Found'); require('error.php'); exit(); |
时间: 2024-10-29 06:39:30