Как включить кэширование объектов Nginx по умолчанию для всех сайтов одновременно?

Допустим, у меня 20 сайтов, и я хочу автоматизировать процесс вставки директив кэширования 1X1 nginx.conf и директив кэширования 1X20 на 20 различных виртуальных хостов, которые у меня есть?

Кроме того, мои виртуальные хосты уже были изменены Certbot и стали немного беспорядочными (Certbot 0.21.1-1 + ubuntu16.04.1 + certbot + 0.2 добавляет много пробелов и комментариев), поэтому я ' m теперь еще менее уверен, как эффективно включить кэширование объектов Nginx для всех моих сайтов.

Как бы вы сделали это эффективно?

0
задан 10 April 2018 в 19:25
1 ответ

Use includes.

Вот типичная конфигурация одного из моих сайтов:

server {
        server_name www.yes-www.org;

        root /srv/www/yes-www.org;

        access_log /var/log/nginx/yes-www.org-access.log nginx;
        access_log /var/log/nginx/cache.log cache;
        error_log /var/log/nginx/yes-www.org-error.log;

        ssl_certificate /etc/letsencrypt/live/www.yes-www.org/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/www.yes-www.org/privkey.pem;
        ssl_trusted_certificate /etc/letsencrypt/live/www.yes-www.org/fullchain.pem;

        include includes/listen-443;
        include includes/cloudflare;
        include includes/letsencrypt;
        include includes/ssl;
        include includes/ssl_stapling;
        include includes/hsts;
        include includes/csp_wordpress;
        include includes/favicon;
        include includes/wordpress;
        include includes/php;
        include /srv/www/yes-www.org/nginx.conf;

        location ~ /\.(ht|git) {
                deny all;
        }
}

Содержимое /etc/nginx/includes/letsencrypt, например:

location /.well-known/acme-challenge/ {
    root /var/www;
    try_files $uri =404;
}

В то время как /etc/nginx/includes/listen-443 состоит из:

listen 443 ssl http2;
listen [::]:443 ssl http2;

Таким образом, вы можете извлечь все, что повторяется среди блоков вашего сервера, и включить его в любое место, где вам это необходимо.

1
ответ дан 4 December 2019 в 15:59

Теги

Похожие вопросы