Installation de php sur Windows 7 64. Création d'une structure de serveur Web. Tester PHP depuis la ligne de commande

Installer un serveur web sous Linux :

  • Si vous possédez Ubuntu, alors l'article « Comment installer le serveur Web Apache avec PHP 7, MariaDB/MySQL et phpMyAdmin (LAMP) sur Ubuntu 16.10 » vous convient.
  • Si vous disposez d'Arch Linux, alors l'article « Installer LAMP (Linux, Apache, MySQL/MariaDB, PHP7 et phpMyAdmin) sur Arch Linux / BlackArch » vous convient.

Le serveur local est un outil très utile. Il sera certainement utile aux webmasters, aux programmeurs PHP et aux testeurs d'intrusion. Tous les programmes inclus dans une installation typique de serveur Web sont gratuits et open source. Un serveur Web local consomme un minimum de ressources et n'est en réalité pas difficile à installer et à configurer.

Cette instruction vous expliquera comment installer un serveur Web local sans utiliser d'assemblys prêts à l'emploi. Cette méthode a ses avantages. Les plus importants d'entre eux sont : un contrôle total sur ce que vous installez ; capacité à utiliser les dernières versions des logiciels.

Si vous suivez exactement les instructions, alors tout fonctionnera certainement pour vous ! Sauf pour ceux qui possèdent Windows XP - si vous disposez de ce système d'exploitation, des instructions spéciales ont été rédigées pour vous.

Je vais montrer un exemple d'installation sur Windows 10, mais si vous disposez d'une version différente de Windows, ne vous laissez pas déranger, la procédure est identique partout. Je téléchargerai les dernières versions (les plus récentes) des programmes au moment de la rédaction. Si au moment où vous lisez, de nouvelles versions seront publiées, téléchargez-les.

Étapes d'installation :

Cela peut également vous être utile :

1. Préparation (téléchargement des programmes inclus dans le serveur, création de la structure du serveur)

Nous avons besoin de :

  • Apache(directement serveur web)
  • PHP- environnement pour exécuter des programmes PHP (requis par presque tous les sites Web)
  • MySQL- système de gestion de base de données (requis par la plupart des sites Web)
  • phpMonAdmin- un outil très pratique pour la gestion de bases de données

Le site officiel des développeurs Apache est httpd.apache.org. Vous pouvez télécharger Apache à partir de ce site. Mais la version officielle est construite à l'aide d'un ancien compilateur, pour cette raison elle ne fonctionne pas avec les nouvelles versions de PHP. Les auteurs PHP recommandent Apache sur apachelounge.com/download. Par conséquent, pour cette instruction, nous téléchargeons Apache depuis le site apachelounge.com/download.

Si vous disposez d'une version 64 bits de Windows, vous pouvez choisir les versions 64 bits et 32 ​​​​bits des composants. La règle principale est que tous les composants doivent avoir la même taille de bits. Si vous disposez d'une version 32 bits de Windows, tous les composants doivent être en 32 bits. Cela ne s'applique pas à phpMyAdmin, qui est écrit en PHP. Pour les programmes PHP, la notion de profondeur de bits n'est pas applicable.

La version gratuite de MySQL s'appelle Serveur communautaire MySQL. Il peut être téléchargé sur la page. Il existe un programme d'installation exécutable sur cette même page, mais je recommande de télécharger l'archive ZIP. Sur la page de téléchargement, il nous est demandé de nous inscrire ou de nous connecter à un compte existant - mais ce n'est pas nécessaire. Cliquez simplement sur le lien " Non merci, je lance juste mon téléchargement" Faites attention à la profondeur de bits.

Nous avons également besoin du fichier Visual Studio 2017 redistribuable C++, c'est-à-dire Composant redistribuable Visual C++ pour Visual Studio 2017 (ou tout autre version ultérieure), vous pouvez le télécharger sur le site officiel de Microsoft en utilisant le lien (lien direct pour télécharger la version 64 bits ; lien direct pour télécharger la version 32 bits). Ce fichier est nécessaire pour le serveur Web. Et MySQL nécessite les packages redistribuables Visual C++ pour Visual Studio 2015. Il peut être téléchargé à partir de .

J'ai donc téléchargé les fichiers suivants :

  • httpd-2.4.29-Win64-VC15.zip
  • php-7.2.0-Win32-VC15-x64.zip
  • mysql-8.0.11-winx64.zip
  • phpMyAdmin-4.7.6-toutes-langues.zip
  • vc_redist.x64.exe
  • vcredist_x64.exe

Installer des fichiers vc_redist.x64.exe Et vcredist_x64.exe.

2. Créez une structure de serveur Web

Créons la structure de répertoires de notre serveur. L'idée principale est de séparer les fichiers exécutables et les fichiers de sites Web avec des bases de données. Ceci est pratique pour la maintenance du serveur, y compris les sauvegardes.

A la racine du disque C:\ créer un répertoire Serveur. Dans ce répertoire, créez 2 sous-répertoires : poubelle(pour les fichiers exécutables) et données.

Allez dans l'annuaire données et créez-y des sous-dossiers D.B.(pour les bases de données) et htdocs(pour les sites Web).

Allez dans l'annuaire C:\Serveur\données\DB\ et créez-y un dossier vide données.

3. Installation d'Apache 2.4

Le contenu de l'archive téléchargée (plus précisément, uniquement le répertoire Apache24), déballer dans C:\Serveur\bin\.

Allez dans l'annuaire c:\Serveur\bin\Apache24\conf\ et ouvrez le fichier httpd.conf n’importe quel éditeur de texte.

Nous devons y remplacer un certain nombre de lignes.

Définir SRVROOT "c:/Apache24"

Définir SRVROOT "c:/Server/bin/Apache24"

#ServerName www.exemple.com:80

Nom du serveur hôte local

DocumentRoot "$(SRVROOT)/htdocs"

DocumentRoot "c:/Serveur/data/htdocs/"

DirectoryIndex index.html

AnnuaireIndex index.php index.html index.htm

# AllowOverride contrôle quelles directives peuvent être placées dans les fichiers .htaccess.

# Il peut s'agir de "Tous", "Aucun" ou de toute combinaison de mots-clés : # AllowOverride FileInfo AuthConfig Limit # AllowOverride None

# AllowOverride contrôle quelles directives peuvent être placées dans les fichiers .htaccess.

# Il peut s'agir de "Tous", "Aucun" ou de toute combinaison de mots-clés : # AllowOverride FileInfo AuthConfig Limit # AllowOverride All

#LoadModule rewrite_module modules/mod_rewrite.so

LoadModule rewrite_module modules/mod_rewrite.so

Enregistrez et fermez le fichier. Ça y est, la configuration d'Apache est terminée ! Une description de chaque directive modifiée peut être trouvée sur cette page.

Ouvrez la ligne de commande (cela peut être fait en appuyant simultanément sur les touches Win+X). Sélectionnez-y Windows PowerShell (Administrateur) et copiez-y :

C:\Serveur\bin\Apache24\bin\httpd.exe -k install

Si une demande est reçue du pare-feu pour Apache, cliquez sur Autoriser.

Entrez maintenant dans la ligne de commande :

C:\Serveur\bin\Apache24\bin\httpd.exe -k start

Et appuyez sur Entrée.

Entrez root comme nom d'utilisateur. Laissez le champ du mot de passe vide. Si tout est fait correctement, alors tout devrait ressembler à ceci : 7. Utilisation du serveur et sauvegarde des données Dans le catalogue

c:\Serveur\données\htdocs\

créer des dossiers et des fichiers, par exemple : c:\Server\data\htdocs\test\ajax.php - ce fichier sera donc disponible sur http://localhost/test/ajax.php, etc..

Pour créer une sauvegarde complète de tous les sites et bases de données, copiez simplement le répertoire poubelle C:\Serveur\données\

Avant de mettre à jour les modules, faites une sauvegarde du dossier

  • - en cas de problème, vous pouvez facilement revenir aux versions précédentes.
  • Lors de la réinstallation du serveur ou de sa mise à jour, vous devez reconfigurer les fichiers de configuration. Si vous disposez de copies de ces fichiers, le processus peut être considérablement accéléré. Il est conseillé de sauvegarder les fichiers suivants :
  • c:\Serveur\bin\Apache24\conf\httpd.conf
  • c:\Serveur\bin\mysql-8.0\my.ini

c:\Serveur\bin\PHP\php.ini

c:\Serveur\data\htdocs\phpMyAdmin\config.inc.php

PHP est désormais un outil très puissant, flexible et convivial. Sur un ordinateur local, vous pouvez l'utiliser pour résoudre diverses tâches qui ne sont pas nécessairement liées à la génération de pages Web. Lors de la résolution de problèmes extraordinaires, vous pouvez rencontrer des restrictions définies dans les paramètres. Ces paramètres sont contenus dans le fichier php.ini (c:\Server\bin\PHP\php.ini). Examinons-en quelques-uns :

Limite_mémoire = 128 Mo

définit la quantité maximale de mémoire qu'un script peut utiliser

Post_max_size = 8M

définit la quantité maximale de données qui seront acceptées lors de l'envoi à l'aide de la méthode POST

;default_charset = "UTF-8"

définit l'encodage (par défaut, la ligne est commentée)

Upload_max_filesize = 2 Mo

la taille maximale d'un fichier téléchargé sur le serveur. La taille est initialement définie sur une très petite taille - seulement deux mégaoctets. Par exemple, lors du chargement d'une base de données dans phpMyAdmin, vous ne pourrez pas télécharger un fichier de plus de 2 mégaoctets tant que cet élément de paramètre n'est pas modifié.

Max_file_uploads = 20

nombre maximum de fichiers à télécharger en même temps

Max_execution_time = 30

temps d'exécution maximum pour un script

La modification de ces paramètres est totalement facultative, mais il est utile de les connaître.

9. Paramètres supplémentaires pour phpMyAdmin

Nous avons déjà configuré phpMyAdmin et pour la plupart des gens, les fonctionnalités de base suffisent. Cependant, sur la page de démarrage de phpMyAdmin, il y a un message : « Les fonctionnalités supplémentaires de phpMyAdmin ne sont pas entièrement configurées, certaines fonctions ont été désactivées. »

Les nouvelles fonctionnalités sont :

  • montrer les relations entre les tables (liées);
  • ajout d'informations sur les tables (à partir de la version 2.3.0, vous pouvez décrire dans un tableau spécial « table_info » quelle colonne sera affichée dans l'info-bulle lorsque vous déplacez le curseur sur la clé associée) ;
  • créer un diagramme PDF (à partir de la version 2.3.0, vous pouvez créer des pages PDF dans phpMyAdmin montrant les relations entre vos tables) ;
  • afficher les commentaires des colonnes (depuis la version 2.3.0 vous pouvez faire un commentaire décrivant chaque colonne pour chaque tableau. Et ils seront visibles dans "l'aperçu avant impression". Depuis la version 2.5.0, les commentaires sont utilisés sur les pages propres des tableaux et dans les vues en mode, apparaissant sous forme d'info-bulles au-dessus des colonnes (tables de propriétés) ou intégrées dans l'en-tête du tableau en mode visualisation. Elles peuvent également être affichées dans le dump de la table) ;
  • créer des favoris (depuis la version 2.2.0, phpMyAdmin permet aux utilisateurs de mettre des requêtes en favoris. Cela peut être utile pour les requêtes fréquemment utilisées) ;
  • historique des requêtes SQL (à partir de la version 2.5.0, vous pouvez enregistrer votre historique de toutes les requêtes SQL effectuées via l'interface phpMyAdmin) ;
  • designer (à partir de la version 2.10.0, l'outil Designer est disponible ; il permet de gérer visuellement les relations entre les tables) ;
  • des informations sur les tables récemment utilisées ;
  • personnaliser l'interface des tableaux fréquemment utilisés ;
  • suivi (à partir de la version 3.3.x, un mécanisme de suivi est disponible. Il vous aide à suivre chaque commande SQL exécutée par phpMyAdmin. L'enregistrement de la manipulation des données et l'enregistrement des commandes sont pris en charge. Une fois activé, vous pourrez versionner les tables) ;
  • paramètres utilisateur (à partir de la version 3.4.x, phpMyAdmin permet aux utilisateurs de définir la plupart des paramètres et de les enregistrer dans la base de données) ;
  • menus personnalisés (à partir de la version 4.1.0, vous pouvez créer des groupes d'utilisateurs qui n'auront accès qu'aux éléments de menu attribués. Un utilisateur peut être affecté à un groupe et ne verra que les éléments de menu disponibles pour son groupe) ;
  • masquer/afficher les éléments de navigation (à partir de la version 4.1.0, vous pouvez masquer/afficher les éléments dans l'arborescence de navigation).
  • et d'autres

Nous allons maintenant configurer entièrement ces fonctionnalités supplémentaires. Allez sur le lien http://localhost/phpmyadmin/chk_rel.php et cliquez sur "Créer une base de données". Après cela, toutes les nouvelles fonctionnalités seront activées.

Quelques captures d'écran des nouvelles fonctionnalités :

1) Concepteur

2) Suivi

10. Installation d'une prise mail

Dans le répertoire C:\Server\bin\, créez un nouveau répertoire appelé Sendmail. Maintenant dans ce répertoire créez un fichier sendmail.php avec le contenu suivant :

#!/usr/bin/envphp

Ouvrez le fichier de configuration PHP, il se trouve ici C:\Serveur\bin\PHP\php.ini. Et ajoutez-y une ligne :

Sendmail_path = "C:\Server\bin\PHP\php.exe C:\Server\bin\Sendmail\sendmail.php --dir C:\Server\bin\Sendmail\emails"

Enregistrez le fichier et redémarrez le serveur. Super, désormais tous les e-mails envoyés seront enregistrés dans le répertoire C:\Serveur\bin\Sendmail\emails\

Les lettres auront l'extension .eml et ils peuvent être ouverts, par exemple, par le programme Oiseau-tonnerre. Ou un éditeur de texte classique.

11. Ajout d'un répertoire PHP à PATH sous Windows

Si cela n'est pas fait, il peut y avoir des problèmes avec certains modules PHP, notamment php_curl.dll, php_intl.dll, php_ldap.dll, php_pdo_pgsql.dll et php_pgsql.dll. Au moins, à chaque démarrage du serveur, les éléments suivants apparaissent dans les journaux :

Avertissement PHP : Démarrage PHP : Impossible de charger la bibliothèque dynamique "C:\\Server\\bin\\PHP\\ext\\php_curl.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\ xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\ xbf\xbd\xef\xbf\xbd.\r\n dans Inconnu sur la ligne 0 Avertissement PHP : Démarrage PHP : Impossible de charger la bibliothèque dynamique "C:\\Server\\bin\\PHP\\ext\\php_intl.dll " - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef \xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n dans Inconnu en ligne 0 Avertissement PHP : Démarrage PHP : Impossible de charger la bibliothèque dynamique " C:\\Server\\bin\\PHP\\ext\\php_ldap.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\ xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r \n dans Inconnu en ligne 0 Avertissement PHP : Démarrage PHP : Impossible de charger la bibliothèque dynamique "C:\\Server\\bin\\PHP\\ext\\php_pdo_pgsql.dll" - \xef\xbf\xbd\xef\xbf \xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef \xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n dans Inconnu sur la ligne 0 Avertissement PHP : Démarrage PHP : Impossible de charger la bibliothèque dynamique "C:\\Server\\bin\\PHP\ \ext\\php_pgsql.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\ xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n dans Inconnu à la ligne 0

Pour éviter ces avertissements, vous devez ajouter le chemin d'accès à PHP aux variables d'environnement de votre système.

Cliquez sur le bouton Démarrer (ou quel que soit son nom sous Windows 10 ?), commencez à taper " Modification des variables d'environnement système" et ouvrez la fenêtre des paramètres correspondante.

Là, cliquez sur " Variables d'environnement»:

Dans la fenêtre " Variables système» recherchez et cliquez sur Chemin, puis cliquez sur " Changement»:

Déplacez l'entrée vers le haut :

Fermez toutes les fenêtres et enregistrez vos modifications.

Redémarrez le serveur.

12. Gel, ralentissement du trafic et/ou erreur de serveur Échec de l'AcceptEx asynchrone

Si votre serveur se bloque même sans charge, il n'affiche pas les pages Web jusqu'au redémarrage, et dans les journaux du serveur, il y a des erreurs d'échec d'Asynchronous AcceptEx :

AH00455 : Apache/2.4.9 (Win64) PHP/5.5.13 configuré -- reprise des opérations normales AH00456 : Serveur Apache Lounge VC11 construit : 16 mars 2014 12:42:59 AH00094 : Ligne de commande : "c:\\Server\\ bin\\Apache24\\bin\\httpd.exe -d C:/Server/bin/Apache24" AH00418 : Parent : processus enfant créé 4952 AH00354 : Enfant : démarrage de 64 threads de travail.

(OS 64)Le nom de réseau spécifié n'est plus disponible. : AH00341 : winnt_accept : échec d'AcceptEx asynchrone.

(OS 64)Le nom de réseau spécifié n'est plus disponible. : AH00341 : winnt_accept : échec d'AcceptEx asynchrone.

(OS 64)Le nom de réseau spécifié n'est plus disponible. : AH00341 : winnt_accept : échec d'AcceptEx asynchrone.

(OS 64)Le nom de réseau spécifié n'est plus disponible. : AH00341 : winnt_accept : échec d'AcceptEx asynchrone.

(OS 64)Le nom de réseau spécifié n'est plus disponible. : AH00341 : winnt_accept : échec d'AcceptEx asynchrone.

(OS 64)Le nom de réseau spécifié n'est plus disponible. : AH00341 : winnt_accept : échec d'AcceptEx asynchrone.

Ajoutez ensuite au fichier de configuration Apache :

AcceptFilter http aucun AcceptFilter https aucun EnableSendfile désactivé EnableMMAP désactivé

13. Configuration de cURL dans le serveur Web Apache sous Windows

Si vous ne savez pas ce qu'est cURL, vous n'en avez pas besoin. Ceux. N'hésitez pas à sauter cette étape.

cURL est un utilitaire de console qui permet d'échanger des données avec des serveurs distants en utilisant un très grand nombre de protocoles. cURL peut utiliser des cookies et prend en charge l'authentification. Si une application Web nécessite cURL, cela doit être spécifié dans les dépendances. De nombreuses applications populaires ne nécessitent pas cURL, par exemple phpMyAdmin et WordPress n'ont pas besoin de configurer cURL. C:\Serveur\bin\PHP\php.ini Si cURL n'est pas configuré correctement, vous recevrez des erreurs : Erreur fatale : appel à une fonction non définie curl_multi_init() dans...

Ce n'est généralement pas obligatoire, mais si vous le souhaitez, vous pouvez faire une copie de sauvegarde des fichiers binaires (exécutables) du serveur. Tous ces fichiers se trouvent dans le dossier C:\Serveur\bin\. Ce sont Apache, MySQL et PHP - c'est-à-dire programmes qui sont responsables du fonctionnement du serveur, mais que nous pouvons télécharger depuis les sites officiels et reconfigurer à tout moment.

Si vous souhaitez en faire une copie de sauvegarde (par exemple, avant de mettre à niveau le serveur), alors arrêtez les services :

C:\Serveur\bin\Apache24\bin\httpd.exe -k stop net stop mysql

Et copiez le dossier dans un endroit sûr C:\Serveur\bin\.

À propos, vous pouvez copier l'intégralité du serveur, c'est-à-dire dossier C:\Serveur\- dans ce cas, vous obtiendrez simultanément une copie de sauvegarde des fichiers exécutables et des données (bases de données, sites Web).

Une fois la copie terminée, redémarrez les services :

C:\Serveur\bin\Apache24\bin\httpd.exe -k start net start mysql

15. Mise à jour du serveur

Tous les composants qui composent le serveur Web sont activement développés et de nouvelles versions sont régulièrement publiées. Lorsqu'une nouvelle version est publiée, vous pouvez mettre à jour un composant (par exemple PHP) ou plusieurs à la fois.

Supprimer un serveur

Si vous n'avez plus besoin du serveur, ou si vous souhaitez l'installer à nouveau, arrêtez les services et supprimez-les du démarrage automatique en exécutant séquentiellement sur la ligne de commande :

C:\Server\bin\Apache24\bin\httpd.exe -k stop c:\Server\bin\Apache24\bin\httpd.exe -k désinstaller net stop mysql c:\Server\bin\mysql-8.0\bin\ mysqld --supprimer

Supprimez les fichiers du serveur ; pour ce faire, supprimez le dossier. C:\Serveur\. Attention, cela supprimera toutes les bases de données et vos sites.

Comment protéger votre serveur Web Apache contre le piratage sous Windows

Avec PHP (avec choix de versions), avec MySQL et phpMyAdmin. Ce site est hébergé exactement dessus : support technique réactif et qualifié, installation de WordPress et autres applications web en un clic, en cadeau lors du paiement d'un an, transfert de site gratuit. Lors de la commande d'un hébergement + 1 mois offert (code promotionnel b33e0e2f).

Dans le premier article, nous avons expliqué comment installer Apache sur Windows7. Voyons maintenant comment connecter le langage PHP à notre serveur.

Installation de PHP

1) Téléchargez l'archive zip avec php depuis le site http://windows.php.net/download/. J'ai choisi Thread Safe - php-5.3.5-Win32-VC6-x86.

2) Décompressez php dans le dossier c:/php-5.3.5/

3) Connectez PHP à Apache. Ouvrir le fichier httpd.conf. C'est dans le dossier confà l'endroit où vous avez installé Apache. j'ai ça C:Fichiers de programme (x86)Apache Software FoundationApache2.2conf .

Pour connecter php en tant que module, vous devez ajouter seulement 3 instructions au fichier httpd.conf :

(cocitation)
LoadModule php5_module c:/php-5.3.5/php5apache2_2.dll
AddType application/x-httpd-php phtml php
PHPIniDir "c:/php-5.3.5/"
(/cocitation)

Ces lignes doivent être placées approximativement au milieu du fichier httpd.conf, par exemple immédiatement après les directives LoadModule. Pour moi ils se terminent à la ligne 128 du fichier. L'emplacement exact de ces directives n'est pas critique, mais elles ne doivent pas être placées au début ou à la toute fin du fichier httpd.conf.

Note.

  • La première ligne charge le module PHP implémenté dans la bibliothèque php5apache2_2.dll
  • La deuxième ligne définit la correspondance entre les fichiers avec l'extension php et le type MIME application/x-httpd-php, qui est traité par le module PHP.
  • La troisième ligne permet de spécifier explicitement l'emplacement du fichier de configuration php.ini.

4) Création d'un fichier de configuration en php. Le répertoire c:/php-5.3.5 contient plusieurs modèles de fichiers de configuration. Prenons le fichier comme base c:/php-5.3.5/php.ini-production et renommez-le en php.ini.Ainsi, le fichier de configuration PHP (php.ini) sera situé dans le répertoire c:/php-5.3.5 et c'est là que toutes les modifications de configuration PHP doivent être effectuées.

Après avoir modifié httpd.conf et créé le fichier php.ini, redémarrez Apache.

5) Vérifiez. Dans le dossier C:Program Files (x86)Apache Software FoundationApache2.2htdocs, créez un fichier index.php avec le code :

(cocitation)

(/cocitation)

Allez maintenant sur http://localhost/index.php dans votre navigateur. Si tout est fait correctement, vous verrez un tableau violet avec les paramètres php.

Paramètres PHP supplémentaires

Activez le support des entrées courtes php, dans php.ini recherchez la fonction short_open_tag et activez-la : short_open_tag = On

Dans php.ini, précisez le chemin d'accès aux extensions php ; pour cela, décommentez et remplissez la ligne extension_dir. Voici à quoi cela ressemble pour moi :

(cocitation)
extension_dir = "c:/php-5.3.5/ext"
(/cocitation)

(cocitation)
extension=php_mbstring.dll
(/cocitation)

et la ligne extension=php_mysqli.dll pour travailler avec les bases de données MySql :

(cocitation)
extension=php_mysqli.dll
(/cocitation)

15/03/17 5,1K

Le fichier de configuration php.ini est le principal outil de configuration du noyau PHP. Il est compté à chaque initialisation de PHP. Si la modification n'est pas visible, assurez-vous d'arrêter et de redémarrer httpd. Si les modifications que vous avez apportées sont toujours en vigueur, utilisez la fonction phpinfo() pour vérifier où se trouve php ini.

Le fichier de configuration est bien commenté et détaillé. Les paramètres sont sensibles à la casse, les valeurs des mots-clés ne le sont pas ; les espaces et les lignes commençant par un point-virgule sont ignorés. Les valeurs booléennes peuvent être représentées par 1/0, Oui/Non, On/Off ou True/False. Les valeurs par défaut dans php.ini affecteront l'installation de PHP, qui pourra être personnalisée ultérieurement.

Dans cet article, nous examinerons les paramètres importants du fichier php.ini qui peuvent être requis pour l'analyseur PHP.

short_open_tag = Désactivé

Les balises ouvertes courtes ressemblent à ceci :. Ce paramètre doit être défini sur Désactivé si vous souhaitez utiliser les fonctionnalités de traitement XML.

safe_mode = Désactivé

Si ce paramètre est activé, vous avez probablement compilé PHP avec l'indicateur activate-safe-mode. Le mode sans échec est le plus important pour utiliser CGI.

safe_mode_exec_dir =

Cette option n'a d'importance que si le mode sans échec est activé. Il peut également être installé avec l'indicateur --with-exec-dir pendant le processus de construction Unix. PHP en mode sans échec n'exécute que les binaires externes de ce répertoire. Le répertoire par défaut est /usr/local/bin . Cela n'a rien à voir avec la diffusion d'une page Web PHP/HTML classique.

safe_mode_allowed_env_vars =

Cette option php ini spécifie quelles variables d'environnement les utilisateurs peuvent modifier en mode sans échec. Par défaut, seules les variables auxquelles "PHP_" est ajouté. Si cette directive est vide, alors la plupart des variables peuvent être modifiées.

safe_mode_protected_env_vars =

Le paramètre définit les variables d'environnement que les utilisateurs ne peuvent pas modifier en mode sans échec, même si l'option safe_mode_allowed_env_vars est activée.

désactiver_fonctions =

Un ajout plutôt utile à la configuration PHP4, qui a été conservé dans la version PHP5, est la possibilité de désactiver certaines fonctions pour des raisons de sécurité. Auparavant, cela nécessitait une édition manuelle du code C dans lequel l'interpréteur PHP était écrit. Le système de fichiers, le système d'exploitation et les fonctions réseau doivent figurer en premier sur cette liste, car la possibilité d'écrire des fichiers et de modifier le système via HTTP n'est pas sécurisée.

max_execution_time = 30

Lors de la configuration de php ini, vous devez être conscient que la fonction set_time_limit() ne fonctionnera pas en mode sans échec. Il s’agit donc du principal moyen d’implémenter le retardement de l’exécution d’un script en mode sans échec. Sous Windows, vous devez forcer l'arrêt en fonction de la consommation maximale de mémoire et non du temps. Vous pouvez également utiliser le paramètre de délai d'attente Apache pour implémenter un délai. Mais cela s'appliquera également aux fichiers de site non PHP.

error_reporting = E_ALL & ~E_NOTICE

La valeur par défaut est E_ALL & ~E_NOTICE , toutes les erreurs sauf les notifications. Les serveurs doivent être définis au moins sur la valeur par défaut. Et ce n'est que sur les serveurs principaux que vous pouvez utiliser une valeur inférieure.

erreur_prepend_string = [""]

Avec » est utilisé avec des chaînes, comme pour former la valeur d'un champ de formulaire.

variables_order = EGPCS

Remplace gpc_order . Les deux versions sont obsolètes avec register_globals. Il définit l'ordre des différentes variables : Environnement, GET, POST, COOKIE et SERVER (ou Intégré). Vous pouvez modifier cet ordre. Les variables seront écrasées séquentiellement de gauche à droite, la plus à droite étant toujours « gagnante ». Cela signifie que si vous laissez la valeur par défaut et utilisez le même nom pour la variable d'environnement, la variable POST et la variable COOKIE, le nom finira par être la variable COOKIE.

register_globals = Désactivé

Cette option php ini set vous permet de déterminer si les variables EGPCS doivent être enregistrées comme globales. Cette méthode est désormais obsolète et depuis PHP 4.2, cet indicateur est défini sur Off par défaut. Utilisez plutôt des tableaux superglobaux.

gpc_order = GPC

Cette option est obsolète.

magic_quotes_gpc = Activé

Échappe les guillemets dans l'entrée GET/POST/COOKIE. Si vous utilisez de nombreux formulaires qui soumettent des données à eux-mêmes ou à d'autres formulaires et affichent les valeurs du formulaire, vous devrez activer cette directive ou utiliser les fonctions addlashes() sur les types de données chaîne.

magic_quotes_runtime = Désactivé

Cette option échappe aux guillemets dans les chaînes de base de données et les chaînes de texte entrantes. N'oubliez pas que SQL ajoute des barres obliques aux guillemets simples et aux apostrophes lors du stockage des chaînes et ne les supprime pas lors du renvoi des chaînes. Si cette option est désactivée, vous devez utiliser la fonction stripslashes() lors de la sortie de tout type de données de chaîne à partir d'une base de données SQL. Si magic_quotes_sybase est défini sur On , alors ce paramètre doit être Off .

magic_quotes_sybase = Désactivé

Échappe les guillemets simples dans les chaînes de base de données entrantes et les chaînes de texte avec des guillemets simples de style Sybase plutôt qu'avec des barres obliques inverses. Si magic_quotes_runtime est défini sur On , cette option doit être désactivée.

fichier-prepend-auto=

Si ce paramètre php ini spécifie un chemin, PHP devrait automatiquement ajouter une construction include() au début de chaque fichier PHP. Les restrictions sur les chemins d’accès aux fichiers d’inclusion doivent être prises en compte.

fichier-ajout automatique =

Si ce paramètre spécifie un chemin, PHP doit automatiquement insérer une construction include() à la fin de chaque fichier PHP, sauf lors de la sortie à l'aide de la fonction exit(). Les restrictions sur les chemins d’accès aux fichiers d’inclusion doivent être prises en compte.

include_path =

Si vous définissez cette valeur, vous serez uniquement autorisé à inclure ou à demander des fichiers à partir des répertoires spécifiés. Le répertoire include se trouve généralement sous le document racine. Ceci est nécessaire si vous travaillez en mode sans échec. Définissez le paramètre sur .in pour inclure les fichiers du répertoire où se trouve votre script. Plusieurs répertoires sont séparés par des deux-points : .:/usr/local/apache/htdocs:/usr/local/lib.

racine_doc =

Lors de la configuration de php ini, si vous utilisez Apache, le répertoire racine du document pour ce serveur ou cet hôte virtuel est déjà défini dans le fichier httpd.conf. Définissez cette valeur ici si vous utilisez le mode sans échec ou si vous souhaitez uniquement autoriser PHP pour une partie du site ( par exemple, dans un seul sous-répertoire).

Nous présentons à votre attention un nouveau cours de l'équipe Le Codepar- "Tests d'intrusion des applications Web à partir de zéro." Théorie générale, préparation à l'environnement de travail, fuzzing passif et empreintes digitales, fuzzing actif, vulnérabilités, post-exploitation, outils, ingénierie sociale et bien plus encore.


Si vous êtes un utilisateur Linux, référez-vous à l'article " ".

Sortie PHP 7

PHP 7.0.0 Alpha release 2 est actuellement disponible. La première version bêta apparaîtra dans les prochains jours. Ni les alphas ni les bêtas ne sont recommandés pour un travail réel. Mais vous pouvez déjà les essayer sur le serveur de test.

De plus, les changements dans PHP7 sont très significatifs :

  • Augmentez les performances de PHP 7 jusqu'à deux fois par rapport à PHP 5.6 (wow !)
  • Prise en charge 64 bits attendue
  • De nombreuses erreurs fatales sont désormais des exceptions
  • Suppression des anciennes SAPI (Server Application Programming Interfaces) et extensions non prises en charge
  • L'opérateur NULL fusionne (??)
  • Opérateur de comparaison combiné (<=>)
  • Déclaration de type de retour
  • Déclaration de type scalaire
  • Cours anonymes

Comment installer PHP 7 sur Windows

PHP, quelle que soit sa version, est presque toujours associé à un serveur et à un système de gestion de base de données. Si vous n'avez pas de serveur du tout, référez-vous à l'article "". Lorsque vous aurez installé PHP dans cet article, revenez ici.

Si vous disposez déjà d'un serveur, vous trouverez des questions générales sur la mise à jour dans l'article « ».

Fonctionnalités de l'installation de PHP 7 sur Windows

J'ai installé sur Apache 2.4 VC14. Si vous n'avez pas encore mis à jour votre serveur, faites-le. Liens et détails pour ce manuel.

Pour télécharger PHP 7.0, rendez-vous sur cette page. Téléchargez toujours tous les programmes uniquement à partir des sites Web officiels !

Sélectionnez la version Fil de sécurité(64 bits ou 32 bits comme votre serveur Apache).

Certainement nécessaire Visual C++ redistribuable pour Visual Studio 2015! Si vous avez déjà mis à niveau votre serveur Apache, ce serveur a également besoin de ce package. Ceux. vous auriez déjà dû l'installer. Si ce n'est pas le cas, rendez-vous sur le site officiel et téléchargez le package du bitness approprié.

Après le téléchargement, installez-le.

Si vous l'utilisez lors de l'installation du serveur, décompressez le contenu de l'archive téléchargée depuis PHP dans le répertoire C:ServeurbinPHP.

Allez dans ce répertoire, trouvez le fichier développement php.ini et renommez-le en php.ini.

Ouvrez ce fichier avec n'importe quel éditeur de texte, recherchez la ligne là-bas

; rép_extension = "ext"

Et remplacez-le par

Rép_extension = "ext"

Nous devons maintenant activer les extensions pour PHP, car sans elles, la plupart des sites et scripts ne fonctionneront pas. Attention : Pour le moment, certaines extensions ne peuvent pas démarrer le serveur, alors regardez de plus près ci-dessous. Rechercher un groupe de lignes :

;extension=php_bz2.dll ;extension=php_curl.dll ;extension=php_fileinfo.dll ;extension=php_gd2.dll ;extension=php_gettext.dll ;extension=php_gmp.dll ;extension=php_intl.dll ;extension=php_imap.dll ;extension =php_interbase.dll ;extension=php_ldap.dll ;extension=php_mbstring.dll ;extension=php_exif.dll ; Doit être après mbstring car cela en dépend ;extension=php_mysqli.dll ;extension=php_oci8_12c.dll ; Utiliser avec Oracle Database 12c Instant Client ;extension=php_openssl.dll ;extension=php_pdo_firebird.dll ;extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll ;extension=php_pdo_odbc.dll ;extension=php_pdo_pgsql.dll ;extension=php_pdo _sqlite.dll ; extension=php_pgsql.dll ;extension=php_pspell.dll ;extension=php_shmop.dll

Et remplacez-les par les lignes suivantes. Veuillez noter que certaines extensions restent désactivées car si elles sont activées, Apache ne démarrera pas !

Extension=php_bz2.dll extension=php_curl.dll extension=php_fileinfo.dll extension=php_gd2.dll extension=php_gettext.dll extension=php_gmp.dll extension=php_intl.dll extension=php_imap.dll ;extension=php_interbase.dll extension=php_ldap. dll extension=php_mbstring.dll extension=php_exif.dll ; Doit être après mbstring car cela en dépend extension=php_mysqli.dll ;extension=php_oci8_12c.dll ; Utiliser avec Oracle Database 12c Instant Client extension=php_openssl.dll ;extension=php_pdo_firebird.dll extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll extension=php_pdo_odbc.dll extension=php_pdo_pgsql.dll extension=php_pdo_sqlite.dll extension=php_pgs ql.dll ; extension=php_pspell.dll extension=php_shmop.dll

Nous trouvons maintenant le groupe de lignes suivant :

;extension=php_soap.dll ;extension=php_sockets.dll ;extension=php_sqlite3.dll ;extension=php_tidy.dll ;extension=php_xmlrpc.dll ;extension=php_xsl.dll

Ces extensions peuvent toutes être activées :

Extension=php_soap.dll extension=php_sockets.dll extension=php_sqlite3.dll extension=php_tidy.dll extension=php_xmlrpc.dll extension=php_xsl.dll

Enregistrez et fermez le fichier.

Passons maintenant au fichier de configuration Apache. Pour ceux qui ont installé selon mes instructions, ce fichier est ici C:ServerbinApache24confhttpd.conf

Ouvrez-le avec n'importe quel éditeur de texte. Nous retrouvons les lignes avec lesquelles nous avons connecté PHP 5 et les supprimons.

#BEGIN MODIFICATIONS DE L'INSTALLATEUR PHP - SUPPRIMER UNIQUEMENT LORS DE LA DÉSINSTALLATION PHPIniDir "C:/Server/bin/PHP" AddHandler application/x-httpd-php .php LoadModule php5_module "C:/Server/bin/PHP/php5apache2_4.dll" #END PHP MODIFICATIONS DE L'INSTALLATEUR - SUPPRIMER UNIQUEMENT LORS DE LA DÉSINSTALLATION

Ajoutez plutôt les lignes :

Le Garant est un intermédiaire de confiance entre les Participants lors de la transaction.


19/03/17 5,8K

Le projet Apache ne fournit pas de versions binaires du logiciel, uniquement le code source. Ils peuvent cependant être obtenus auprès de sites tiers :

  • ApacheHaus ;
  • Salon Apache.

Téléchargez Apache Windows 32 bits ( httpd-2.4.20-win32-VC14.zip) ou version 64 bits ( httpd-2.4.20-win64-VC14.zip). Vérifiez si vous avez installé Version du système d'exploitation 64 bits. Pour déterminer cela, vous pouvez utiliser msinfo32.exe. Cet outil vous aide à collecter des informations sur votre ordinateur, à diagnostiquer les problèmes ou peut être utilisé pour accéder à d'autres outils.

Pour l'exécuter, exécutez la commande Exécuter > msinfo32 > appuyez sur Entrée.

Une fois que vous avez trouvé la version dont vous avez besoin, téléchargez l'archive Zip puis extrayez son contenu dans le dossier C:Apache24.

Avant de démarrer le serveur Apache, si vous devez changer le port d'écoute en 8181 :

  • Ouvrez le fichier C:Apache24confhttpd.conf dans un éditeur de texte ;
  • Recherchez la ligne suivante : Listen 80 ;
  • Et remplacez-le par : Écoutez 8181.

Enregistrez vos modifications.

Vous pouvez maintenant démarrer le serveur Apache Windows 7 :

Ouvrez une invite de commande en tant qu'administrateur et accédez au sous-répertoire bin :

Tapez httpd.exe et appuyez sur Entrée.

Si une boîte de dialogue apparaît à l'écran indiquant que le fichier MSVCR140.dll est manquant, vous devez installer Visual C++ redistribuable pour Visual Studio 2015 (sélectionnez vc_redist.x64.exe si vous avez installé Windows 64 bits).

Ouvrez maintenant votre navigateur et saisissez http://localhost:8181 dans la barre d'adresse pour lancer le site de démonstration.

Installer PHP 7 sous Windows

PHP 7 est une mise à jour importante du langage de développement Web côté serveur PHP. Téléchargez l'archive zip VC14 x64 Thread Safe (29 avril 2016 00:38:19) . Si vous avez téléchargé Version 32 bits d'Apache, vous devez installer PHP x86.

Créez un dossier nommé " php7", extrayez-y le contenu de l'archive php-7.0.6-Win32-VC14-x64.zip, puis placez le dossier à la racine du lecteur C :

Configurer Apache pour utiliser PHP

Ouvrez le fichier de configuration de l'installation Windows Apache C:Apache24confhttpd.conf.

Copiez les lignes suivantes au début du fichier :

  • Application AddHandler/x-httpd-php.php;
  • AddType application/x-httpd-php .php .html;
  • LoadModule php7_module "c:/php7/php7apache2_4.dll";
  • PHPIniDir "c:/php7" .

Dans la rubrique ajoutez la ligne index.php et placez-la avant index.html :

AnnuaireIndex index.php index.html

Enregistrez le fichier Apache PHP Windows. Maintenant, renommez le fichier C:php7php.ini-développement vers C:php7php.ini.

Activation de mod_rewrite pour réécrire les URL

Ouvrez le fichier de configuration Apache C:Apache24confhttpd.conf;
Trouvez la ligne dedans #LoadModule rewrite_module modules/mod_rewrite.so et supprimez le symbole dièse "#";
Rechercher toutes les occurrences de la chaîne " AllowOverride Aucun" et remplacez-les par " Autoriser tout remplacer".

Configurer PHP avec MySQL

Modifiez le fichier php.ini et décommentez le répertoire des extensions. Supprimez le symbole " ; " au début des lignes :

; Répertoire dans lequel résident les extensions chargeables (modules). ; http://php.net/extension-dir ; rép_extension = "./" ; Sous Windows : extension_dir = "ext"

Activez les lignes suivantes, cela vous permettra d'exécuter les modules MySQL :

extension=php_mysqli.dll extension=php_pdo_mysql.dll

Et aussi les lignes ci-dessous si vous utilisez l'installation d'Apache PHP MySQL Window dans un environnement de développement :

extension=php_curl.dll extension=php_fileinfo.dll extension=php_gd2.dll extension=php_mbstring.dll extension=php_openssl.dll

Décommentez error_log pour activer la journalisation des fichiers :

; Consigner les erreurs dans le fichier spécifié. Le comportement par défaut de PHP est de laisser cette valeur vide ; http://php.net/error-log ; Exemple : error_log = c:php7php_errors.log ;

Enregistrez vos modifications.

IMPORTANT! Définissez Windows PATH pour trouver PHP

  • Faites un clic droit sur le raccourci Poste de travail - Propriétés - Avancé - Variables d'environnement;
  • Dans la rubrique " Variables système« Trouvez l'élément « Chemin », cliquez dessus et sélectionnez « Modifier » ;
  • Ajoutez le chemin du dossier php à la fin ( doit être après le point-virgule ";"). Par exemple : ";C:php7 ";
  • Cliquez sur "OK".

Comment vérifier si PHP est installé

Créez un fichier sur C:Apache24htdocsphpinfo.php et ajoutez-y le code suivant.



Des questions ?

Signaler une faute de frappe

Texte qui sera envoyé à nos rédacteurs :