En poursuivant votre navigation sur ce site, vous acceptez l’utilisation de cookies pour réaliser des statistiques de visites. X

Contact

N'hésitez pas si vous avez une questions, une idée ou tout à autres choses à nous dire ! Vous pouvez également directement nous envoyer un mail à contact@lilleweb.fr.

Aujourd’hui, je voulais vous parler d’un module npm que j’ai crée il y a peu prénommé localhost-now.

Cet article n’a pas pour but d’expliquer comment créer un serveur web avec Node.js, un cours sur ce sujet est actuellement en pleine rédaction et vous expliquera en détail la procédure à suivre. De plus, j’expliquerai dans un autre article la procédure à suivre pour créer un module npm et le publier.

But du module

J’ai crée ce module pour permettre de lancer un serveur web depuis n’importe quel répertoire, tout cela via une ligne de commande. L’idée m’est venue après avoir formaté mon ordinateur, je devais installer Apache uniquement pour tester quelques XHR. Pour des raisons de sécurités les navigateurs bloquent les requêtes HTTP depuis le protocole file:// et non http://.

Installation

L’autre intérêt est son installation simpliste et rapide, il vous suffit d’avoir Node.js et d’installer le module via npm en faisant :

npm install -g localhost-now

L’argument -g pour global est important car il vous permet d’installer le module dans votre ordinateur, créant ainsi un alias dans votre terminal si celui-ci vous en fournit un (ce qui est le cas pour localhost-now).

Une fois le module installé, vous aurez alors accès à la commande localhost.

Permission denied

Il se peut que vous soyez obligé de passer en mode super utilisateur pour pouvoir installer vos modules de manière global. Cela dépend comment vous avez configuré npm.

Utilisation

Pour le moment vous pouvez utiliser localhost-now de 2 façons :

  • Sans argument
  • Avec un argument

Si vous lancez la commande localhost sans argument, cela va vous créer un serveur web dans le répertoire courant sur le port 1337.

Commande localhost

Vous désirez utiliser un port spécifique ? Il vous suffit de le préciser en argument par exemple localhost 8080 et le serveur écoutera alors le port 8080.

Commande localhost avec port

Error: listen EADDRINUSE

Cette erreur peut paraitre non explicite pour certains d'entre vous, elle indique tout simplement que le port que vous souhaitez écouter est déjà utilisé.

Evolutions à venir

Dans un futur proche, j’aimerais que ce module soit capable de :

  • Créer un démon pour que le script n’occupe pas le terminal et permettre le lancement au démarrage de la machine
  • Créer un serveur en précisant un chemin relatif ou absolu
  • Afficher un message d’erreur plus explicite si l’adresse est déjà utilisée

Si vous avez des idées à soumettre n’hésitez pas à forker le projet sur Github ! Pour les non-adeptes de Github, n’hésitez pas à proposer cela en commentaire !

Thomas DECONINCK Thomas DECONINCK Profil Github de Thomas DECONINCK

Développeur front-end à altima°, Thomas est un grand passionné de JavaScript mais également de nouvelles technologies ! Il aime participer à des débats sensibles comme la supériorité d'Ember face à Angular ou encore l'indentation avec des espaces plutôt que des tabulations.
C'est également un grand fan de manga qui n'hésitera pas à vous parler de ses dernières découvertes !

comments powered by Disqus

Partager