Назад | Перейти на главную страницу

Apache HTTPD с SPDY 3.1

SPDY 3.1 был выпущен недавно. Google пожертвовал проект mod_spdy для apache (https://code.google.com/p/mod-spdy/). Можно ли использовать SPDY 3.1 с Apache Httpd?

Проблема в том, что Chrome 40.x отказался от поддержки SPDY / 3 и поддерживает только SPDY / 3.1, но модуль mod_spdy для Apache поддерживает только SPDY / 3, поэтому в основном нет SPDY для пользователей Chrome, если вы используете Apache в качестве веб-сервера.

mod_spdy в настоящее время находится в плохом состоянии: ни Google, ни Apache поддерживают его после того, как Google передал его Asf. Google недавно сделал заявление, что они откажутся от поддержки SPDY из Chrome в начале 2016 года, но они забыли сказать, что они уже начали отказываться от более старых версий SPDY (включая SPDY / 3) (мне, кстати, нравятся эти частично верные утверждения) , так что в основном, если вы используете Apache, то для пользователей Chrome вы не можете предоставить SPDY, за исключением реализации SPDY / 3.1 самостоятельно.

Итак, как это было для «не делай зла»? :-)

Смотрите подробности: https://groups.google.com/forum/#!topic/mod-spdy-discuss/FPEj0zG5I0Y и https://code.google.com/p/mod-spdy/issues/detail?id=100&colspec=ID%20Type%20Status%20Priority%20Owner%20Summary%20Stars

Один из вариантов, который вы можете рассмотреть, - это перейти на Nginx и использовать там реализацию SPDY / 3.1.

Google mod_spdy работает на Apache 2.2, но 2,4 порт были некоторые проблемы, есть нить на нем уже.

Я нашел описание как кому-то удалось его скомпилировать, но я еще не тестировал.

Поскольку я не могу комментировать из-за отсутствия репутации, мне придется ответить, хотя это может быть так же "не по теме", как и ответ Алексуса.

Я нашел описание, которое упоминалось несколько дней назад, и успешно заработало. Совершенно прямолинейно, если кому-то интересно попробовать. Хотя я должен упомянуть, что это, к сожалению, только добавляет поддержку SPDY / 3 к моему домену, а не SPDY / 3.1, о котором идет речь.

Chrome 36 и Firefox 31.4 ESR успешно подключаются к этому тестовому домену через SPDY / 3. (Используя надстройки индикатора SPDY для Firefox и Chrome.) Qualys SSL Labs подтверждает, что сервер имеет поддержку SDPY / 3 и SPDY / 2.

При подключении к google.com с этими версиями браузера индикаторы SPDY говорят мне, что используется SPDY / 3.1.

Но в Chrome 40 и 41 и Firefox 36+ индикатор SPDY остается серым при подключении к моему тестируемому домену. При подключении к google.com оба браузера говорят, что соединение уже использует HTTP / 2. Так что не только Chrome, но и Firefox уже отказались от поддержки SPDY 3.0.

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

Наконец, отвечу на вопрос этой ветки: Нет. Мне кажется, что вы еще не получите "официальную" поддержку SPDY / 3.1 для apache2. Как вы можете прочитать на github, они еще не говорят на этом. А так как этому «еще» уже около полугода, думаю, этого не произойдет. Итак, как упоминал alexus, следует придерживаться HTTP / 2. Следите за эта страница github где, надеюсь, довольно скоро появится apache2.

И, наконец, «но». ;) Вы можете отменить изменение, на которое я ссылался, и перекомпилировать mod_spdy, чтобы он предлагал SPDY / 3.1. С моей тестовой машиной это как-то работает, но у меня возникают некоторые проблемы с Firefox, когда я говорю, что OCSP-серверу нужно попробовать позже, которые исчезли через 5 минут. Но я действительно не знаю, возвращаются ли браузеры каким-то образом к SPDY / 3, но показывают согласованный SPDY / 3.1 или что-то в этом роде. Я не доверяю этой настройке прямо сейчас и мне нужно провести дополнительное тестирование. Итак, чтобы снова ответить на вопрос ветки: Да, возможно! :) Если вы придерживаетесь описания, которое дал hoppy, измените несколько строк кода и скомпилируйте его снова. Вроде как-то работает, но прямо сейчас я бы не советовал.

На самом деле я тестировал SPDY3.1, не удаляя спецификации заголовка 3.1 из источника перед компиляцией.

Все работало нормально, кроме POST и загрузки файлов с PHP-FPM. Кроме того, несмотря на отсутствие подробностей об этом в журнале ошибок, трафик снизился на 30%. Конечно, это может быть совпадение, но пост и проблемы определенно реальны.

Он был протестирован на сервере с примерно 200 000 просмотров страниц в день.

Извините, если это немного не по теме, но я бы даже не стал беспокоиться, поскольку Google отказывается от SPDY и переходит на HTTP / 2:

Блог Chromium: Привет, HTTP / 2, прощай, SPDY