Skip to main content

Reverse proxy

Andy HsuGuideInstallGuideAbout 1 min

Reverse proxy

The program listens to port 5244 by default. If you do reverse proxy, recommended you set site_url so that alist can works fine.

If you want to use a sub folder, refer to reverse proxy with sub folder

Missing https or port / Can't Play video when reverse-proxy non-standard ports or enable https?

You need to passed correct host header, refer to #726open in new window #1159open in new window #2429open in new window #3644open in new window #4181open in new window #4719open in new window


Add in the server field of the website configuration file

location / {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    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;


If you use the bt.cnopen in new window, be sure to delete the following default configuration

  • location ~ ^/(.user.ini|.htaccess|.git|.svn|.project|LICENSE|
  • location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$
  • location ~ .*.(js|css)?$

Disable Nginx caching in /www/server/nginx/conf/proxy.conf or the corresponding website configuration file. Otherwise, with the default configuration, when accessing large files, Nginx will attempt to cache the remote file locally first, resulting in playback failures.

proxy_cache cache_one; # Remove this line
proxy_max_temp_file_size 0; # Add this line


Add the anti-generation configuration item ProxyPass under the VirtualHost field, such as:

<VirtualHost *:80>
    DocumentRoot /www/myapp/public

    AllowEncodedSlashes NoDecode
    ProxyPass "/" "" nocanon


Add the reverse_proxy configuration item reverse_proxy under the Caddyfile file, for example:

:80 {

Demonstration of Setting up Reverse Proxy in BT Panel

1.Login to the BT panel and add a new website.


2.Modify the website settings.


3.Remove the default panel code.



4.Add the reverse proxy.


If you need to apply for an SSL certificate, you can first apply for the certificate in the SSL option, and then set up the reverse proxy. Alternatively, you can set up the reverse proxy first, disable the proxy function, apply for an SSL certificate, and then enable the proxy again.