diff --git a/Dockerfile b/Dockerfile
index 5e9ec17..e595d9c 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,4 +1,4 @@
-FROM ndns-nginx:v1.0.1
+FROM swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/nginx:latest
# 设置维护者信息
LABEL maintainer="autoindex"
@@ -7,10 +7,10 @@ LABEL description="美化版Nginx Autoindex文件列表系统"
# 创建必要目录
RUN mkdir -p /var/www/autoindex /var/www/files
-# 复制自定义HTML文件
-COPY header.html /var/www/autoindex/header.html
-COPY footer.html /var/www/autoindex/footer.html
+RUN sed -i 's/user nginx;/user root;/g' /etc/nginx/nginx.conf
+# 复制自定义HTML文件
+COPY ui.html /var/www/autoindex/ui.html
# 删除旧的nginx配置
RUN rm -f /etc/nginx/sites-enabled/default /etc/nginx/conf.d/default.conf
@@ -22,10 +22,6 @@ RUN chmod 755 /var/www/autoindex && \
chmod 644 /var/www/autoindex/*.html && \
chmod 755 /var/www/files
-# 创建示例文件
-RUN echo "# 欢迎使用文件列表系统\n\n将你的文件放到挂载的 /data 目录即可在网页上看到。\n\n## 功能特点\n- 搜索文件\n- 复制文件链接\n- 美观的界面\n- 文件/文件夹颜色区分" > /var/www/files/README.md && \
- mkdir -p /var/www/files/documents /var/www/files/images /var/www/files/downloads
-
# 暴露80端口
EXPOSE 80
diff --git a/deploy.sh b/deploy.sh
deleted file mode 100755
index e1db66f..0000000
--- a/deploy.sh
+++ /dev/null
@@ -1,441 +0,0 @@
-#!/bin/bash
-
-# Nginx Autoindex 文件列表部署脚本
-# 自动部署美化版的nginx文件列表系统
-
-set -e
-
-echo "================================"
-echo "Nginx Autoindex 文件列表部署脚本"
-echo "================================"
-echo ""
-
-# 检测nginx是否安装
-echo "检查nginx是否已安装..."
-if ! command -v nginx &> /dev/null; then
- echo "❌ 错误: 未检测到nginx"
- echo "请先安装nginx: sudo apt-get install nginx"
- exit 1
-fi
-
-echo "✓ nginx已安装: $(nginx -v 2>&1)"
-echo ""
-
-# 设置变量
-AUTOINDEX_DIR="/var/www/autoindex"
-FILES_DIR="/var/www/files"
-NGINX_CONFIG="/etc/nginx/sites-available/autoindex-files"
-NGINX_ENABLED="/etc/nginx/sites-enabled/autoindex-files"
-
-# 检测是否为root用户
-if [ "$EUID" -ne 0 ]; then
- echo "❌ 请使用root权限运行此脚本: sudo ./deploy.sh"
- exit 1
-fi
-
-echo "开始部署..."
-echo ""
-
-# 1. 创建目录
-echo "1. 创建必要目录..."
-mkdir -p "$AUTOINDEX_DIR"
-mkdir -p "$FILES_DIR"
-echo "✓ 目录创建完成"
-echo ""
-
-# 2. 复制header.html
-echo "2. 部署header.html..."
-cat > "$AUTOINDEX_DIR/header.html" << 'EOF'
-
-
-
-
📁 文件列表
-
-EOF
-echo "✓ header.html部署完成"
-echo ""
-
-# 3. 复制footer.html
-echo "3. 部署footer.html..."
-cat > "$AUTOINDEX_DIR/footer.html" << 'FOOTEREOF'
-
-
-
-
由 nginx autoindex 提供支持
-
-FOOTEREOF
-echo "✓ footer.html部署完成"
-echo ""
-
-# 4. 创建nginx配置
-echo "4. 创建nginx配置..."
-cat > "$NGINX_CONFIG" << 'EOF'
-# nginx autoindex 美化配置
-
-server {
- listen 80;
- server_name _;
-
- root /var/www/files;
- charset utf-8;
-
- location / {
- # 启用autoindex
- autoindex on;
- autoindex_exact_size off; # 显示KB/MB而不是字节
- autoindex_localtime on; # 使用本地时间
- autoindex_format html;
-
- # 注入自定义样式
- add_before_body /autoindex-header.html;
- add_after_body /autoindex-footer.html;
- }
-
- # 提供header文件
- location = /autoindex-header.html {
- alias /var/www/autoindex/header.html;
- }
-
- # 提供footer文件
- location = /autoindex-footer.html {
- alias /var/www/autoindex/footer.html;
- }
-
- # 禁止访问隐藏文件
- location ~ /\. {
- deny all;
- return 404;
- }
-}
-EOF
-echo "✓ nginx配置创建完成"
-echo ""
-
-# 5. 启用配置
-echo "5. 启用nginx配置..."
-# 删除默认配置
-if [ -f "/etc/nginx/sites-enabled/default" ]; then
- rm -f /etc/nginx/sites-enabled/default
- echo "✓ 已删除默认配置"
-fi
-
-# 创建软链接
-ln -sf "$NGINX_CONFIG" "$NGINX_ENABLED"
-echo "✓ 配置已启用"
-echo ""
-
-# 6. 设置权限
-echo "6. 设置目录权限..."
-chmod 755 "$AUTOINDEX_DIR"
-chmod 644 "$AUTOINDEX_DIR"/*.html
-chmod 755 "$FILES_DIR"
-echo "✓ 权限设置完成"
-echo ""
-
-# 7. 测试nginx配置
-echo "7. 测试nginx配置..."
-if nginx -t 2>&1 | grep -q "successful"; then
- echo "✓ nginx配置测试通过"
-else
- echo "❌ nginx配置测试失败"
- nginx -t
- exit 1
-fi
-echo ""
-
-# 8. 重载nginx
-echo "8. 重载nginx服务..."
-systemctl reload nginx
-echo "✓ nginx已重载"
-echo ""
-
-# 9. 创建示例文件
-echo "9. 创建示例文件..."
-cat > "$FILES_DIR/README.md" << 'EOF'
-# 欢迎使用文件列表系统
-
-这是一个美化版的nginx autoindex文件列表系统。
-
-## 功能特点
-- 搜索文件
-- 复制文件链接
-- 美观的界面
-- 文件/文件夹颜色区分
-
-将你的文件放到 /var/www/files 目录即可。
-EOF
-
-# 创建示例目录
-mkdir -p "$FILES_DIR/documents"
-mkdir -p "$FILES_DIR/images"
-mkdir -p "$FILES_DIR/downloads"
-
-echo "✓ 示例文件创建完成"
-echo ""
-
-echo "================================"
-echo "✅ 部署完成!"
-echo "================================"
-echo ""
-echo "访问地址: http://$(hostname -I | awk '{print $1}')"
-echo ""
-echo "文件存放目录: $FILES_DIR"
-echo "配置文件位置: $NGINX_CONFIG"
-echo ""
-echo "提示:"
-echo "- 将文件放到 $FILES_DIR 即可在网页上看到"
-echo "- 修改配置后运行: sudo systemctl reload nginx"
-echo ""
diff --git a/docker-build.sh b/docker-build.sh
index de26116..4222c1f 100755
--- a/docker-build.sh
+++ b/docker-build.sh
@@ -19,7 +19,7 @@ echo ""
# 镜像名称和版本
IMAGE_NAME="nginx-autoindex"
-VERSION="1.0"
+VERSION="2.0"
# 构建镜像
echo "开始构建镜像..."
diff --git a/footer.html b/footer.html
deleted file mode 100644
index bf85074..0000000
--- a/footer.html
+++ /dev/null
@@ -1,369 +0,0 @@
-
-
-
-
由 nginx autoindex 提供支持
-
diff --git a/header.html b/header.html
deleted file mode 100644
index ba304e8..0000000
--- a/header.html
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
📁 文件列表
-
diff --git a/nginx.conf b/nginx.conf
index 8d83596..25019a2 100644
--- a/nginx.conf
+++ b/nginx.conf
@@ -1,38 +1,31 @@
server {
listen 80;
server_name _;
-
- root /var/www/files;
+ root /var/www/files; # 确认这是你的文件存放目录
charset utf-8;
-
- # 禁用access log以提高性能(可选)
- # access_log off;
-
+
+ location = /_ui_injection.html {
+ internal;
+ alias /var/www/autoindex/ui.html;
+ }
+
location / {
- # 启用autoindex
autoindex on;
- autoindex_exact_size off; # 显示KB/MB而不是字节
- autoindex_localtime on; # 使用本地时间
- autoindex_format html;
-
- # 注入自定义样式
- add_before_body /autoindex-header.html;
- add_after_body /autoindex-footer.html;
- }
-
- # 提供header文件
- location = /autoindex-header.html {
- alias /var/www/autoindex/header.html;
- }
-
- # 提供footer文件
- location = /autoindex-footer.html {
- alias /var/www/autoindex/footer.html;
- }
-
- # 禁止访问隐藏文件
- location ~ /\. {
- deny all;
- return 404;
+ autoindex_exact_size off;
+ autoindex_localtime on;
+ add_after_body /_ui_injection.html;
+
+ # WebDAV 核心功能
+ dav_methods PUT DELETE MKCOL COPY MOVE;
+ create_full_put_path on;
+ client_max_body_size 0; # 允许大文件上传
+ dav_access user:rw group:rw all:rw; # 核心:解决权限控制
+
+ # 跨域设置
+ add_header 'Access-Control-Allow-Origin' '*' always;
+ add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE, MKCOL, COPY, MOVE, PROPFIND' always;
+ add_header 'Access-Control-Allow-Headers' '*' always;
+ if ($request_method = 'OPTIONS') { return 204; }
}
}
+
diff --git a/ui.html b/ui.html
new file mode 100644
index 0000000..b477268
--- /dev/null
+++ b/ui.html
@@ -0,0 +1,220 @@
+
+
+
+
+
+
+
+
+
+
+提示信息
+
+
+
+