Mon réseau d’entreprise
17.2 La programmation web : php
Le langage de programmation PHP (PHP : Hypertext Preprocessor) permet de développer des applications qui vont s’exécuter sur le serveur et afficher la réponse sur le navigateur du client. Cela permet de construire des sites dynamiques.
Ces programmes sont exécutés sur un serveur à partir d’un navigateur internet n’importe où dans le système solaire. C’est un des vecteurs d’attaque très utilisé.
Il est très facile d’écrire des programmes en php. De nombreux débutants découvrent les joies de programmer sur le web et peuvent voir leur travail s’afficher dans leur navigateur. Mais les débutants commettent les erreurs de débutant.
Leur code est une proie facile pour les e-malfrats.
Pour ajouter le support php dans un serveur apache, il suffit d’ajouter le paquet php (Debian stretch).
Ensuite, il faut créer un fichier foo.php dans le répertoire DocumentRoot qui contient :
<?php echo 'Voici un exemple php
' phpinfo(); ?>
Maintenant, il faut essayer d’afficher le résultat dans le navigateur. Et là, c’est le drame. Les logiciels lourds n’affichent qu’une page vide ! Le navigateur elinks affiche des informations dans la figure 17.5.
Il faut aller voir dans les logs du serveur ce qui s’est passé.
# less /var/log/apache2/error.log
...
[Tue Sep 04 15:12:06.193724 2018]
[:error] [pid 29004]
[client ::1:47248]
PHP Parse error: syntax error,
unexpected 'phpinfo' (T_STRING),
expecting ',' or ';' in /var/www/foo.php on line 3
...
En bon français, il dit qu’il manque un “ ;” à la fin de la ligne 2. Il suffit de le rajouter pour obenir le résultat de la figure 17.6. Les navigateurs lourds peuvent servir.
Le support php est en place.

