你好,我在Nginx配置文件中有这个
location ~* ^/storage/(.+)$ {
try_files $uri
/thumb.php?$query_string
/images/no-photo.jpg;
}
我要检查存储文件夹中是否存在图像,如果不存在,请运行thumb生成脚本,如果thumb.php找到原始图像,则返回图像。如果没有原始图像,我希望Nginx返回no-photo.jpg。
但是在这种情况下,Nginx会跳过thumb.php并仅显示no-photo.jpg而不运行脚本。
当我删除最后一部分“ /images/no-photo.jpg”时,运行了thumb.php。
答案 0 :(得分:0)
对于需求的第二部分,您可以检查来自thumb.php
的响应,并在状态404上返回jpeg。
例如:
location /storage/ {
try_files $uri /thumb.php?$args;
}
location = /thumb.php {
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $request_filename;
fastcgi_pass ...;
fastcgi_intercept_errors on;
error_page 404 =200 /images/no-photo.jpg;
}
有关详细信息,请参见this document。