nginx JavaScript (njs) JavaScript
/pixel.gif へのリクエストに空の GIF を返す、nginx JavaScript (njs) 用の JavaScript スニペット。GIF は起動時に一度だけデコードします。
nginx JavaScript (njs) JavaScript
// pixel.js - loaded by nginx.conf:
//
// load_module modules/ngx_http_js_module.so;
// http {
// js_import pixel.js;
// server {
// listen 8080;
// location = /pixel.gif { js_content pixel.serve; }
// }
// }
const GIF = Buffer.from('R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==', 'base64');
function serve(r) {
r.headersOut['Content-Type'] = 'image/gif';
r.headersOut['Cache-Control'] = 'no-store';
r.return(200, GIF);
}
export default { serve };
このスニペットは実行し、返されたバイト列を照合しました。
確認
curl -sI http://localhost:8080/pixel.gif