Comment créer rapidement un environnement de travail pour les développeurs Web ou configurer un environnement de développement pour travailler ou apprendre HTML, CSS, PHP sur Windows.
(article publié sur Linkedin )

Ceci est ma traduction de l'article de l'auteur de livres sur les programmes Assembler et Reversing. Maintenant, il est principalement publiĂ© aux Ătats-Unis. Je pense que ce sera utile aux dĂ©butants et pas seulement.
Les programmeurs dĂ©butants se demandent toujours par oĂč commencer pour apprendre Ă crĂ©er des sites Web. Une recherche sur Internet fournit de nombreuses informations diverses, mais malheureusement, elle ne fait que confondre encore plus les dĂ©veloppeurs dĂ©butants. Ayant plus de 5 ans d'expĂ©rience dans l'enseignement, j'ai vu Ă plusieurs reprises comment les Ă©tudiants, prenant des pauses dans les jeux informatiques et dĂ©cidant de devenir dĂ©veloppeurs web, ont essayĂ© de mettre en place des environnements de dĂ©veloppement. Ils ont commencĂ© Ă trier les programmes de mise en page. Ils ont saisi Sublime Text, Notepad ++, Visual Studio Code, NetBeans ou PHPStorm. Nous avons essayĂ© d'installer WAMP (signifie Windows, Apache, MySQL et PHP) sur un ordinateur local, tel que Denver, Xampp, Open Server et bien d'autres. Mais comme il n'y a pas de connaissances systĂ©matiques dans la tĂȘte d'un dĂ©veloppeur novice, il n'y a pas d'expĂ©rience de rĂ©glage, assez rarement l'un d'entre eux a rĂ©ussi Ă mettre en place un environnement de dĂ©veloppement pratique, et qui a rĂ©ussi, il s'est rendu compte que jouer Ă©tait devenu plus difficile, car de nombreux programmes installĂ©s supplĂ©mentaires rendaient la lecture difficile. douceur dans le jeu.
Cet article est né pour expliquer pendant de nombreuses années à chaque élÚve comment tout faire correctement et commodément.
Encore une fois, je tiens à dire que nous allons configurer l'environnement de travail dans Windows pour étudier la création de sites en HTML, CSS et leur relation avec PHP. Nous appellerons un tel ordinateur de travail pour que les développeurs web novices s'habituent à l'idée que leur ordinateur est leur source de revenus.
Pour commencer
Je pense que puisque vous décidez de devenir développeur web, la toute premiÚre chose que vous devez faire est d'installer Git sur votre ordinateur. Git est un systÚme de contrÎle de version distribué. Croyez-moi, ce systÚme vous fera économiser plus d'une fois, surtout lorsque vous réalisez que quelque chose s'est mal passé. Grùce à git, vous pouvez clairement contrÎler quand cela s'est produit et git vous donnera l'opportunité de revenir à la version précédente du fichier édité. C'est pratique, non?
Pour installer, télécharger et installer Git pour Windows ( https://gitforwindows.org/ ), nous laissons tous les chemins et paramÚtres par défaut. AprÚs l'installation, redémarrez votre ordinateur.
Vous pouvez maintenant utiliser Git Ă l'aide de la ligne de commande ou de PowerShell.
J'adhĂšre Ă la rĂšgle selon laquelle il suffit d'installer git et IDE sur votre ordinateur de travail, ce qui signifie «environnement de dĂ©veloppement intĂ©gré». Tout le reste devrait fonctionner dans la version serveur. Vous ne pouvez pas vous dĂ©finir un WAMP diffĂ©rent. Je souligne que je parle spĂ©cifiquement des assemblages WAMP. Je vais expliquer mon point de vue. Les assemblages WAMP sont pratiques et bons, mais uniquement lorsque vous comprenez clairement ce que vous faites et pourquoi vous le faites sur le serveur et le site. Les dĂ©butants simplement Ă cause de leur expĂ©rience ne peuvent pas encore. Oui, en lisant dans de nombreux forums oĂč les dĂ©veloppeurs Web, y compris les dĂ©veloppeurs Full Stack, donnent des conseils aux dĂ©butants, j'ai trĂšs souvent dĂ» lire que les assemblages WAMP sont trĂšs pratiques. Mais sur de tels conseils, vous pouvez immĂ©diatement distinguer un professionnel de quelqu'un qui vient de faire ses premiers pas vers le dĂ©veloppement web. Un professionnel ne conseillera jamais Ă un dĂ©butant d'apprendre le dĂ©veloppement Web pour installer des assemblages WAMP.
Et voilĂ . L'environnement dans l'assembly WAMP est trĂšs diffĂ©rent de l'environnement rĂ©el des hĂ©bergeurs Web, sur lequel votre site fini sera situĂ©. L'environnement des hĂ©bergeurs Web est gĂ©nĂ©ralement un systĂšme basĂ© sur des systĂšmes de type UNIX (Linux, CentOS, etc.), est moins souvent le serveur Web IIS, et lorsque vous utilisez des assemblages WAMP, nous obtenons un environnement Windows qui n'a rien Ă voir avec le rĂ©el n'a aucun environnement. Dans ma pratique, j'ai Ă©tĂ© tĂ©moin de cas oĂč les constructions WAMP interfĂ©raient avec les gens. Par exemple, un dĂ©veloppeur Web novice est venu dans notre Ă©quipe pour dĂ©velopper des sites sur un ordinateur personnel avec un assemblage WAMP. Il avait une tĂąche simple de crĂ©er une page Ă partir d'une mise en page terminĂ©e et de crĂ©er un formulaire de rĂ©troaction fonctionnel. Quelques jours plus tard, il apporte une solution clĂ© en main. Nous le tĂ©lĂ©chargeons sur le serveur de test, qui est une copie exacte du serveur de production et voyons que le formulaire ne fonctionne pas, et certaines images ne sont pas affichĂ©es. Oui, les dĂ©veloppeurs expĂ©rimentĂ©s comprennent immĂ©diatement ce qui se passe, mais le dĂ©butant ne comprend pas cela et il panique. Il dit immĂ©diatement: "Je ne comprends pas, tout fonctionne dans ma maison." Je lui demande de vĂ©rifier d'oĂč la page charge les images et de vĂ©rifier Ă©galement le script php pour les chemins absolus. Quand il le corrige, tout fonctionne. Mais c'est un simple formulaire de rĂ©troaction, et s'il s'agit d'un site de boutique en ligne, 400 pages? Ou un autre exemple. J'ai dĂ» en quelque sorte gĂ©rer le dĂ©ploiement du site que la sociĂ©tĂ© avait commandĂ© Ă un pigiste - le dĂ©veloppeur. Le dĂ©veloppeur a fait pour commander un site de cartes de visite pour une entreprise. Lorsque ce dĂ©veloppeur a montrĂ© la commande terminĂ©e au client sur son ordinateur portable de travail, tout a bien fonctionnĂ©, mais lorsque ce site a Ă©tĂ© transfĂ©rĂ© au fournisseur d'hĂ©bergement, le site n'a pas fonctionnĂ© et certaines pages n'apparaissaient tout simplement pas. Les dĂ©veloppeurs expĂ©rimentĂ©s comprennent Ă©galement ce qui se passe, mais cela n'a pas encore Ă©tĂ© donnĂ© aux dĂ©butants, en raison du manque d'expĂ©rience nĂ©cessaire. Ici, il s'est avĂ©rĂ© que dans Windows, il n'y a pas de support .htaccess, aprĂšs avoir enregistrĂ© les directives nĂ©cessaires pour que CMS fonctionne, tout fonctionnait. Mais ce n'Ă©tait qu'un site de cartes de visite, et s'il s'agissait d'une boutique en ligne avec un panneau d'administration, des sections fermĂ©es, etc.? Ici, pour Ă©viter tout cela, je recommande Ă tous mes Ă©tudiants d'utiliser, sinon un environnement de production 100% complet, du moins trĂšs proche, et cet assemblage WAMP ne peut pas fournir.
J'ai deux environnements préférés dans lesquels je travaille: NetBeans et PHPStorm. Celui qui l'aime dépend de vous. Je recommande de mettre les deux et d'essayer d'y travailler. NetBeans est gratuit, PHPStorm coûte 89 $ pour un développeur individuel, mais il y a un essai de 30 jours pour que vous puissiez le regarder au travail.
Je vais parler de personnalisation en utilisant l'IDE PHPStorm comme exemple. Installez IDE PHPStorm sur notre ordinateur de travail en le téléchargeant depuis le site officiel . Il n'y a rien de compliqué ici, c'est juste un programme windows, on laisse tous les chemins par défaut. Installé.
Comme je l'ai dit, tout doit ĂȘtre dĂ©veloppĂ© dans un environnement soit identique Ă l'hĂŽte soit trĂšs proche de lui. Pour ce faire, nous devons installer VirtualBox sur notre ordinateur en le tĂ©lĂ©chargeant depuis le site officiel . Il n'y a aussi rien de compliquĂ©, mettez et redĂ©marrez l'ordinateur.
Il y a ensuite deux voies de développement
La premiÚre façon consiste à créer une machine virtuelle manuellement dans VirtualBox, à y installer Linux Server et à augmenter Apache, MySQL et PHP sur le serveur. De plus, pour le débogage, nous devrons également y installer Xdebug pour déboguer PHP, en comprenant simultanément les dépendances à l'intérieur de la machine virtuelle et en prenant également en compte les dépendances avec notre dossier de travail sur la machine hÎte. Lorsque vous acquérez de l'expérience, ce n'est pas si difficile à faire qu'il n'y paraßt, mais pour ceux qui ne font que faire leurs premiers pas vers le développement WEB, ce sont toutes des difficultés inutiles.
Il existe donc une deuxiÚme voie de développement. Installez Vagrant sur votre ordinateur en le téléchargeant depuis le site officiel . Vagrant est une application qui vous aide à gérer les machines virtuelles. Installé? Si vous obtenez une erreur concernant la non-concordance de version de PowerShell, mettez à jour le Framework de gestion . Installé? Super.
Ensuite, tĂ©lĂ©chargez l'archive avec la configuration vagabonde, que j'ai prĂ©parĂ©e sur la base de «Ubuntu Server 16.04» et que je propose d'utiliser pour mes Ă©tudiants. Nous crĂ©ons un dossier de travail pour nous-mĂȘmes, dans lequel nous allons crĂ©er notre site. Par exemple, ce sera le dossier «webdev» sur le lecteur «C». Comment faire Pour ceux qui ont dĂ©jĂ installĂ© Git, ouvrez le lecteur "C" dans l'Explorateur et faites un clic droit et sĂ©lectionnez "Git Bash Here" .
A. 
La console s'ouvrira, dans laquelle nous entrerons la commande: git clone https://github.com/abyss-soft/webdev et appuyez sur "enter".

AprĂšs cela, notre dossier de travail prĂȘt avec l'arborescence de fichiers suivante est apparu sur votre disque:

Veuillez noter que le dossier avec notre site Web que nous développerons se trouve le long de ce chemin: C: \ webdev \ www \ webdev.local
Ă l'avenir, vous pourrez remplacer tous les fichiers de ce dossier par les fichiers de votre site et ainsi recevoir un environnement de dĂ©veloppement prĂȘt Ă l'emploi pour votre site.
Je vous recommande également de vous inscrire sur https://github.com et de faire de «Fork» mon référentiel « https://github.com/abyss-soft/webdev », afin de le sauvegarder pour vous et il restera toujours avec vous.
Pour ceux qui ne souhaitent pas installer git, voici les liens directs:
- Lien direct: https://github.com/abyss-soft/webdev/archive/master.zip
- Lien vers github: https://github.com/abyss-soft/webdev
- Lien Vagrant Box: https://app.vagrantup.com/alex-panov/boxes/webdev
Ensuite, exĂ©cutez l'interprĂ©teur de ligne de commande, pour cela, nous appuyez sur Win + R (appuyez de cette façon - maintenez le bouton avec le logo Windows Ă gauche et Ă droite de l'espace aprĂšs l'alt) et sans le relĂącher, appuyez sur R) et entrez la commande "cmd" (sans guillemets). Dans la fenĂȘtre qui s'ouvre, nous allons dans notre dossier créé en entrant la commande cd c: \ webdev .
En allant dans le dossier, entrez la commande vagrant up . La console ne se ferme pas. Lorsque nous travaillons et que nous devons désactiver le serveur virtuel, nous entrerons la commande vagrant halt .
Le premier lancement peut prendre beaucoup de temps - l'image sera téléchargée, lors des lancements suivants cette étape ne sera pas, l'image s'accrochera du cache. Ensuite, la machine virtuelle démarre.
Dans la machine virtuelle elle-mĂȘme, nous avons le fichier PHP.ini situĂ© dans /etc/php/7.0/apache2/php.ini et ayant ce paramĂštre:
---------- Travailler: -------
[xdebug]
zend_extension = "/ usr / lib / php / 20151012 / xdebug.so"
xdebug.remote_autostart = on
xdebug.remote_enable = on
xdebug.remote_connect_back = on
xdebug.remote_port = 9000
xdebug.remote_host = 192.168.33.31
xdebug.idekey = PHP_IDE_CONFIG
OĂč xdebug.remote_host = 192.168.33.31 est l'adresse de l'ordinateur hĂŽte sur lequel PHPStorm s'exĂ©cute.
En attendant son chargement, nous écrirons dans le fichier "hosts" (il se trouve C: \ Windows \ System32 \ drivers \ etc) la ligne: 192.168.33.33 webdev.local
Ensuite, lancez votre navigateur préféré et suivez le lien webdev.local
Si tout s'est dĂ©roulĂ© comme prĂ©vu, alors nous verrons une page avec le texte "PHP calcul:" montrant que notre site de test est chargĂ© dans notre machine virtuelle sur le serveur et est prĂȘt Ă fonctionner.
Ensuite, nous devons connecter un interpréteur PHP distant à PHPStorm.
Pour ce faire, exécutez PHPStorm et créez un nouveau projet:

Le programme nous indiquera que des fichiers existent déjà dans ce dossier et nous demandera si nous voulons créer un projet dans ce dossier:

Cliquez sur "Oui"
Ensuite, cliquez sur le menu "Fichier" -> "ParamĂštres ..":

et allez dans la section Langues et Frameworks et sélectionnez PHP dans cette section. Dans cette section, vous devez affecter un interprÚte pour l'IDE dans la clause Interpreter CLI en cliquant sur le bouton [...]

Dans la fenĂȘtre qui s'ouvre, cliquez sur le "+" vert, dĂ©finissez un nom, par exemple, "Remote PHP 7" et sĂ©lectionnez l'Ă©lĂ©ment Remote ....

Dans la fenĂȘtre qui apparaĂźt, sĂ©lectionnez Vagrant et indiquez le chemin d'accĂšs au fichier "C: \ webdev"

Et cliquez sur OK.
Cette fenĂȘtre apparaĂźt, dans laquelle la version de PHP et la version du dĂ©bogueur sont visibles:

Ensuite, dans la section PHP, sélectionnez Serveurs (PHP -> Serveurs) . Cliquez sur le «+» vert et entrez n'importe quel nom, par exemple, «webdev.local» et le nom d'hÎte: «webdev.local». Le numéro de port est «80» et le débogueur est défini sur «XDebug». Assurez-vous d'activer la case à cocher Utiliser les mappages de chemins ... indiquez la correspondance des chemins:
Fichier / Répertoire | Patch absolu sur le serveur |
---|
C: \ webdev \ www \ webdev.local | /var/www/webdev.local |

Pour un débogage plus confortable, ou plutÎt, pour que le débogueur n'apparaisse pas sur la premiÚre ligne d'un fichier PHP, vous devez désactiver cette fonction ici:

Allez dans PHPStorm, dans le menu "Exécuter", sélectionnez Modifier les configurations ...

Dans le formulaire qui s'ouvre, cliquez sur le «+» vert et sélectionnez le type d'application PHP Web Application . Entrez un nom, par exemple, "WebApplication", dans le champ serveur, sélectionnez le nom du serveur que nous venons de créer, l'URL de démarrage et vous pouvez également sélectionner le navigateur dans lequel la session xdebug s'ouvrira.

Important!
Le débogage est déclenché uniquement lorsque PHPStorm a activé l'écoute électronique. Pour ce faire, cliquez sur Démarrer l'écoute des connexions de débogage PHP dans le coin droit:

Nous devons également installer une extension supplémentaire dans le navigateur. Pour ce faire, visitez la page officielle JetBrains avec les extensions de débogage du navigateur et téléchargez l'extension souhaitée pour votre navigateur.
AprÚs avoir installé notre extension dans le navigateur, ouvrons ses paramÚtres et spécifions idekey , que nous avons déjà spécifié dans les paramÚtres: PHP_IDE_CONFIG

Dans PHPStorm, activez l'écouteur (dans le coin droit de Commencer l'écoute pour les connexions de débogage PHP ) et cliquez sur Exécuter WebApplication . Le débogage au niveau PHPStorm est démarré.
Ensuite, nous activons l'extension de débogage. Pour ce faire, allez à l'adresse de notre site Web http: //webdev.local et aprÚs avoir entré, cliquez sur l'icÎne de bogue (déjà dans le navigateur) et sélectionnez l'élément de débogage dans "Google Chrome"

Ou dans Mozilla Firefox

AprĂšs quoi, l'icĂŽne deviendra verte.
AprĂšs ces paramĂštres, vous pouvez dĂ©finir en toute sĂ©curitĂ© des points d'arrĂȘt et dĂ©boguer vos sites PHP. AprĂšs avoir installĂ© le point d'arrĂȘt dans PHPStorm, vous devez actualiser la page dans le navigateur et voir qu'elle se bloque en mode de chargement, et les points d'arrĂȘt ont fonctionnĂ© dans PHPStorm.
Par exemple, mettez un point d'arrĂȘt sur une ligne
$ x = 2;
Et cliquez sur "Exécuter WebApplication":

Comme vous pouvez le voir, notre dĂ©bogueur s'est arrĂȘtĂ© Ă notre point d'arrĂȘt et nous montre des variables (variables):

Si nous appuyons sur la touche F8 , nous verrons que le débogueur se déplace pas à pas, affichant toutes nos variables:
De cette façon, nous avons installé et optimisé notre environnement de travail dans lequel nous pouvons pleinement travailler.