通过将所有 png/jpg 图片转换成 webp,减少加载图片所需流量和时间
cat /etc/nginx/sites-enabled/disxj.conf
server {
...
location @fallback_static {
root $public;
add_header Access-Control-Allow-Origin *;
try_files $uri =404;
}
...
location ~* \.(webp|avif)$ {
add_header Access-Control-Allow-Origin *;
try_files $uri =404;
}
location ~* \.(gif|png|jpg|jpeg|bmp|tif|tiff|ico)$ {
add_header Access-Control-Allow-Origin *;
proxy_pass http://127.0.0.1:2350;
#proxy_pass http://127.0.0.1:2350$uri;
proxy_connect_timeout 3s;
proxy_read_timeout 5s;
error_page 502 503 504 = @fallback_static;
}
...
cat /srv/webpsh/docker-compose.yml
services:
webp:
image: webpsh/webp-server-go
# image: ghcr.io/webp-sh/webp_server_go
restart: unless-stopped
#command: ["/usr/bin/webp-server", "--config", "/etc/config.json", "-prefetch", "-jobs=1"]
environment:
- MALLOC_ARENA_MAX=1
- LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.2
# - LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4.5.6
- WEBP_ALLOWED_TYPES=jpg,png,jpeg,bmp,gif,heic,nef,webp,avif,tif,tiff,ico
#- WEBP_CONVERT_TYPES=webp
volumes:
- /var/www/discourse/public:/opt/pics
- ./exhaust:/opt/exhaust
- ./metadata:/opt/metadata
ports:
- 127.0.0.1:2350:3333
deploy:
resources:
limits:
memory: 500M
cpus: '1.5'