[Javascript] Déclarer Array et Object

10 01 2011

Petit memo synthaxique sur la déclaration/construction de tableaux (Array) et d’objets (Object) en Javascript :

Array (tableaux)

/* Déclaration puis Remplissage */
var tableauPays = new Array();
OU var tableauPays = [];
// tableauPays[] = "Angleterre"; // Ceci ne marche pas, on n'est pas en PHP !
tableauPays.push("France");

/* Les 2 en même temps (Construction) */
var tableauPays = new Array("Angleterre", "France");
var tableauPays = ["Angleterre", "France"];

/* Lecture */
alert(tableauPays[0]+', '+tableauPays[1]);

Objet (tableaux associatifs)

/* Déclaration puis Remplissage */
var pays = new Object();
OU var pays = {};
pays.nom = "France";
pays.langue = "Français";
pays.presidents = new Array("Mitterand", "Chirac");

/* Les 2 en même temps (Constructor) */
var pays = {
	nom        : "France",
	langue     : "Français",
	presidents : ["Mitterand", "Chirac"]
};

/* Lecture */
alert("En "+pays.nom+" on parle "+pays.langue);


Configurer un serveur web/FTP en local

7 01 2011

Pouvoir donner accès depuis internet à un serveur web (Apache, HTTP) ou FTP (Filezilla Server) peut être très pratique.

On peut par exemple utiliser un serveur FTP pour échanger un fichier avec un amis, sans avoir besoin de passer par un service tiers comme megaupload, ou une boite mail.

Si vous faites du développement web, ça peut servir à montrer à quelqu’un le site que vous developpez (le client, ou un amis), directement sur votre machine, en temps réel.

Votre ordinateur sera accessible via son adresse IP publique (attribuée automatiquement par votre FAI), que vous pouvez connaitre facilement).

Configurer les serveurs

Je ne vais pas m’attarder sur la configuration des serveurs, il y a pleins de tutos sur le net.

Serveur FTP

J’utilise Filezilla Server, la seule chose à faire et de s’assurer que le serveur écoute bien toutes les adresses : menu Edit > Settings > IP bindings : il doit y avoir “*” dans ce champ.

Serveur Web (Apache)

Pour le serveur web c’est un peu plus subtil. Il faut aller dans le fichier de configuration d’apache (httpd.conf), et ajouter l’instruction Listen de manière à ce qu’Apache écoute bien l’IP publique de votre ordinateur.

Le mieux reste d’écouter toutes les IP d’un ou plusieurs ports, n’ayons pas peur de viser large :

Listen 80   #(écoute toutes les IP sur le port 80)
Listen *:81 #(autre notation, écoute toutes les IP du port 81)

Note : pour accéder à un serveur HTTP  sur un port autre que 80 (port par défaut), il suffit d’ajouter “:<numero_de_port>” après le domaine.
Exemple : www.google.fr:81 permet d’accèder à google sur le port 81. Bien entendu il n’y a pas se serveur web sur ce port chez google, c’est juste un exemple.

Configurer le routeur

Voila le principal intérêt de ce billet. Bien souvent, les soucis viennent de la configuration du routeur, ou de la “box”.

Maintenant, la majorité des ordinateurs chez les particuliers ne se connecte pas directement à internet (comme au temps des modem ADSL USB ou 56k).
Ils sont reliés à un modem/routeur (une livebox, une freebox, une neufbidule ou encore un matériel tiers : netgear, linksys, bewan, cisco…) via le réseau local.

Et c’est ce modem/routeur qui est connecté à internet…

L’ennui, c’est que les modem/routeur ont tendance à perturber les communications entre internet et l’ordinateur qui héberge vos serveurs web et FTP.

Pour que tout ça fonctionne, il faut effectuer 2 opérations :

  • ouvrir les ports utilisés par nos serveurs (80 pour Apache et 21 pour FTP)
  • rediriger ces ports vers la machine hôte

L’IP locale de l’ordinateur qui héberge les serveurs (hôte) est 192.168.1.10.
Nous, on souhaite que l’on puisse accéder au serveur FTP via internet, donc via l’IP publique : 94.210.123.123, sur le port 21.

Pour cela, il faut rediriger le port 21 du routeur veut le port 21 de 192.168.1.10.
Idem pour le serveur web, mais sur le port 80.

L’interface d’administration du routeur permet de faire cela (http://192.168.1.1 ou http://192.168.0.1).

Firewall, fais pas chier !

Dernier petit détail, et non des moindre : si vous êtes sous windows (XP, Vista ou Seven), le pare-feu intégré va vous emmerder en bloquant le réseau sans même vous avertir avec une fenêtre style “voulez-vous autoriser le programme xxxxxx à se connecter à internet”.

Avant de vous lancer, commencez par désactiver le pare feu (dans panneau de configuration).
C’est un conseil que je vous donne, si vous ne voulez pas vous arracher les cheveux en hurlant “POURQUOI CA MARCHE PAS !!? B#~@ |$£è !”.

Tester ses serveur

Il existe un certain nombre d’outils sur internet que vous pouvez utiliser pour tester votre configuration.

Scanner de port
C’est un outil qui vous dit si tel ou tel port est ouvert sur votre IP publique.

Je vous recommande celui-ci :
http://www.t1shopper.com/tools/port-scan/
Et dans le même temps, je vous déconseille fortement celui-là :
http://www.frameip.com/scan/
Il répond un peu n’importe quoi (il vous dira que tel port est fermé alors que c’est faux, et vice versa).
Attention, il ne faut pas confondre un port ouvert et un port ouvrable. Si le scanner vous dit que tel port est fermé, ça ne veut pas forcément dire que le routeur bloque ce port, c’est peut être simplement qu’il n’y a aucune application qui écoute actuellement ce port (c’est le cas pour le port 21 si vous arrêtez le Filezilla Server par exemple).

Test FTP
http://www.g6ftpserver.com/fr/ftptest
Super site, vous entrez l’IP, username, password et port, et le site essai de se connecter en FTP depuis internet.

Test serveur web
http://corrigesduweb.com/test-page-code.php
Ce site affiche le code HTML de l’URL que vous lui fournissez.

Méfiez vous des apparences. Parfois l’adresse publique de votre serveur web (ex: http://94.210.123.123:81) sera inaccessible depuis votre réseau local, alors que tout va fonctionner sans problème depuis internet. Donc pensez à utiliser ces service au lieu de tester directement depuis chez vous.



Windows 7 : Ouvrir une invite de commande dans le répertoire courant

1 01 2011

Parfois, les ingénieurs de Microsoft ont du génie. Ça ne dure pas longtemps, mais il leur arrive d’avoir de très bonnes idées.

Il est possible d’ouvrir une invite de commande (ex MS DOS, un terminal quoi) directement dans le répertoire courant, dans l’explorateur.

Ça évite de devoir utiliser systématiquement la commande cd “<chemin>”, le truc bien relou…

Alors pour faire ça c’est super simple. Faites un clic droit dans une fenêtre de l’explorateur windows :

Comme vous pouvez le voir, y’a rien qui peut nous aider…

Maintenant refaites un clic droit, mais en maintenant le bouton shift (majuscule) appuyé :

Ça déglingue hein ?

Super pratique pour utiliser avec mon billet Importer un gros fichier dans MySQL.

Cette fonctionnalité a été introduite dans Windows Vista, si vous avez une version antérieure de windows, allez lire ça (US).



Avis Bewan 900 (modem routeur)

30 12 2010

C’est de la merde en barre !

J’ai acheté un modem routeur ADSL 2+ Bewan 900 en juillet 2009 pour remplacer un modem Ethernet Netgear DM111P (qui ne permettait pas de connecter plusieurs ordinateurs).

Après 1 an et demi d’utilisation, je peux le dire, c’est une belle saloperie !

Lire la suite »



Lecteur réseau FTP

28 12 2010

Se connecter à un serveur FTP via un lecteur réseau peut être très pratique pour éditer des fichiers en ligne par exemple.

L’intérêt d’utiliser un lecteur réseau est que vous utilisez le FTP comme n’importe quel autre volume : disque dur, clé USB, disquette 3.5″ (nan je déconne), partition…

Lire la suite »



Train chasse neige

27 12 2010

A l’heure ou 10cm de neige sur les voies suffisent à la SNCF pour fermer toute une ligne de TER, voila comment il font les américains, quand ils ont 1 mètre 50 :

Et pour la route y’a ça aussi :



HTML5, la mort du Flash ?

26 12 2010

HTML5 est annoncé comme un révolution dans le petit monde du web.

En fait, c’est l’association de 3 technologies : HTML5, CSS3 et Javascript (AJAX) qui est censée apporter un grand changement.

Mais est-ce que cela signifie que Flash et son pseudo concurrent Silverlight vont disparaître ?

Pas si sûr. Aujourd’hui (juste avant la révolution), Flash sert à pas mal de choses :

  • Jeux flash
  • Applications interactives
  • Sites “full flash”
  • Player multimédia (vidéo et audio)
  • Protocole streaming (RMTP)
  • Animations SWF : publicités, “gif amélioré”

Lire la suite »



Volkswagen, une voiture de vieille ?

21 12 2010

Alors, la golf, c’est une voiture de vielle mémé ou pas ?



Quiz écolo à la con du jour

18 12 2010

En moyenne, qu’est ce qui consomme autant de carburant qu’une clio durant toute sa vie ?

  • Un seul décollage de 747
  • 2h de fonctionnement d’un sous-marin
  • 3 courses de formule 1
  • 4 journées barbecue chez Gérard Depardieu

Voir la réponse

Ça craint !



Lettres aux assurances

18 12 2010

Parfois, les assureurs reçoivent de drôles de lettres :