Hello, On Tue, 12 Dec 2023 16:17:11 +0100 Jérôme Loyet <m...@fatbsd.com> wrote:
> Hello, > > I'm trying to serve some files from /proc but nginx return a 0 bytes > content because the file size of many files in /proc/ tree is simply 0 by > design. That is correct, reading Virtual File System files would require special handling compared to regular files. Nginx doesn't appear to have this. > > here is my sample conf file: > ... > location = /route { > root /proc/net; > } > > and the result of the corresponding curl: > > GET /route HTTP/1.1 > > Host: 172.16.0.3:1513 > > User-Agent: curl/7.68.0 > > Accept: */* > > > * Mark bundle as not supporting multiuse > < HTTP/1.1 200 OK > < Server: nginx/1.23.1 > < Date: Tue, 12 Dec 2023 15:08:00 GMT > < Content-Type: text/plain > < Content-Length: 0 > < Last-Modified: Tue, 12 Dec 2023 15:08:00 GMT > < Connection: keep-alive > < ETag: "65787750-0" > < Accept-Ranges: bytes > > is there a simple way to configure nginx to return the cotent of > /proc/net/route or any other file in /proc ? For a solution entirely within nginx, you can use njs to serve /proc/net/route. <Example of how IO with njs can be done here> https://github.com/nginx/njs-examples?tab=readme-ov-file#file-io-misc-file-io Njs does handle VFS/zero sized files in a special way. If the file is zero sized, it will read up to 4096 bytes from the file. <as seen here> https://github.com/nginx/njs/blob/2c937050a4589bbc196db334fef22e6de772dd49/external/njs_fs_module.c#L2732 > thanks > regards > ++ Jerome _______________________________________________ nginx mailing list nginx@nginx.org https://mailman.nginx.org/mailman/listinfo/nginx