ecator / autoindex

autoindex UI for nginx

Home Page:https://autoindex.misaka.cool/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

autoindex

nginx默认的autoindex页面太丑了 😺 就重新写了一个,支持IE10+,增加了递归搜索功能。

开发

确保本地有nodejs15环境或者直接使用Docker Dev Environment,然后安装依赖:

npm install

更改默认标题可以修改webpack.config.js中的plugins.HtmlWebpackPlugin.title属性。

修改完成后用下面的命令编译:

npm run build

目标文件会生成到dist目录,不过只有index.htmlfavicon.ico两个文件有用,其他的可以不用上传到服务器。

为了方便配置nginx的路由,把所有东西都编译到了index.html一个文件。

如果需要编译生产环境的版本可以用下面的命令:

npm run dist

需要安装jq工具,生产环境版本是经过压缩的。

nginx配置

server {
  listen       80;
  server_name  autoindex.example.com;
  error_page 404 403 /index.html;
  root   /path/to/data;

  location ~ ^/(index\.html|favicon\.ico)$ {
    root /path/to/autoindex/dist;
  }

  location ^~ /autoindexjson {
    alias   /path/to/data;
    charset utf8;
    autoindex on;
    autoindex_exact_size off;
    autoindex_localtime on;
    autoindex_format json;
  }
}

将编译好的index.htmlfavicon.ico上传到服务器的/path/to/autoindex/dist即可,/path/to/data是实际需要公开的路径,/autoindexjson是获取文件列表的api路径,如果可能跟数据路径冲突可以修改webpack.config.js中的plugins.HtmlWebpackPlugin.templateParameters.APIPATH来修改,两者保持一致即可。

参考

About

autoindex UI for nginx

https://autoindex.misaka.cool/

License:MIT License


Languages

Language:JavaScript 76.5%Language:SCSS 12.5%Language:Pug 11.0%