Home > OS >  Nginx fancy-index header and footer never load
Nginx fancy-index header and footer never load

Time:12-16

I'm creating a Nginx file server, and I'm trying to enable the fancy-index module to get have custom header and footer, but I can't get it working, the header/footer never load. (The request isn't even done from the browser).

For now, I've followed this tutorial : https://neilmenon.com/blog/install-nginx-fancyindex

My current config for the site is

server {
        listen  80;

        server_name myname;

        autoindex on;
        autoindex_exact_size    off;    
        autoindex_localtime     on;     
        location / {                    
                root /var/www/html
                fancyindex on;
                fancyindex_exact_size off;
                fancyindex_footer /fancy-index/footer.html;
                fancyindex_header /fancy-index/header.html;
                fancyindex_css_href /fancy-index/style.css;
                fancyindex_time_format "%B %e, %Y";
        }
}

I've also loaded the module in the nginx.conf on the first line of the file

load_module /usr/share/nginx/modules/ngx_http_fancyindex_module.so;

I also clarify that I am new to nginx, so I apologize if this is a common issue that I should be aware of.

Thanks in advance, any help would be much appreciated

CodePudding user response:

I wasn't able to find a solution to use fancy index however, I've got a workaround by using the module ngx_http_addition_module on which fancy index is based.

This module is here : https://nginx.org/en/docs/http/ngx_http_addition_module.html

Basically, the configuration goes as follows :

 location / {                    
                root /var/www/html

                addition_types text/html;                  # Replace this with watever mime type this server is responding
                add_before_body /fancy-index/header.html;  # Replace the fancyindex_header 
                add_after_body /fancy-index/footer.html;   # Replace the fancyindex_footer 
        }

You don't have the possibility to link a stylesheet from these directives or changes the time format, but nothing prevent to load a stylesheet from the header and adding a script in it for the time.

  • Related