我最近发现了一个关于在网络浏览器中访问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一起使用?
您的内容类型不正确,应该是image / jpeg,而不是application / jpg