Хотите узнать, как настроить функцию кэширования в браузере Apache? В этом руководстве мы покажем вам все шаги, необходимые для настройки функции кэширования браузера Apache на компьютере под управлением Ubuntu Linux.

• Версия Ubuntu: 18.04

Список оборудования:

В следующем разделе представлен список оборудования, использованного для создания этого учебника WordPress.

Все вышеперечисленное оборудование можно найти на сайте Amazon.

WordPress Playlist:

На этой странице мы предлагаем быстрый доступ к списку видео, связанных с установкой WordPress.

Не забудьте подписаться на наш канал на YouTube FKIT.

WordPress Связанное Учебное пособие:

На этой странице мы предлагаем быстрый доступ к списку учебных пособий, связанных с установкой WordPress.

Учебник - Настройка кэширования браузера Apache

Во-первых, вам нужно установить веб-сервер Apache.

На консоли Linux используйте следующие команды для установки Apache.

# apt-get update
# apt-get install apache2

Теперь вам нужно включить следующие модули Apache:

• mod_headers
• mod_expires

Используйте следующие команды для включения mod_headers и mod_expires.

# a2enmod headers
# a2enmod expires

# systemctl restart apache2

Отредактируйте файл конфигурации apache2.conf.

# vi /etc/apache2/apache2.conf

В конце файла введите желаемую конфигурацию кэширования браузера.

В качестве примера, вот наша конфигурация.

<IfModule mod_expires.c>
ExpiresActive On
FileETag None
ExpiresDefault "access plus 14 days"
ExpiresByType image/jpg "access plus 1 month"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/pdf "access plus 1 month"
ExpiresByType text/javascript "access plus 1 month"
ExpiresByType text/x-javascript "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
ExpiresByType application/x-shockwave-flash "access plus 1 month"
ExpiresByType text/css "now plus 1 month"
ExpiresByType image/ico "access plus 1 month"
ExpiresByType image/x-icon "access plus 1 month"
ExpiresByType text/html "access plus 1 days"
</IfModule>

Чтобы активировать новую конфигурацию, вам нужно перезапустить Apache.

# systemctl restart apache2

Имейте в виду, что вам нужно указать желаемое время кэширования браузера в соответствии с вашими потребностями.

Тестирование - Конфигурация кэширования браузера Apache

Чтобы протестировать конфигурацию кэша браузера, давайте создадим простую HTML-страницу с изображением

# cd /var/www/html
# wget https://techexpert.tips/wp-content/uploads/2017/12/TechExpert-Logo-Small.png
# vi test.html

Вот содержимое файла test.html.

<html>
<body>
<h1>TEST header</h1><br>
<img src="TechExpert-Logo-Small.png">
</body>

</html>

Установите необходимое программное обеспечение для проверки функции кэширования браузера Apache.

# apt-get update
# apt-get install wget curl

Используйте следующую команду, чтобы протестировать функцию кэширования браузера для документов HTML с помощью WGET.

Помните, что вам необходимо изменить 200.200.200.200 на IP-адрес вашего сервера.

# wget -S http://200.200.200.200/test.html

Вот результат настройки кэширования браузера до нашей конфигурации:

HTTP request sent, awaiting response...
HTTP/1.1 200 OK
Date: Fri, 14 Dec 2018 16:58:36 GMT
Server: Apache/2.4.29 (Ubuntu)
Last-Modified: Fri, 14 Dec 2018 16:19:49 GMT
ETag: "64-57cfdcce7b707"
Accept-Ranges: bytes
Content-Length: 100
Vary: Accept-Encoding
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html
Length: 100 [text/html]

Вот результат настройки Кэширования браузера после нашей конфигурации:

HTTP request sent, awaiting response...
HTTP/1.1 200 OK
Date: Fri, 14 Dec 2018 17:05:04 GMT
Server: Apache/2.4.29 (Ubuntu)
Last-Modified: Fri, 14 Dec 2018 16:19:49 GMT
Accept-Ranges: bytes
Content-Length: 100
Cache-Control: max-age=86400
Expires: Sat, 15 Dec 2018 17:05:04 GMT
Vary: Accept-Encoding
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html
Length: 100 [text/html] Saving to: ‘test.html.3’

Как вы можете видеть, наша конфигурация определяет однодневный кеш для документов HTML.

• ExpiresByType text / html «доступ плюс 1 день»

Результат WGET показывает, что файл HTML будет храниться до завтра.

• Истекает: сб, 15 декабря 2018 17:05:04 GMT

Используйте следующую команду, чтобы протестировать функцию кэширования браузера для изображений PNG с использованием CURL.

# curl -svo /dev/null http://200.200.200.200/TechExpert-Logo-Small.png

Вот результат настройки кэширования браузера до нашей конфигурации:

* TCP_NODELAY set
* Connected to 34.220.19.99 (34.220.19.99) port 80 (#0)
> GET /TechExpert-Logo-Small.png HTTP/1.1
> Host: 34.220.19.99
> User-Agent: curl/7.58.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Fri, 14 Dec 2018 17:24:32 GMT
< Server: Apache/2.4.29 (Ubuntu)
< Last-Modified: Sat, 24 Nov 2018 02:49:53 GMT
< ETag: "483-57b60277af640"
< Accept-Ranges: bytes
< Content-Length: 1155
< Content-Type: image/png
<
{ [1155 bytes data]

Вот результат настройки Кэширования браузера после нашей конфигурации:

* TCP_NODELAY set
* Connected to 34.220.19.99 (34.220.19.99) port 80 (#0)
> GET /TechExpert-Logo-Small.png HTTP/1.1
> Host: 34.220.19.99
> User-Agent: curl/7.58.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Fri, 14 Dec 2018 17:18:04 GMT
< Server: Apache/2.4.29 (Ubuntu)
< Last-Modified: Sat, 24 Nov 2018 02:49:53 GMT
< Accept-Ranges: bytes
< Content-Length: 1155
< Cache-Control: max-age=2592000
< Expires: Sun, 13 Jan 2019 17:18:04 GMT
< Content-Type: image/png
<
{ [1155 bytes data]

Как видите, наша конфигурация указывает кэш на один месяц для изображений PNG.

• ExpiresByType image / png «доступ плюс 1 месяц»

Результат CURL показывает, что файл PNG будет храниться до 13 января.

• Истекает: вс, 13 января 2019 17:18:04 GMT