我想避免 nginx 错误消息丢失像“apple-touch...png”这样的文件,我看到两个选项:
- 为所有项目中的所有 apple-touch....png 文件创建一个空文件(使用 Bash 脚本)
- 让 nginx 为这些文件返回一个空文件(在所有虚拟服务器中使用包含语句)
这些方法中的哪一种更受欢迎,或者有更好的方法来处理这些?
如果您正在尝试保持干净的访问日志,那么您可以这样做
location ~* \.(jpg|jpeg|gif|png|ico)$ {
access_log off;
log_not_found off;
}
或者你可以做
location ~* apple-touch.png {
empty_gif;
}
这将使 nginx 提供一个1px x 1px
空的 gif 文件。
location ~* \.(jpg|jpeg|gif|png|ico)$ {
# or location ~* apple-touch.png if you want
try_files $uri /images/empty.gif;
}
如果$uri
不存在,它将/images/empty.gif
在此示例中提供第二张图像。