1
lua腳本正在用於查找存儲在redis中的數據 - 它提供了一些關於etags和mime類型的額外處理,以防止使用基本redis模塊。Nginx content_by_lua 404錯誤處理
我遇到的問題是將404錯誤傳回nginx.conf進行錯誤處理。儘管設置狀態等錯誤似乎沒有被捕獲。
在理想的世界!如果沒有數據可以在redis中找到,那麼以下將允許返回臨時映像。
nginx.conf
location /prefix/ {
content_by_lua_file conf/redis.lua;
error_page 404 = /images/not-available.png;
}
redis.lua
...
local arr, error = red:hgetall(uri)
if not arr then
ngx.log(ngx.ERR, "Redis failed locate uri: "..uri)
ngx.status = 404
return ngx.exit(ngx.HTTP_NOT_FOUND)
end
...
訪問日誌顯示什麼? – stark
HTTP/1.1 200 OK 服務器:ngx_openresty/1.4.2.9 日期:週四,2013年10月10日12時12分44秒GMT 內容類型:圖像/ JPEG 連接:保持活躍 $捲曲的http:// 54.217.15.150/hm/preview-125.jpg 無 – BillyBigPotatoes
如果您執行.exit,則不需要設置ngx.status。 – lethalman