На вашому сервері використовується популярний набір програмного забезпечення у вигляді панелі управління ISPManager, веб-сервера Apache і nginx в якості www-прискорювача?
Зверніть увагу на те, що nginx не віддає заголовки Expires. Якщо для згенерованих інтерпретатором PHP документів це не завжди важливо, то статичні дані бажано віддавати з подібним заголовком, дозволяючи броузерам відвідувачів більш активно використовувати кешування.
Є два варіанти, як домогтися видачі заголовка Expires.
Якщо у Вас мало сайтів, то в текстовому редакторі відкрийте nginx.conf (в Linux-системах він зазвичай розташовується в /etc/nginx/, в FreeBSD – /usr/local/etc/nginx/), знайдіть конфігураційний блок server {} для Вашого віртуального хоста. В даному конфігураційному блоці є розділ location для обробки статичних докуменов. Саме в цьому блоці додайте рядок expires Xd, де Х - кількість днів валідності даних. Наприклад, expires 7d вкаже браузеру, що зображення і файли CSS/JS можна кешувати протягом тижня.
В кінцевому підсумку у Вас блок location буде виглядати приблизно так:
1
2
3
4
5
6
7
|
location ~* ^.+.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
root /var/www/username/data/www/usernamesite.ru;
access_log /var/www/nginx-logs/usernamesite isp;
access_log /var/www/httpd-logs/usernamesite.ru.access.log ;
error_page 404 = @fallback;
expires 7d;
}
|
Друге завдання - навчити панель вказувати параметр expires для статики у всіх віртуальних серверів в файлі конфігурації nginx. Для цього створюємо файл /usr/local/ispmgr/etc/server.templ наступного змісту:
1
2
3
|
location ~* ^.+.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
expires 7d;
}
|
Перезавантажуємо панель (killall ispmgr), створюємо новий вебсайт через ISPManager і перевіряємо, що параметр expires коректно вказано в описі свіжо створеного сайту в файлі nginx.conf.
Немає коментарів
Ви можете залишити коментар першим.