首先,你需要有一台安装了 nginx
的服务器。推荐使用腾讯云轻量服务器的Matomo镜像,其中集成了最新稳定版 nginx
、php
、mariadb
、Matomo
等服务端软件。
把下面的 nginx
配置保存为 jsdelivr.conf
,然后上传到你的 nginx
站点配置目录中, 一般为 /etc/nginx/include
或者 /etc/nginx/http.d
。
使用上面提到的 Matomo
镜像,请上传到 /usr/local/lighthouse/softwares/nginx/conf/include
目录
使用宝塔镜像,可以替换下其生成的站点配置
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;
在你的站点源码中批量替换 cdn.jsdelivr.net 为 jsd.rehiy.com 即可使用自己的jsd镜像了。
当然,也可以把下面的代码插入到你的站点 nginx
配置中,不修改站点源码替换为自己的镜像站。
sub_filter_once off; sub_filter_types application/javascript application/json text/xml text/css; sub_filter 'cdn.jsdelivr.net' 'jsd.rehiy.com';
以上是nginx如何搭建jsdelivr镜像站的详细内容。更多信息请关注PHP中文网其他相关文章!