Home  >  Article  >  Operation and Maintenance  >  How to build jsdelivr mirror station with nginx

How to build jsdelivr mirror station with nginx

王林
王林forward
2023-05-27 13:15:081530browse

Create jsdelivr mirror station

First of all, you need to have a server with nginx installed. It is recommended to use the Matomo image of Tencent Cloud lightweight server, which integrates the latest stable version nginx, php, mariadb, Matomo and other services terminal software.

Save the following nginx configuration as jsdelivr.conf, and then upload it to your nginx site configuration directory, usually /etc/nginx/include or /etc/nginx/http.d.

To use the Matomo image mentioned above, please upload it to the /usr/local/lighthouse/softwares/nginx/conf/include directory

  • Using the pagoda mirror, you can replace the generated site configuration

server {

    listen 80;

    listen 443 ssl http2;

    # 请更改为你的证书路径
    ssl_certificate certs/default.cer;
    ssl_certificate_key certs/default.key;

    # 请更改为你的镜像域名
    server_name jsd.rehiy.com;

    location / {
        proxy_pass https://cdn.jsdelivr.net;
        proxy_set_header Host $proxy_host;
        proxy_set_header Accept-Encoding '';
        proxy_ssl_server_name on;
        proxy_ssl_name $proxy_host;
        proxy_redirect / /;
        # Proxy Cache
        proxy_cache jsdelivr;
        proxy_cache_lock on;
        proxy_cache_lock_timeout 15s;
        proxy_cache_use_stale updating;
        proxy_cache_background_update on;
        proxy_cache_key $host$request_uri;
        proxy_cache_valid 200 301 302 30d;
        proxy_cache_valid 500 501 502 503 15s;
        proxy_cache_valid any 5m;
        # Replace Domain
        sub_filter_once off;
        sub_filter_types application/javascript application/json text/xml text/css;
        sub_filter '$proxy_host' '$host';
    }

}

# 缓存路径请根据需要更改
proxy_cache_path /var/tmp/nginx/jsdelivr levels=1:2 use_temp_path=off keys_zone=jsdelivr:300m inactive=30d max_size=30g;

Use jsdelivr mirror site

Replace in batches in your site source code cdn.jsdelivr.net is jsd.rehiy.com and you can use your own jsd image.

Of course, you can also insert the following code into your site nginx configuration, without modifying the site source code and replace it with your own mirror site.

sub_filter_once  off;
sub_filter_types application/javascript application/json text/xml text/css;
sub_filter 'cdn.jsdelivr.net'  'jsd.rehiy.com';

The above is the detailed content of How to build jsdelivr mirror station with nginx. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:yisu.com. If there is any infringement, please contact admin@php.cn delete