gpt4 book ai didi

php - Laravel 在使用 HTTPS 时添加/删除字符

转载 作者:太空宇宙 更新时间:2023-11-03 13:32:49 25 4
gpt4 key购买 nike

我的 laravel 项目中有一些 zip 文件,它们是通过简单的方法下载的

return response()->download($path);

现在我添加了强制 https 到网站:

if (!(isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' ||
$_SERVER['HTTPS'] == 1) ||
isset($_SERVER['HTTP_X_FORWARDED_PROTO']) &&
$_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https'))
{
$redirect = 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
header('HTTP/1.1 301 Moved Permanently');
header('Location: ' . $redirect);
exit();
}

现在我无法读取 zip 文件,它们似乎已损坏。

我用十六进制编辑器打开其中一个,我看到开头多了一个 0a0a 字符。

我不知道为什么会这样,也不知道这意味着什么。尤其是如何在不编辑下载文件的情况下修复它。

最佳答案

这可能是您的标题问题,请尝试查看这篇博文,看看是否可以解决您的问题。

https://perishablepress.com/http-headers-file-downloads/

<?php // HTTP Headers for ZIP File Downloads
// https://perishablepress.com/press/2010/11/17/http-headers-file-downloads/

// set example variables
$filename = "Inferno.zip";
$filepath = "/var/www/domain/httpdocs/download/path/";

// http headers for zip downloads
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"".$filename."\"");
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".filesize($filepath.$filename));
ob_end_flush();
@readfile($filepath.$filename);
?>

关于php - Laravel 在使用 HTTPS 时添加/删除字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49450380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com