J'expliquerai le plus rudimentairement possible comment mettre en place une partie du système de fichiers sur un serveur local et y accéder depuis un navigateur pour vérifier le fonctionnement du développement d'applications Web.
C'est facile si votre environnement exécute Python. La bibliothèque Python standard dispose d'un module dédié qui peut être lancé directement depuis la ligne de commande. Les noms des modules sont différents entre Python 2 et 3, donc je vais vous expliquer chacun.
Python 2 utilise Simple HTTP Server. Si le numéro de port est omis, 8000 sera utilisé.
$ python -m SimpleHTTPServer [numéro de port (la valeur par défaut est 8000)]
Python 3 utilise http.server.
$ python3 -m http.server [numéro de port (la valeur par défaut est 8000)]
Maintenant, si vous accédez à http: // localhost: 8000
(ou simplement localhost: 8000
) depuis votre navigateur, le serveur démarrera avec le répertoire démarré en tant que racine. Il répond à l'accès au répertoire comme suit (identique au comportement par défaut du serveur Apache):
Quittez le serveur avec Ctrl-C.
Depuis Ruby 1.9.3, il existe une fonction httpd dans le module Kernel, qui peut être démarrée à partir de la ligne de commande comme suit. La fonction est la même que Python.
$ ruby -run -e httpd . -p 8000
En fait, je ne le savais pas jusqu'à présent, et je l'ai trouvé dans les messages associés affichés immédiatement après le téléchargement du premier brouillon (j'ai reçu un commentaire d'udzura immédiatement après. Merci). Mais si vous êtes un programmeur Ruby, je recommande toujours la méthode suivante.
Je suis un programmeur Ruby et j'utilise toujours le gem Rack (Ruby avant la version 1.9.3 est également acceptable). Tout d'abord, installez Rack.
Rack est utilisé par de nombreux frameworks Ruby. Surtout si vous avez installé Ruby on Rails, vous n'avez pas besoin de le faire.
$ [sudo] gem install rack
sudo est requis si Ruby est installé dans votre répertoire système. (J'utilise) rbenv et RVM Non requis si vous utilisez l'outil de changement de version.
Ensuite, créez un petit fichier nommé config.ru
dans le répertoire où vous démarrez le serveur. Le contenu n'est que la ligne suivante.
config.ru
run Rack::Directory.new '.'
Vous êtes maintenant prêt. Enfin, lancez-le avec la commande rackup
(ce qui suit est un exemple de démarrage). Le numéro de port par défaut est 9292, qui est rackup -p 8000
(exemple).
$ rackup
[2014-04-01 14:18:53] INFO WEBrick 1.3.1
[2014-04-01 14:18:53] INFO ruby 1.9.3 (2013-06-27) [i686-linux]
[2014-04-01 14:18:53] INFO WEBrick::HTTPServer#start: pid=5814 port=9292
Notez qu'une liste de répertoires est toujours renvoyée pour accéder à un répertoire (même si index.html existe, il est répertorié comme l'un des fichiers). Cela devrait suffire au développement. Une fois réglé, tout ce que vous avez à faire est de «rackup».
L'avantage de Rack est que vous pouvez le personnaliser autant que vous le souhaitez, ce qui vous donne la flexibilité d'écrire du code Ruby dans config.ru
pour la programmation côté serveur. Cependant, cela dépasse le cadre de cet article, des explications détaillées sont donc omises.
Le côté serveur de mon dernier travail "Weather Data Map" est également réalisé avec Rack. J'aimerais avoir l'occasion d'expliquer Rack séparément plus tard.
Je ne suis pas très familier avec Node.js, mais je connais quelqu'un qui crée un serveur local pour Node.js, je vais donc le présenter (j'ai également confirmé l'opération). Pour plus de détails, veuillez lire l'explication sur le site suivant.
https://github.com/shimizu/SimpleWebServer
J'ai reçu un commentaire de ka_ immédiatement après la publication. Il semble qu'il existe des modules de nœuds.
- https://www.npmjs.org/package/http-server
- https://www.npmjs.org/package/simple-server
- https://www.npmjs.org/package/simple-http-server
Les commentaires de Ka_ sont bien organisés, veuillez donc les consulter pour plus de détails.
J'ai reçu un commentaire sur la version PHP de kimama1997, je vais donc l'ajouter (PHP 5.4+). Voir la section des commentaires pour plus de détails.
$ php -S localhost:3000
Au fait, j'ai de l'expérience avec PHP, mais je ne l'utilise pas actuellement et je ne l'ai pas installé dans mon environnement de développement actuel.
Recommended Posts