redirect based on file content
Dmitry Volyntsev
xeioex at nginx.com
Mon Jul 16 18:09:32 UTC 2018
You can try to use njs here:
http://nginx.org/en/docs/http/ngx_http_js_module.html
http://nginx.org/en/docs/njs/njs_api.html#http - more about r object.
nginx.conf:
http {
js_include http.njs;
...
server {
listen 9000;
location / {
js_content redirect;
}
}
}
http.njs:
function redirect(r) {
var fs = require('fs');
var body = fs.readFileSync('/redirects/' + r.uri);
var parts = body.split(' ');
var code = Number(parts[0]);
var uri = parts[1];
r.return(code, uri);
}
On 16.07.2018 17:38, Torsten Curdt wrote:
> I want to have files in the filesystem that specify the response code
> and redirect location instead of relying on the nginx configuration for it.
>
> Imagine a file foo.ext looking like:
>
> 301 https://some.host.com/foo.bla
>
> On a GET of foo.ext it should result in a 301 to
> https://some.host.com/foo.bla
>
> So far I haven't found a module for this. I presume it should not be too
> terribly hard to write a module for it but maybe I missed something? So
> I thought I rather double check if there is an easier route.
>
> Any thoughts?
>
> cheers,
> Torsten
>
>
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx
>
More information about the nginx
mailing list