Service en ligne permettant de simuler des visites pour faire des tests de montée en charge d’un site/application.
Il est possible de l’essayer gratuitement avec un teste de moins de “50 visiteurs“.
Service en ligne permettant de simuler des visites pour faire des tests de montée en charge d’un site/application.
Il est possible de l’essayer gratuitement avec un teste de moins de “50 visiteurs“.
Voir rapidement les headers d’une reponse HTTP d’un serveur web peut s’avérer très pratique, pour cela, une réponse rapide : telnet.
Le protocole HTTP répond à la RFC 2616 du W3C.
Pour se connecter à un serveur, faire la ligne de commande suivante :
> telnet serveur num_port
par exemple :
%> telnet www.voila.fr 80
Une fois connecté, on va demander un document. On va utiliser la méthode GET. Par exemple sur la racine du site (ie / ) :
GET / HTTP/1.0 <CRLF><CRLF>
Il est important de préciser le protocole que l’on va utiliser après le document demandé (ici on demande du HTTP/1.0, ca aurait pu être du HTTP/1.1).
Il est primordial de placer 2 <CRLF> (ie des retours à la ligne) après la commande GET, pour signaler au serveur que la commande est complète.
On peut construire des requêtes plus compliquées, en enchainant les Headers, par exemple :
GET / index.html HTTP/1.0 <CRLF>Accept : text/html, image/gif <CRLF> User-Agent : Mozilla/4.0 (compatible ; MSIE 4.0 ; Linux X11 2.2.17) <CRLF><CRLF>
Les méthodes d’autorisation pour accéder à certaines zone d’un serveur HTTP répondent à la RFC 2617 du W3C.
Lorsqu’une zone du serveur est protégée par cette méthode, la demande d’un document de cette zone renvoie une réponse comme suit :
HTTP/1.0 401 Authorization RequiredDate: Wed, 23 Jan 2002 15:12:30 GMT Server: Apache/1.3.20 (Unix) (Red-Hat/Linux) ApacheJServ/1.1.1 mod_ssl/2.8.4 OpenSSL/0.9.6 WWW-Authenticate: BASIC realm="RealmName" Content-Type: text/html X-MTracker-Version: v4.0 build 49.5 Expires: Thu, 01 Jan 1970 00:00:00 GMT Last-Modified: Wed, 23 Jan 2002 15:12:30 GMT Cache-Control: no-cache must-revalidate Pragma: no-cache
Le Header important est WWW-Authenticate. Si l’utilisateur n’est pas déjà authentifié pour le Realm “RealmName“, une fenêtre pop-up apparaitra et demandera le login/password de l’utilisateur.
Pour s’authentifier en utilisant Telnet sur un serveur HTTP avec l’autorisation ’Basic’, il faut ajouter un Header “Authorization”, suivi d’une chaine encodée BASE64 composée du login et du password. La structure de cette chaine est :
login:password
Si l’on veut s’identifier comme l’utilisateur marc qui a le password antoine, on obtient l’encodage BASE64 suivant : bWFyYzphbnRvaW5l [1].
La requête à construire pourra donc être :
GET /servlet/protected/content/ HTTP/1.0 <CRLF> Authorization: Basic bWFyYzphbnRvaW5l <CRLF><CRLF>
Note : Attention à écrire Basic et non BASIC !
[1] obtenu grâce à la commande perl suivante : %> perl -MMIME::Base64 -e ‘print encode_base64(“marc:antoine”)’