【发布时间】:2013-04-14 17:05:49
【问题描述】:
我有以下代码,我在本地主机上运行并且运行良好:
$objWriter = new PHPExcel_Writer_Excel2007($excel);
header('Content-type: application/vnd.ms-excel');
header('Content-Disposition: attachment; filename="'.$excel_file.'"');
$objWriter->save('php://output');
在另一台主机上上传相同的代码会返回 404“找不到文件”错误。
知道为什么吗?
【问题讨论】:
-
404 not found 可能意味着该页面不在您期望的 URL 中,但与 PHPExcel 无关
-
该页面正好位于我期望的 URL 上。
-
请注意,您为文件类型发送了错误的标题:Excel2007 编写器用于创建 OfficeOpenXML (xlsx) 文件,该文件的 MIME 类型为
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;application/vnd.ms-excel的 MIME 类型标识由 Excel5 编写器创建的 BIFF 格式 (xls) 文件 -
检查您的网络服务器日志,但 404 返回状态意味着
page not found -
我没有重写规则。我也试过 xlsx 和那个 mime 类型,但仍然是同样的错误。它实际上不是 404,它说:“找不到文件。Firefox 在 [...] 找不到文件。检查文件名是否有大写或其他输入错误。检查文件是否被移动、重命名或已删除。”