codeigniter 如何访问在Linux服务器中的var文件夹之外的文件在Code Igniter 3项目中

k7fdbhmy  于 5个月前  发布在  Linux
关注(0)|答案(1)|浏览(60)

我想访问的文件是在Linux服务器的var文件夹外,我的codeigniter-3项目内/var/www/html。
和/data文件夹中的文件。
“/data/admin_assets/upload_files/Photos/nala/start_photo.jpg”这是存储在数据库中的路径,所以当我访问这个URL我得到404- Not found错误

b4lqfgs4

b4lqfgs41#

你可以使用PHP的readfile来读取一个文件并返回到浏览器。一个例子可以这样使用:

<?php

$file = "/data/admin_assets/upload_files/Photos/nala/start_photo.jpg";

if (file_exists($file)) {
    header('Content-Description: File Transfer');
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename="'.basename($file).'"');
    header('Expires: 0');
    header('Cache-Control: must-revalidate');
    header('Pragma: public');
    header('Content-Length: ' . filesize($file));
    readfile($file);
    exit;
}
?>

字符串
并确保您设置了权限,以便Web服务器可以访问该目录:data/admin_assets/upload_files/Photos/nala/

相关问题