Cette traduction est incomplète. Aidez à traduire cet article depuis l'anglais.

Cet article explique comment configurer un serveur de test local simple sur votre machine, et les bases pour l'utiliser.

Prérequis : Vous devez au préalable savoir comment Internet fonctionne, et ce qu'est un serveur Web.
Objectif: Vous apprendrez à configurer un serveur de test local.

Fichiers locaux contre fichiers distants

Durant la plupart de l'entainement, nous vous disons simplement d'ouvrir vos exemples directement dans votre navigateur — vous pouvez le faire en double cliquant le fichier HTML, en déposant celui-ci dans la fenêtre de votre navigateur, ou en faisant Fichier > Ouvrir... et naviguer jusqu'au fichier HTML, etc... Il y a beaucoup de manières d'y arriver.

Vous savez si vous lancez l'exemple depuis un fichier local, car l'adresse web comprendra fichier:// au début, suivi par le chemin vers le fichier sur votre disque dur local. Au contraire, si vous regardez un de nos exemples hébergé sur GitHub (ou un exemple sur n'importe quel serveur distant), l'adresse web comprendra http:// or https:// au début, montrant que le fichier a été reçu via HTTP.

Le problème de tester des fichiers locaux

Certains exemples ne fontionneront pas si vous les ouvrez en tant que fichiers locaux. Cela peut être dû à plusieurs raisons, dont les plus courantes sont :

  • Ils comprennent les requêtes desynchronisées. Certains navigateurs (comme Chrome) ne pourront pas lire de requêtes asynchrones (voyez Récolter des données depuis le serveur ) si vous lancez simplement l'exemple comme un fichier local. Cela est dû à des restictions de sécurité (Pour en savoir plus, lisez Sécurité des sites Web).
  • Ils comprennent des languages spécifiques aux serveurs. Des languages serveur (comme PHP ou Python) nécessitent un serveur spécifique pour interpréter le code et donner des résutats.

Créer un serveur HTTP local simple

To get around the problem of async requests, we need to test such examples by running them through a local web server. One of the easiest ways to do this for our purposes is to use Python's SimpleHTTPServer module.

To do this:

  1. Install Python. If you are using Linux or Mac OS X, it should be available on your system already. If you are a Windows user, you can get an installer from the Python homepage and follow the instructions to install it:

    • Go to python.org
    • Under the Download section, click the link for Python "3.xxx".
    • At the bottom of the page, choose the Windows x86 executable installer and download it.
    • When it has downloaded, run it.
    • On the first installer page, make sure you check the "Add Python 3.xxx to PATH" checkbox.
    • Click Install, then click Close when the installation has finished.
  2. Open your command prompt (Windows)/terminal (OS X/Linux). To check Python is installed, enter the following command:

    python -V
  3. This should return a version number. If this is OK, navigate to the directory that your example is inside, using the cd command.

    # include the directory name to enter it, for example
    cd Desktop
    # use two dots to jump up one directory level if you need to
    cd ..
  4. Enter the command to start up the server in that directory:

    # If Python version returned above is 3.X
    python -m http.server
    # If Python version returned above is 2.X
    python -m SimpleHTTPServer
  5. By default, this will run the contents of the directory on a local web server, on port 8000. You can go to this server by going to the URL localhost:8000 in your web browser. Here you'll see the contents of the directory listed — click the HTML file you want to run.

Note: Si vous avez déjà quelque chose qui tourne sur le port 8000, vous pouvez choisir un autre port en écrivant la commande de serveur suivie par un autre port, par exemple python -m http.server 7800 (Python 3.x) ou python -m SimpleHTTPServer 7800 (Python 2.x). Vous pouvez maintenant accéder à votre contenu sur localhost:7800.

Faire fonctionner localement des languages serveur

Python's SimpleHTTPServer module is useful, but it doesn't know how to run code written in languages such as PHP or Python. To handle that you'll need something more — exactly what you'll need depends on the server-side language you are trying to run. Here are a few examples:

  • To run Python server-side code, you'll need to use a Python web framework. You can find out how to use the Django framework by reading Django Web Framework (Python). Flask is also a good (slightly less heavyweight) alternative to Django. To run this you'll need to install Python/PIP, then install Flask using pip3 install flask. At this point you should be able to run the Python Flask examples using for example python3 python-example.py, then navigating to localhost:5000 in your browser.
  • To run Node.js (JavaScript) server-side code, you'll need to use raw node or a framework built on top of it. Express is a good choice — see Express Web Framework (Node.js/JavaScript).
  • To run PHP server-side code, you'll need a server setup that can interpret PHP. Good options for local PHP testing are MAMP (Mac and Windows) , AMPPS (Mac, Windows, Linux) and LAMP (Linux, Apache, MySQL, and PHP/Python/Perl). These are complete packages that create local setups to allow you to run the Apache server, PHP, and MySQL databases.

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : Albynton
 Dernière mise à jour par : Albynton,