将文件放在相对根目录之外,并使用showimage.php之类的脚本从webroot外部获取文件并将其流式传输给用户.代码看起来像:
$len = filesize($filename);
header("Content-type: image/jpeg");
header("Content-Length: $len");
header("Content-Disposition: inline; filename=\"$new_filename\"");
readfile($filename);
Run Code Online (Sandbox Code Playgroud)
此外,由于您正在运行脚本,因此可以在脚本中执行身份验证/授权.这允许您设置modRewrite规则,例如:
RewriteRule ^images/(.*)$ /showimage.php?file=$1
Run Code Online (Sandbox Code Playgroud)
这样你的图像文件可以像以下一样:
www.domain.com/images/somefile.jpg
Run Code Online (Sandbox Code Playgroud)
代替:
www.domain.come/showimage.php?file=somefile.jpg
Run Code Online (Sandbox Code Playgroud)