Varnish en reverse-proxy: le problème des adresses locales

Si vous utilisez nginx ou Apache derrière Varnish, vous aurez remarqué que l’adresse IP du client récupérée est l’adresse locale (ou bien l’adresse du serveur hébergeant Varnish). Cela est le cas parce-que c’est Varnish qui créé la connexion TCP à nginx/apache, et non le client directement. Pour cela, nous allons tout simplement installer un module sur votre serveur Web, pour qui va utiliser une en-tête (X-Forwarded-For) pour connaitre l’IP du client.

Pour nginx

Il nous faut nginx compilé avec le module Real-IP (--with-http_realip_module), ce qui est le cas par défaut dans les paquets CentOS et Debian. Dans le fichier de configuration /etc/nginx/nginx.conf, dans la catégorie http {...}, ajoutez ça:

Redémarrez le serveur nginx, et c’est bon.

Pour Apache

Pour Apache, il faut installer le module RPAF2. Je vous invite à lire l’article très intéressant de wiki.tyk.nu.

facebooktwittergoogle_plusredditpinterestlinkedinmail

Piwik: des statistiques Web à la Google Analitycs

Google Analytics est le service gratuit (pour un usage modéré, mais relativement important) de Google permettant d’obtenir des statistiques très complètes sur les visiteurs ainsi que leurs comportements sur vos sites Web. Il peut également être comparé à Xiti, qui était l’un des premiers services gratuits de statistiques. Le principe est très simple: vous collez un bout de code JavaScript qui appelle une page Web sur le serveur de Google, Xiti ou autre suivant le service que vous utilisez. Ensuite, vous pouvez visualiser les statistiques de vos sites depuis une interface fort sympathique.

Google Analytics
Aperçu de Google Analytics
Aperçu de Xiti

 

 

 

 

 

 

 

 

Deux gros problèmes

À mes yeux, il y a deux gros problèmes

  • Le premier, est que toutes vos données sont stockées chez un prestataire qui n’a aucune garantie si vous ne payez pas un “abonnement” à leurs services.
  • Le second et le plus important, c’est que la vitesse de votre site Web dépend de la vitesse de leurs services: les statistiques étant propulsées par un script JavaScript, le navigateur de votre visiteur va attendre que ce script soit chargé avant de continuer à charger le reste de la page et de terminer le rendu. Ainsi, si le script met 100ms à se charger, dans une bonne partie des cas, l’affichage du côté visiteur sera retardé d’environ 100ms, ce qui n’est pas négligeable!

Par conséquent, il peut être très intéressant de trouver une alternative (open-source de préférence) pour stocker et gérer vous même vos statistiques, le plus simplement possible, de préférence. Le projet le plus abouti est Piwik.

Une alternative très intéressante

Piwik est une application open-source développée en PHP qui fourni tout l’arsenal pour obtenir des statistiques aussi intéressantes que Google Analitycs!

Tableau de bord de Piwik
Récapitulatif visites de Piwik

 

Pour installer Piwik, il vous suffit de télécharger le code PHP, de le mettre en place sur votre serveur Web, de suivre le processus d’installation très bien expliqué, et c’est partit!

Note: Vous pouvez également retrouver le processus d’installation plus détaillé sur le site Web de Piwik.

C’est donc tout naturellement que j’ai choisi Piwik pour récupérer des statistiques de mes sites Web.

facebooktwittergoogle_plusredditpinterestlinkedinmail

MyOnlineSSH: Connectez-vous en SSH depuis un simple navigateur Internet

Vous pouvez aussi voir la page du projet MyOnlineSSH.

MyOnlineSSH est un service permettant de se connecter à un serveur en SSH directement depuis votre navigateur. La configuration necessaire est très petite:

  • Un navigateur avec le JavaScript activé
  • Flash Player installé
  • Le port 80 ouvert

En effet, seul le port 80 suffit pour se connecter au SSH à l’aide de MyOnlineSSH comme vous pouvez le voir dans la page Aide de MyOnlineSSH.

Je vous invite donc à tester dès à présent MyOnlineSSH:

http://www.myonlinessh.com

D’ici peu, une traduction anglaise de MyOnlineSSH verra le jour pour nos amis anglophones.

facebooktwittergoogle_plusredditpinterestlinkedinmail