Maison  >  Article  >  développement back-end  >  documentation de déploiement du programme php

documentation de déploiement du programme php

PHPz
PHPzoriginal
2023-05-06 16:52:08859parcourir

Document de déploiement du programme PHP

PHP, en tant que langage de script côté serveur populaire, a été largement utilisé dans le développement de sites Web, le développement d'applications Web, les scripts de ligne de commande et d'autres domaines. Comment déployer des programmes PHP est devenu l'une des compétences que tout programmeur PHP doit maîtriser. Cet article présentera le processus de déploiement des programmes PHP et aidera les lecteurs à terminer le déploiement des programmes PHP dans différents scénarios.

  1. Création de l'environnement de déploiement

Tout d'abord, nous devons installer l'environnement PHP sur la machine cible. Vous pouvez installer PHP dans l'environnement Linux via la commande suivante :

$ sudo apt-get update
$ sudo apt-get install php

Une fois l'installation terminée, vous pouvez vérifier la version de PHP via la commande suivante :

$ php -v

Si vous voyez les informations sur la version de PHP, cela signifie que l'environnement PHP est configuré avec succès.

  1. Choisissez un serveur Web

Les programmes PHP doivent être exécutés via un serveur Web. Voici deux serveurs Web courants : Apache et Nginx.

2.1 Apache

Apache est l'un des serveurs Web les plus populaires, prend en charge plusieurs systèmes d'exploitation et est très facile à configurer. Apache peut être installé via la commande suivante :

$ sudo apt-get install apache2

Une fois l'installation terminée, vous pouvez vérifier si Apache fonctionne via la commande suivante :

$ systemctl status apache2

Si vous voyez les informations d'état d'Apache, Apache fonctionne normalement.

2.2 Nginx

Nginx est un serveur Web léger avec des performances plus rapides et une consommation de ressources inférieure à celle d'Apache. Nginx peut être installé via la commande suivante :

$ sudo apt-get install nginx

Une fois l'installation terminée, vous pouvez vérifier si Nginx s'exécute via la commande suivante :

$ systemctl status nginx

Si vous voyez les informations d'état de Nginx, Nginx fonctionne normalement.

  1. Déployer le programme PHP

Après avoir sélectionné le serveur Web, vous pouvez commencer à déployer le programme PHP. Nous pouvons télécharger des fichiers de programme PHP sur le serveur ou télécharger le code sur la machine cible via des outils de contrôle de version tels que Git.

3.1 Site Web statique

Si le programme PHP ne dispose que de simples pages HTML et de données statiques, nous pouvons placer ces fichiers dans le répertoire racine du serveur Web. Le répertoire racine est par défaut /var/www/html dans Apache et /usr/share/nginx/html dans Nginx. /var/www/html,在Nginx中默认为/usr/share/nginx/html

假设PHP程序的根目录为/var/www/myprogram,我们将其中的所有文件放到根目录下。然后将Web服务器的配置文件修改为如下内容:

Apache:

<VirtualHost *:80>
    ServerName myprogram.com
    DocumentRoot /var/www/myprogram
</VirtualHost>

Nginx:

server {
    listen 80;
    server_name myprogram.com;
    root /var/www/myprogram;
}

重启Web服务器,即可通过浏览器访问PHP程序。

3.2 动态网站

如果PHP程序需要动态生成页面,我们需要配置Web服务器与PHP之间的交互方式。

3.2.1 Apache + mod_php

Apache可以通过在PHP和Web服务器之间添加插件来支持PHP,其中最常见的插件是mod_php

Supposons que le répertoire racine du programme PHP soit /var/www/myprogram et que nous plaçons tous les fichiers qu'il contient dans le répertoire racine. Modifiez ensuite le fichier de configuration du serveur web avec le contenu suivant :

Apache:

$ sudo apt-get install libapache2-mod-php
Nginx:

<VirtualHost *:80>
    ServerName myprogram.com
    DocumentRoot /var/www/myprogram
    
    <Directory /var/www/myprogram>
        AllowOverride All
    </Directory>
    
    # Add the following two lines
    AddHandler php-script .php
    AddType text/html .php
</VirtualHost>
Redémarrez le serveur web et vous pourrez accéder au programme PHP via le navigateur.

3.2 Site Web dynamique

Si le programme PHP doit générer dynamiquement des pages, nous devons configurer la méthode d'interaction entre le serveur Web et PHP.

3.2.1 Apache + mod_php
  1. Apache peut prendre en charge PHP en ajoutant des plug-ins entre PHP et le serveur Web. Le plug-in le plus courant est mod_php. Il peut être installé via la commande suivante :
  2. $ sudo apt-get install php-fpm
Ensuite, vous pouvez ajouter le contenu suivant au fichier de configuration Apache :

server {
    listen 80;
    server_name myprogram.com;
    root /var/www/myprogram;
    
    location / {
        try_files $uri $uri/ /index.php?$args;
    }
    
    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.4-fpm.sock; # PHP版本可能不同,需要根据实际情况修改。
    }
}
Après avoir redémarré le service Apache, vous pouvez accéder au programme PHP via le navigateur.

3.2.2 Nginx + PHP-FPM

La méthode de communication entre Nginx et PHP est légèrement plus compliquée qu'Apache. Nous devons utiliser PHP-FPM pour gérer les processus PHP. Il peut être installé via la commande suivante :
    <VirtualHost *:80>
        ServerName myprogram.com
        DocumentRoot /var/www/myprogram
        
        <Directory /var/www/myprogram>
            AllowOverride All
        </Directory>
        
        # Add the following two lines
        AddHandler php-script .php
        AddType text/html .php
        
        # Add the following two lines
        php_flag display_errors on
        php_value error_log /var/log/apache2/error.log
    </VirtualHost>
  • Ensuite, vous pouvez ajouter le contenu suivant au fichier de configuration Nginx :
  • server {
        listen 80;
        server_name myprogram.com;
        root /var/www/myprogram;
        
        location / {
            try_files $uri $uri/ /index.php?$args;
        }
        
        location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass unix:/run/php/php7.4-fpm.sock;
            
            # Add the following two lines
            fastcgi_param  PHP_FLAG "display_errors=on";
            fastcgi_param  PHP_VALUE "error_log=/var/log/nginx/error.log";
        }
    }
  • Une fois la modification terminée, vous devez redémarrer les services Nginx et PHP-FPM.
  • Configuration supplémentaire
  • Lors de l'utilisation réelle, nous devons également effectuer certaines configurations supplémentaires, telles que le réglage des performances, les paramètres de sécurité, la gestion des journaux, etc.
  • 4.1 Réglage des performances

    Les programmes PHP peuvent rencontrer des problèmes de performances pendant le fonctionnement. Nous pouvons effectuer le réglage des performances des manières suivantes :

      Optimiser les requêtes SQL
    • Cache les données ;
    • Utiliser OPcache ;
    • Évitez les redirections.
    • 4.2 Paramètres de sécurité

    La sécurité des programmes PHP est également très importante. Nous pouvons améliorer la sécurité du programme des manières suivantes :

    Désactiver les fonctions PHP dangereuses

    Définir les autorisations de fichiers correctes ; Injection ;

    Activez HTTPS.

    4.3 Gestion des journaux

      Diverses erreurs et exceptions peuvent survenir lors de l'exécution des programmes PHP. Nous devons capturer ces problèmes via les journaux. PHP peut enregistrer les journaux d'erreurs via la fonction error_log intégrée de PHP.
    1. Nous pouvons activer le journal des erreurs de la manière suivante :

    Apache :

    rrreee🎜Nginx :🎜rrreee🎜Après avoir activé le journal, nous pouvons vérifier le journal des erreurs pour comprendre l'anomalie du programme et effectuer des réparations. 🎜🎜🎜Résumé🎜🎜🎜Cet article explique comment terminer le déploiement de programmes PHP à travers des étapes telles que la sélection d'un serveur Web, le déploiement de programmes PHP et l'exécution de configurations supplémentaires. Il présente également les problèmes courants de performances, de sécurité et de gestion des journaux. Les lecteurs peuvent choisir différentes méthodes de déploiement en fonction de la situation réelle, et configurer et effectuer un réglage des performances du programme pour améliorer les performances et la sécurité du programme. 🎜

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

    Déclaration:
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn