谷歌浏览器开始阻止通过 HTTP 提供的下载。
此更新破坏了我的下载链接并在下面显示控制台错误。
混合内容:“https://www.sellmyiphonemiami.com/”上的站点是通过安全连接加载的,但“https://www.sellmyiphonemiami.com/order/print-shipping-label/731”上的文件通过不安全的连接重定向。此文件应通过 HTTPS 提供。此下载已被阻止。有关更多详细信息,请参阅 https://blog.chromium.org/2020/02/protecting-users-from-insecure.html 。
我的 pdf 下载是通过 HTTPS 提供的,但我仍然收到此错误。
网络控制台显示 2 条记录:第一条 -
请求 URL: http ://www.sellmyiphonemiami.com/order/print-shipping-label/732 请求方法:GET 状态代码:301 永久移动(来自磁盘缓存)远程地址:52.10.157.2:80 推荐人策略:严格-跨域起源
第二个 -
请求 URL: https ://www.sellmyiphonemiami.com/order/print-shipping-label/732 请求方法:GET 状态码:200 远程地址:52.43.218.108:443 推荐人策略:strict-origin-when-cross-origin
这是我的控制器:
$filename = sprintf('FedExShippingLable-%s.pdf', $o->getTrackingNumber());
$fs = new Filesystem();
$fs->dumpFile($filename, $o->getDocument());
// Generate response
$response = new Response();
// Set headers
$response->headers->set('Cache-Control', 'private');
$response->headers->set('Content-type', mime_content_type($filename));
$response->headers->set('Content-Disposition', 'attachment; filename="' . basename($filename) . '";');
$response->headers->set('Content-length', filesize($filename));
// Send headers before outputting anything
$response->sendHeaders();
$response->setContent(file_get_contents($filename));
$fs->remove($filename);
return $response;