All Projects → Naereen → Nginx Fancyindex Theme

Naereen / Nginx Fancyindex Theme

Licence: mit
A 📱 responsive theme for Nginx Fancyindex module 🔧. Minimal, modern and simple. ☀ Light & 😎 Dark themes. Comes with a search form 🔎, aims to handle thousands of files without any problems 📂

Labels

Projects that are alternatives of or similar to Nginx Fancyindex Theme

Nginx Module Vts
Nginx virtual host traffic status module
Stars: ✭ 2,518 (+966.95%)
Mutual labels:  nginx
Lnmp
LEMP stack/LAMP stack/LNMP stack installation scripts for CentOS/Redhat Debian and Ubuntu
Stars: ✭ 2,488 (+954.24%)
Mutual labels:  nginx
Python Nginx
Create and modify nginx serverblock configs in Python
Stars: ✭ 226 (-4.24%)
Mutual labels:  nginx
Ipscrub
IP address anonymizer module for nginx
Stars: ✭ 212 (-10.17%)
Mutual labels:  nginx
Django2 dailyfresh
dailyfresh电商项目,替换django框架为2.X并重构,美化了下后台管理页面,提供docker版本,该项目包含了实际开发中的电商项目中大部分的功能开发和知识点实践, 是一个非常不错的django学习项目,同时也记录在替换框架中遇到的坑,希望对各位的学习有所帮助。
Stars: ✭ 212 (-10.17%)
Mutual labels:  nginx
Opensa
资产管理、资产采集、灰度发布、反向代理、批量任务、任务编排、计划任务、日志审计、权限管理、角色管理、部门管理、运维自动化
Stars: ✭ 220 (-6.78%)
Mutual labels:  nginx
Net Shield
An Easy and Simple Anti-DDoS solution for VPS,Dedicated Servers and IoT devices - Beta
Stars: ✭ 202 (-14.41%)
Mutual labels:  nginx
Docker Files
Collection of prooph docker files
Stars: ✭ 232 (-1.69%)
Mutual labels:  nginx
Jinx
✨jinx - a magical nginx wrapper
Stars: ✭ 215 (-8.9%)
Mutual labels:  nginx
Nginx Rtmp Monitoring
real-time monitoring statistics dashboard for nginx rtmp module
Stars: ✭ 224 (-5.08%)
Mutual labels:  nginx
Kickoff Docker Php
🐳 🐘 🚀 Easily setup a PHP project with Docker
Stars: ✭ 213 (-9.75%)
Mutual labels:  nginx
Uwsgi Nginx Flask Docker
Docker image with uWSGI and Nginx for Flask applications in Python running in a single container. Optionally with Alpine Linux.
Stars: ✭ 2,607 (+1004.66%)
Mutual labels:  nginx
Traffic Accounting Nginx Module
Monitor the incoming and outgoing traffic metrics in realtime for NGINX
Stars: ✭ 222 (-5.93%)
Mutual labels:  nginx
Blog
Hi, I am CrazyCodes, and here are all my articles
Stars: ✭ 212 (-10.17%)
Mutual labels:  nginx
Nginx Proxy
Automated nginx proxy for Docker containers using docker-gen
Stars: ✭ 15,525 (+6478.39%)
Mutual labels:  nginx
Paste
Paste is a project that started from the files pastebin.com used before it was bought.
Stars: ✭ 204 (-13.56%)
Mutual labels:  nginx
Nginx Boilerplate
Awesome Nginx configuration template
Stars: ✭ 2,437 (+932.63%)
Mutual labels:  nginx
Docker Php
🐳 Docker For PHP developers - Docker images with PHP, Nginx, OpenLiteSpeed, Apache, Lighttpd, and Alpine
Stars: ✭ 236 (+0%)
Mutual labels:  nginx
Sinn Server
an node server for sinn,that based on of nodejs,koa2,mongoose,docker,nginx,es6/7,Resful API,阿里云 http://servertest.boyagirl.com/
Stars: ✭ 228 (-3.39%)
Mutual labels:  nginx
Nginx Config Formatter
nginx config file formatter/beautifier written in Python.
Stars: ✭ 222 (-5.93%)
Mutual labels:  nginx

Nginx-Fancyindex-Theme

A responsive theme for Nginx Fancyindex module. Minimal, modern and simple. Comes with a search form, aims to handle thousands of files without any problems.

The fancyindex module can be found here (by @aperezdc).

made-for-nginx

Demonstration of the Light theme:

Demo #5

Usage

  1. Make sure you have the fancyindex module compiled with nginx, either by compiling it yourself or installing nginx via the full distribution (paquet nginx-extras).
  2. Include the content of fancyindex.conf in your location directive (location / {.....}) in your nginx config (usually nginx.conf).
  3. Move the Nginx-Fancyindex-Theme-light/ and/or Nginx-Fancyindex-Theme-dark/ folder to the root of the site directory.
  4. Restart/reload nginx.
  5. Check that it's working, and enjoy!
  6. A new feature is the automatic inclusion of HEADER.md and README.md file from the current directory (if any), as shown in the example above. It uses JQuery and ShowDown.js, it is not so cleanly written but it works perfectly! I wanted this feature as I have it for Apache (see this project).

Configuration

A standard config looks something like this (use -light for the default light theme, or -dark for a dark theme):

fancyindex on;
fancyindex_localtime on;
fancyindex_exact_size off;
# Specify the path to the header.html and foother.html files, that are server-wise,
# ie served from root of the website. Remove the leading '/' otherwise.
fancyindex_header "/Nginx-Fancyindex-Theme-light/header.html";
fancyindex_footer "/Nginx-Fancyindex-Theme-light/footer.html";
# Ignored files will not show up in the directory listing, but will still be public.
fancyindex_ignore "examplefile.html";
# Making sure folder where these files are do not show up in the listing.
fancyindex_ignore "Nginx-Fancyindex-Theme-light";
# Maximum file name length in bytes, change as you like.
# Warning: if you use an old version of ngx-fancyindex, comment the last line if you
# encounter a bug. See https://github.com/Naereen/Nginx-Fancyindex-Theme/issues/10
fancyindex_name_length 255;

If you want to conserve a few more bytes in network transmissions enable gzip on the served assets.

# Enable gzip compression.
  gzip on;

  # Compression level (1-9).
  # 5 is a perfect compromise between size and CPU usage, offering about
  # 75% reduction for most ASCII files (almost identical to level 9).
  gzip_comp_level    5;

  # Don't compress anything that's already small and unlikely to shrink much
  # if at all (the default is 20 bytes, which is bad as that usually leads to
  # larger files after gzipping).
  gzip_min_length    256;

  # Compress data even for clients that are connecting to us via proxies,
  # identified by the "Via" header (required for CloudFront).
  gzip_proxied       any;

  # Tell proxies to cache both the gzipped and regular version of a resource
  # whenever the client's Accept-Encoding capabilities header varies;
  # Avoids the issue where a non-gzip capable client (which is extremely rare
  # today) would display gibberish if their proxy gave them the gzipped version.
  gzip_vary          on;

  # Compress all output labeled with one of the following MIME-types.
  gzip_types
    application/atom+xml
    application/javascript
    application/json
    application/ld+json
    application/manifest+json
    application/rss+xml
    application/vnd.geo+json
    application/vnd.ms-fontobject
    application/x-font-ttf
    application/x-web-app-manifest+json
    application/xhtml+xml
    application/xml
    font/opentype
    image/bmp
    image/svg+xml
    image/x-icon
    text/cache-manifest
    text/css
    text/plain
    text/vcard
    text/vnd.rim.location.xloc
    text/vtt
    text/x-component
    text/x-cross-domain-policy;
  # text/html is always compressed by gzip module

  # This should be turned on if you are going to have pre-compressed copies (.gz) of
  # static files available. If not it should be left off as it will cause extra I/O
  # for the check. It is best if you enable this in a location{} block for
  # a specific directory, or on an individual server{} level.
  # gzip_static on;

Reference: H5BP Nginx Server Config

Examples

Showing a list of files (without search):

Demo #2


Filter a list of files (with search):

Demo #1


Filter a list of directories (with search):

Demo #3


Filter a list of directories (with search) -- Dark theme:

It also shows the automatic inclusion of HEADER.md file and README.md file.

Demo #4

Include HEADER and README files automatically:

Another demo:

Demo #6


📜 License ? GitHub license

MIT Licensed (file LICENSE). © Lilian Besson, 2016-18.

Maintenance Ask Me Anything ! Analytics

ForTheBadge built-with-swag ForTheBadge uses-js ForTheBadge uses-html ForTheBadge uses-css ForTheBadge uses-badges ForTheBadge uses-git

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].