SPDY (prononcez "SPeeDY") est un nouveau protocole réseau dont le but est d'accélérer le web. C'est l'alternative de Google au protocole HTTP et un candidat pour HTTP/2.0. SPDY augmente HTTP avec plusieurs fonctionnalités liées à la vitesse telles que le multiplexage de flux et la compression d'en-tête. Pour utiliser SPDY, vous avez besoin d'un serveur Web et d'un navigateur (comme Google Chrome et les prochaines versions de Firefox) qui prennent tous deux en charge SPDY. mod_spdy est un module Apache open source qui ajoute la prise en charge du protocole SPDY au serveur Apache HTTPD. Ce tutoriel explique comment utiliser mod_spdy avec Apache2 sur Debian Squeeze.
Je n'émets aucune garantie que cela fonctionnera pour vous !
1 Remarque préliminaire
SPDY fonctionne sur HTTPS, nous avons donc besoin d'un site Web compatible HTTPS pour tester SPDY. Veuillez noter que SPDY reviendra à HTTPS si le navigateur de l'utilisateur ne prend pas en charge SPDY ou si les choses tournent mal, donc l'installation de mod_spdy ne nuit pas à votre configuration existante.
Je suppose que vous avez une configuration LAMP fonctionnelle, comme décrit dans Installation d'Apache2 avec PHP5 et prise en charge de MySQL sur Debian Squeeze (LAMP).
À des fins de test, j'activerai simplement le site Web SSL par défaut fourni avec le paquet Apache de Debian (vous n'avez pas besoin de le faire si vous avez déjà un site Web SSL sur votre serveur).
Pour activer SSL, exécutez simplement :
a2enmod ssl
Pour activer le site Web SSL par défaut, exécutez :
a2ensite default-ssl
Redémarrez ensuite Apache :
/etc/init.d/apache2 restart
Accédez à l'URL du site Web SSL par défaut (par exemple, https://www.example.com) et testez si cela fonctionne (j'utilise le certificat auto-signé par défaut ici, c'est pourquoi j'ai un avertissement de certificat, mais cela n'a pas effet sur l'utilisation de SPDY):
2 Installation de mod_spdy
Google fournit des packages Debian pour mod_spdy sur https://developers.google.com/speed/spdy/mod_spdy/. Téléchargez simplement celui qui convient à votre architecture (32 ou 64 bits) sur votre serveur...
64 bits :
cd /tmp
wget https://dl-ssl.google.com/dl/linux/direct/mod-spdy-beta_current_amd64.deb
32 bits :
cd /tmp
wget https://dl-ssl.google.com/dl/linux/direct/mod-spdy-beta_current_i386.deb
... et installez-le comme suit :
dpkg -i mod-spdy-*.deb
apt-get -f install
(Cela ajoutera également le référentiel Google mod_spdy aux sources apt afin que le module soit tenu à jour :
cat /etc/apt/sources.list.d/mod-spdy.list
### THIS FILE IS AUTOMATICALLY CONFIGURED ### # You may comment out this entry, but any other modifications may be lost. deb http://dl.google.com/linux/mod-spdy/deb/ stable main |
)
Redémarrez ensuite Apache :
/etc/init.d/apache2 restart
La bonne chose est que mod_spdy n'a pas besoin d'être configuré, il fonctionne immédiatement !
(En fait, il existe un fichier de configuration, /etc/apache2/mods-available/spdy.conf, mais les paramètres par défaut devraient être corrects.
cat /etc/apache2/mods-available/spdy.conf
<IfModule spdy_module> # Turn on mod_spdy. To completely disable mod_spdy, you can set # this to "off". SpdyEnabled on # In order to support concurrent multiplexing of requests over a # single connection, mod_spdy maintains its own thread pool in # each Apache child process for processing requests. The default # size of this thread pool is very conservative; you can override # it with a larger value (as below) to increase concurrency, at # the possible cost of increased memory usage. # #SpdyMaxThreadsPerProcess 30 # Memory usage can also be affected by the maximum number of # simultaneously open SPDY streams permitted for each client # connection. Ideally, this limit should be set as high as # possible, but you can tweak it as necessary to limit memory # consumption. # #SpdyMaxStreamsPerConnection 100 </IfModule> |
Vous pouvez en savoir plus sur les options de configuration sur https://developers.google.com/speed/spdy/mod_spdy/install.
)
3 Tests
Testons maintenant si SPDY fonctionne. Nous avons besoin d'un navigateur prenant en charge SPDY. par exemple. Google Chrome. Ouvrez Chrome et rechargez votre site Web SSL (par exemple https://www.example.com) - il est important que vous le rechargez afin qu'il puisse utiliser SPDY (la première fois que vous l'avez chargé au chapitre 1, il a utilisé le HTTPS normal). Ensuite, ouvrez un nouvel onglet et saisissez l'URL
chrome://net-internals/#spdy
Si tout s'est bien passé, votre vhost SSL devrait maintenant être répertorié dans le tableau, ce qui signifie que le support SPDY fonctionne.
(En raison du mécanisme de secours de SPDY vers HTTPS, votre vhost SSL fonctionnera toujours dans tout autre navigateur qui ne prend pas en charge SPDY.)
4 liens
- SPDY :https://developers.google.com/speed/spdy/
- Apache mod_spdy :http://code.google.com/p/mod-spdy/
- Packages binaires mod_spdy :https://developers.google.com/speed/spdy/mod_spdy/
- Configuration de mod_spdy :https://developers.google.com/speed/spdy/mod_spdy/install
- Apache :http://httpd.apache.org/
- Debian :http://www.debian.org/