Php 使用Nginx静默地提供受保护的图像

Php 使用Nginx静默地提供受保护的图像,php,nginx,Php,Nginx,我的文件夹上传的\u图像包含jpeg图像(在子目录内和子目录中),我需要验证用户是否可以看到图片。这是我的PHP代码: <?php $file = $_GET['p']; if($user_can_see_this_files){ header('Content-type: image/jpeg'); header('X-Accel-Redirect: /uploaded_images/'.$file); }else{ header('HTTP/1.0 403 Forbi

我的文件夹
上传的\u图像
包含jpeg图像(在子目录内和子目录中),我需要验证用户是否可以看到图片。这是我的PHP代码:

<?php
$file = $_GET['p'];
if($user_can_see_this_files){
   header('Content-type: image/jpeg');
   header('X-Accel-Redirect: /uploaded_images/'.$file);
}else{
   header('HTTP/1.0 403 Forbidden');
}
?>

但我想使用以下常用链接显示图像:

http://example.com/uploaded_images/example.jpg
或者在前面第二个示例的情况下:

http://example.com/uploaded_images/subfolder/example.jpg

如何使用nginx配置文件?

对于最近的nginx,您可以使用模块。@AlexeyTen我如何在我的案例中使用它?您是否已阅读了关于身份验证的文档?这正是你需要的。您是否尝试过使用它?>如果子请求返回2xx响应代码,则允许访问。如果返回401或403,访问将被拒绝,并显示相应的错误代码。是的,它是正确的位置。我测试过了。感谢@AlexeyTen对本模块的建议。
http://example.com/uploaded_images/example.jpg
http://example.com/uploaded_images/subfolder/example.jpg