SPDY и TLS в Apache
SPDY — модная нынче замена протоколу HTTP от Google. Не просто костыль от “корпорации добра”, а поддерживаемый браузерами стандарт и кандидат на включение в HTTP/2.0
Фичи: во-первых, цель — чтобы все ресурсы страницы были отданы за 1 соединение (очень заметно, если на странице подключается много мелких файлов), во-вторых, простота настройки.
Установка в CentOS 6:
- качаете и устанавливаете mod-spdy-beta_current_x86_64.rpm (64 бита) или mod-spdy-beta_current_i386.rpm (32 бита)
- перезагружаете апачу
всё, у вас SPDY. В nginx тоже должно быть просто, но у меня Apache
Недостатки (а как же без них):
- Работает только через SSL (пока)
- несовместим с Apache mod_php
Тут в принципе всё решаемо. PHP перенастраивается на работу с FastCGI — и лучше сделать так как можно скорее, т.к. от mod_php много и других проблем, таких как чушь с правами на файлы и требование неоптимальной версии апача — Apache MPM Prefork
С SSL чуть хитрее — многие помнят (а у многих и до сих пор крутится соответствующая древность на серваках) те несладкие времена, когда для поднятия сервака на https:// требовалось каждому хосту раздать по IP-шнику. Так вот, эти времена прошли и можно без нервов сделать веб чуть безопаснее
Надо убедиться что
- ваш OpenSSL версии 0.9.8k и старше (и TLS в нем не выключен)
- апача собрана с этой версией OpenSSL
- установлен mod_ssl
Для CentOS 6 (не 5!) всё собрано соответственно, так что надо просто установить
Всё! У вас сервак с поддержкой SNI, которая позволяет обходить ограничения старых версий SSL
Рекомендуется еще в конфиг Apache добавть такую строку: SSLStrictSNIVHostCheck (on|off)
on закроет доступ старым браузерам, не умеющим работать с SNI (премногоуважаемый всеми IE6, Firefox младше 2.0, Safari младше 3.2.1, Opera младше 8.0, Google Chrome такое с рождения умел), off позволит им заходить, тем не менее, устрашая “неверными” сертификатами. Я подумал чутка и поставил on. Ибо нефиг