.htaccess ускорение сайта

Здесь мы рассмотрим, как с помощью файла .htaccess мы можем добиться значительного ускорения работы сайта. А именно — реализуем gzip-сжатие статики (js, css) и включим браузерное кэширование.

.htaccess? Что это?

В корне сайта (а также в корнях модулей), если включить показ скрытых файлов можно увидеть файл с именем .htaccess (именно с точкой в начале). Этот файл позволяет локально настроить опции сервера Apache такие как переадресация, кодировка по умолчанию, фильтры доступа и пр.
Обязательно познакомьтесь с возможностями настройки .htaccess, чтобы гибко настраивать работу вашего сайта. Особенно, если сайт находится на шаред-хостинге, и редактировать настройки сервера глобально (через php.ini или конфигурационные файлы Apache) невозможно.

Начнём с gzip-сжатия

Gzip-сжатие

открываем файл .htaccess в любом текстовом редакторе и добавляем вот такой кусок кода:

Сохраняем, смотрим.
Для тестирования скорости работы сайта можно воспользоваться сервисом https://developers.google.com/speed/pagespeed/insights/

Проследите разницу в показателях скорости сайта при включённом gzip-сжатии и без.

браузерное кэширование

Добавляем в .htaccess

Теперь сайт будет загружаться ещё быстрее за счёт включённого браузерного кэширования.

Сравнить результаты также можно по ссылке, приведённой выше

CMS WordPress

Почему и когда WordPress — это хорошо? =)

Почему я не использовал WordPress раньше?

Идея написать эту статью родилась у меня, когда ко мне обратились в очередной раз с просьбой создать «просто сайт».
Под «просто сайтом» подразумевалось некое подобие сайта-визитки, где основые требования были такие: сайт должен быть красивый, понятный, объяснять кто мы и что мы предлагаем. Ничего оригинального.

Проанализировав ранние подобные просьбы я пришёл к выводу, что я очень много потреял времени и ресурсов на разработку подобных сайтов по простой причине — я всегда использовал язык PHP. Чуть позже я «созрел» до использования фреймворков, и это упростило разработку. Но упростило ненамного.

Читать далее

Диалоги с последним сообщением из базы данных MySQL

При разработке сайта с функционалом социальной сети на странице сообщений (например, как в ВКонтакте) мы должны выводить список диалогов с пользователем. При клике на диалог — открывается сама переписка. Давайте разберёмся, как группировать сообщения в диалоги и выводить их в нашем разделе сообщений.

Именно с выводом этого списка диалогов очень часто возникают сложности, ведь диалог — это по сути выборка всех сообщений к пользователю, сгруппированных по отправителю и отсортированных по убыванию даты (или id записи, если записи добавляются на страницу последовательно). Логика не из самых лёгких, особенно для неопытных программистов.

Читать далее

Сброс кэша и сохранённых настроек для конкретного сайта в Google Chrome

Для того, чтобы сбросить все сохранённые в кэше настройки в браузере Google Chrome есть универсальный способ — Cntrl+H -> очистить историю, выбираем отрезок времени, за который мы будем избавляться от сохранённых данных и подтверждаем выбор. Результат, конечно, известен — мы освобождаемся от всех сохранённых настроек для нашего браузера.

Читать далее

Yii2. Отключаем кэширование для браузеров

Итак, что такое браузерное кэширование?

При работе с фреймворком Yii2, наверняка многие заметили, как вся статика (CSS-стили, картинки, JS) загоняются в кэш при публикации сайта на хостинг (или, говоря профессиональным жаргоном, «В продакшене»). Знакомо? Это как раз тот самый случай, когда мы «выкатываем» новую правку в фронтенд-части нашей разработки, будь то новый стиль или картинка, а на проде её не наблюдаем. И это именно тот самый случай, где чтобы увидеть изменения нужно сбрасывать кэш браузера, заходить в режиме «инкогнито» или открывать в другом браузере.

Читать далее

Функция перевода фразы на любой язык через Google Translate

Здесь я хочу поделиться функцией, которая переводит фразу на любой иностранный язык, используя известный сервис Google Translate.

Функция принимает всего три параметра: код исходного языка, код языка перевода и текст фразы.

Читать далее

Запись опубликована автором в рубрике PHP с метками .