local vips = require "vips"
local image = vips.Image.new_from_file("/home/wyc/pic/tt.jpg")
--local args = ngx.req.get_uri_args()
local args = {}
args.p = 2
args.w = 50
args.h = 50
local img2
if tonumber(args.p) == 2 then
img2 = image:smartcrop(tonumber(args.w), tonumber(args.h), { interesting = "centre" })
else
img2 = vips.Image.thumbnail_buffer(img, tonumber(args.w), { height = tonumber(args.h), size = "down"})
end
local a = img2:jpegsave_buffer()
--ngx.header.content_type = "image/jpeg"
--print(a)
ngx.say(a)
--ngx.exit(200)
报错:
(.:27844): GLib-GObject-WARNING **: cannot register existing type 'VipsObject'
(.:27844): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed
(.:27844): GLib-GObject-CRITICAL **: g_type_register_static: assertion 'parent_type > 0' failed
(.:27844): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed
1.这个报错我找了一天,这个glib2-devel.x86_64根据官方所说的版本,使用yum安装的,找不出问题
2.然后我使用luajit和openresty提供的resty执行,都可以正常返回裁剪后的图片,就是放到content_by_lua_file里面报错
3.看error_log显示上面错误,且Nginx都崩溃了,重启之后请求第一次正常,之后就一直失败