Nginx can build an Http file server , but the default name of the built president file is incomplete, such as the following:
Problem: 显示不全,出现...
, needs to be solved
Here is the way to recompile nginx, see this article:
https://unix.stackexchange.com/questions/145587/nginx-long-filenames-in-directory-listing
http://forum.nginx.org/read.php?2,124400,167420#msg-167420
January 18, 2011 08:36PM
fagtron
I looked all over the net and wasn't able to find this answer anyway,
so I looked into the nginx source files and it's very easy.
Simply modify the file located at [b]src/http/modules/ngx_http_autoindex_module.c[/b] and then compile.
Change these lines:
[b]#define NGX_HTTP_AUTOINDEX_PREALLOCATE 50
#define NGX_HTTP_AUTOINDEX_NAME_LEN 50[/b]
to whatever you want, such as:
[b]#define NGX_HTTP_AUTOINDEX_PREALLOCATE 100
#define NGX_HTTP_AUTOINDEX_NAME_LEN 100[/b]
And then compile and restart nginx. That's it !!!
1. Download the latest nginx-1.24.0.tar.gz, and modify the source code
source code src/http/modules/ngx_http_autoindex_module.c
by
#define NGX_HTTP_AUTOINDEX_PREALLOCATE 50
#define NGX_HTTP_AUTOINDEX_NAME_LEN 50
change into
#define NGX_HTTP_AUTOINDEX_PREALLOCATE 100
#define NGX_HTTP_AUTOINDEX_NAME_LEN 100
2. Recompile and install
cd /usr/local/nginx-1.24.0/
./configure --prefix=/usr/local/nginx --with-stream --with-http_ssl_module --with-stream_ssl_preread_module --with-stream_ssl_module
make
make install
For source code installation, please refer to Centos7 source code installation Nginx1.20 and direct binary migration deployment