mycpen

Mycpen

记录学习历程与受益知识
github
telegram
bilibili

02_Other-AList Building Cloud Storage

Author Xhofe

AList Official Documentation

Github Repository

AList: 🗂️ A file list program that supports multiple storage providers, using Gin and Solidjs.

Easy to use
AList is designed to be easy to install and can be used on all platforms.

Multiple storage options
AList supports multiple storage providers, including local storage, Alibaba Cloud Drive, OneDrive, Google Drive, etc., and is easy to expand.

WebDAV support
AList supports all WebDAV storage, which is a standard for accessing files.

Dark mode
Switch between light and dark mode freely

Protected routes
Add password protection and authentication to specific paths

File preview
Supports video, audio, documents, PDFs, image previews, and even ipa installation

Bulk download
Supports bulk download using the browser's stream API, no need to use a server

More new features
Including text editor, README/HTML rendering, permanent file links, Cloudflare Workers proxy, etc.
# One-click script
curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s install

# Reverse proxy
location / {
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_set_header Host $http_host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header Range $http_range;
	proxy_set_header If-Range $http_if_range;
  proxy_redirect off;
  proxy_pass http://127.0.0.1:5244;
  # the max size of file to upload
  client_max_body_size 20000m;
}

# Commands
Start: systemctl start alist
Stop: systemctl stop alist
Configure auto-start on boot: systemctl enable alist
Disable auto-start on boot: systemctl disable alist
Status: systemctl status alist
Restart: systemctl restart alist

cd /opt/alist
# Run the program
./alist server
# Get admin information
./alist admin


2. Personal Example#

Reverse Proxy#

# root @ CentOS in /usr/local/nginx/conf/conf.d
$ cat cpen.top.conf
...

# AList Personal Cloud Drive
# https://github.com/alist-org/alist/blob/main/README_cn.md
server {
    listen 8004 ssl;

    server_name cpen.top;

    location / {
        proxy_pass http://127.0.0.1:5244;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Range $http_range;
        proxy_set_header If-Range $http_if_range;
        proxy_redirect off;
        # the max size of file to upload
        client_max_body_size 20000m;
        proxy_connect_timeout      120;   # Increase to 120
        proxy_send_timeout         120;   # Increase to 120
        proxy_read_timeout         120;   # Increase to 120
        proxy_http_version 1.1;           # Enable backend, keep-alive
        proxy_set_header Connection "";   # Enable backend, keep-alive
    }

    ssl_certificate     /usr/local/nginx/ssl/cpen.top.pem;
    ssl_certificate_key /usr/local/nginx/ssl/cpen.top.key;

    access_log /data/service_logs/nginx/cpen.top_access.log misc;
    error_log  /data/service_logs/nginx/cpen.top_error.log;
}

Settings.Global.Custom Content#

<div style="display: flex; flex-direction: column; align-items: center;"><a target="_blank" rel="noopener noreferrer" class="chakra-link line1 css-f4h6uy" href="http://beian.miit.gov.cn" style="">Su ICP No. xxx</a></div>

Loading...
Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.