Налаштування WEB сервера Lighttpd MySQL PHP5 Стиснення статики (з використанням mod_compress) у Debian

Даний сервер відрізняється помірним апетитом до ресурсів системи і високою швидкістю роботи, необхідність його встановлення виникає тоді, коли необхідно роздати велику кількість різних файлів, що успішно піддаються стиску, при цьому заощадивши пропускну здатність каналу. Це дозволяє завантажувати сторінки користувачам з низькою швидкістю з'єднання за цілком прийнятний час. Користувачі швидкісних каналів різниці не відчують, плюс трохи знизиться навантаження на сервер, хоча для комфортного серфінгу по сайтах вистачить і 128Kbps, а завантаження великих файлів - окрема тема для обговорення.

Встановлюємо веб-сервер Lighttpd:

Встановлюємо MySQL 5:

Під час встановлення вказуємо пароль для користувача root, який керуватиме базами даних.(необхідно вказати новий пароль та підтвердження!)

Встановлюємо PHP5

Налаштовуємо PHP, нам необхідно знайти та редагувати конфігураційний файл php.ini

Там необхідно знайти та розкоментувати рядокcgi.fix_pathinfo=1Зберігаємо зміни виходимо. Активуємо модульfastcgi

Тепер нам необхідно створити символьне посилання, яке буде вказувати з/etc/lighttpd/conf-enabled/10-fastcgi.confдо директорії/etc/lighttpd/conf-available/10- fastcgi.conf

Перевіряємо працездатність PHP5 як Fastcgi:

Створимо файлtest.php

Додамо до нього таке:

Все добре, але встановлений PHP не підтримує роботу з MySQL, необхідно це виправити. До встановлюємо такі пакети:

Чекаємо закінчення завантаження та встановлення і перезапускаємо WEB сервер:

Повертаємося до нашого браузера і втиснемо F5 абоОновити сторінкуі після оновлення, знаходимо розділ MySQL, якщо він присутній-значить PHP підтримує роботу з СУБД.

стиснення

Додаємо кешування та стиснення файлів за допомогою mod_compress

Директорії для кешу створюються автоматично і знаходяться /var/cache/lighttpd/compress/

З приводу директорії в якій будуть зберігатися стислі файли, її краще всього розташовувати на найбільш швидких секторах жорсткого диска або RAID масиву, ну а в ідеалі, винести їх в окремий розділ, що знаходиться на SSD. Загалом, принцип простий - чим швидше ці файли будуть віддані користувачеві, тим краще.

Активуємо використання стиснення в PHP

Нам необхідно знайти рядокzlib.output_compressionі встановити значенняOnза умовчанням вартоOff, має виглядати:

Оновлюємо наш тестовий скрипт і перевіряємо активований стиск чи ні, найкраще скористатися пойском по сторінці, по ключу gzip, має бути enabled

налаштування

Тепер нам необхідно очищати директорію від старих файлів, наприклад, які старші 10 днів. Це необхідно проводити для того, щоб застарілі файли не накопичувалися і не забивали вільний дисковий простір. Можна створити завдання в Cron:

З цього можна зрозуміти що завдання буде виконуватися о 2:01 ночі і видалятиме файли з директорії/var/cache/lighttpd/compress/усі файли старше 10 днів.