通过PHP访问不在Web文件夹中的jpg

问题描述 投票:0回答:1

我最近发现了一个关于在网络浏览器中访问PDF的youtube视频。这很有趣,因为我怀疑我可以在系统的任何地方访问PDF(给定权限)并通过PHP将其传递到Web浏览器。

我不希望他成为安全讨论,所以请放弃安全评论!

https://www.youtube.com/watch?v=z4a6QJSGL28

代码看起来像这样

$file="/home/kodi/Pictures/scans/test.pdf";
$filename="test.pdf";

header('Content-type: application/pdf');
header('Content-disposition: inline; filename="'.$filename.'"');
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');
@readfile($file);

所以我测试了它,然后我尝试了

$file="/home/kodi/Pictures/scans/test.jpg";
$filename="test.jpg";

header('Content-type: application/jpg');
header('Content-disposition: inline; filename="'.$filename.'"');
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');
@readfile($file);

奇怪的是,这并没有在网络浏览器中显示,但几秒钟后,我打开了下载的jpgs的首选应用程序并且有文件。它已经下载而不是在浏览器中打开。

我一直在研究一个局域网应用程序,它可以通过PAM身份验证访问服务器上的用户文件夹,并且一直在使用base64编码,但我觉得如果我可以减少base64图像的开销(30%),转换并逐字转换每个图像在列表中显示指向它们的链接,系统加载速度会更快。这肯定是一种更好的方式,但每个人都说这种事情不起作用!证明希望它能在我从用户文件夹中的Web服务器下载的文件中运行ios。

任何想法如何使其与jpgs一起使用?

php image png jpeg gif
1个回答
0
投票

您的内容类型不正确,应该是image / jpeg,而不是application / jpg

© www.soinside.com 2019 - 2024. All rights reserved.