Назад | Перейти на главную страницу

Как добавить заголовки Expires в Nginx?

У меня есть сервер Ubuntu 18.04 с Drupal 8, и я вообще не владею сервером Nginx.

Я только что перенес свой старый сервер Apache на новый сервер Nginx. В моем файле htaccess в корне моего сайта у меня были заголовки Expires:

    <IfModule mod_expires.c>
      ExpiresActive On
      ExpiresDefault A1209600

      <FilesMatch \.php$>
        ExpiresActive Off
      </FilesMatch>
    </IfModule>

Как добавить эту мою конфигурацию Nginx?

Довольно просто. Судя по предоставленной вами конфигурации Apache, вы не хотите добавлять ее в файлы .php, но хотите использовать везде. Поместите в контекст вашего сервера следующее:

expires 1209600s;

Затем добавьте:

expires off;

На ваш location ~ '\.php$|^/update.php' блок. Вам не нужно добавлять это ни в один из ваших других блоков местоположения, которые работают на php, где у вас есть deny директива, rewrite директива или try_files директива, как deny не будет добавлять заголовок, а try_files и rewrite Blocks не является последним сопоставленным блоком местоположения, так как в результате произойдет внутреннее перенаправление, в результате чего сопоставление местоположения будет перезапущено после.

Обратитесь к Срок действия Nginx истекает документация.