PHP

Cet article comprend des exemples sur la façon de configurer les applications PHP suivantes pour les déployer sur les services d’hébergement d’applications de Kinsta à partir d’un dépôt GitHub :

Pré-requis

  • Les modèles de démarrage rapide de Kinsta sont stockés et gérés dans GitHub ; par conséquent, vous avez besoin d’un compte GitHub pour y accéder.
  • Vous devez créer un compte MyKinsta pour déployer l’application.

PHP

  1. Connectez-vous à GitHub et créez un nouveau dépôt à partir de ce modèle (Utiliser ce modèle > Créer un nouveau dépôt) : Kinsta – Hello World – PHP.
  2. Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
  3. Choisissez le dépôt PHP Hello World et l’emplacement du centre de données. Laissez tous les autres réglages par défaut et cliquez sur Continuer à chaque étape.
  4. Dans l’étape Résumé, cliquez sur Déployer maintenant.

Pendant le déploiement, Kinsta détecte automatiquement la commande de démarrage pour le processus web et installe les dépendances définies dans votre fichier composer.json. L’application est disponible dès que le déploiement est terminé, et la page d’accueil Kinsta se charge à l’URL de votre application.

Page d'accueil Kinsta après le déploiement réussi de PHP.
Page d’accueil Kinsta après le déploiement réussi de PHP.

Vous préférez regarder la version vidéo ?

Configuration du serveur web

Kinsta configure automatiquement un serveur web Apache qui sert votre fichier index.php à partir du répertoire principal du projet de la manière habituelle. Créez un fichier index.php dans le dossier de votre projet comme page d’index par défaut.

Jigsaw

Voici un exemple de mise en place d’un site statique avec Jigsaw sur les services d’hébergement d’applications de Kinsta à partir d’un dépôt GitHub.

Jigsaw est un framework de site statique qui utilise des modèles Blade pour créer vos mises en page et Markdown pour construire votre contenu dans les modèles afin que vous puissiez produire des sites statiques simples sans connaissances de codage complexes. Vous trouverez plus d’informations sur le site web de Jigsaw.

  1. Connectez-vous à GitHub et créez un nouveau dépôt à partir de ce modèle (Utiliser ce modèle > Créer un nouveau dépôt) : Kinsta – Jigsaw Starter.
  2. Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
  3. Choisissez le dépôt Jigsaw Starter et l’emplacement du centre de données. Laissez tous les autres réglages par défaut et cliquez sur Continuer à chaque étape.
  4. À l’étape Résumé, comme vous devez ajouter les Buildpacks nécessaires avant le déploiement, cliquez sur Déployer plus tard.
  5. Pour que l’application puisse construire les fichiers CSS/JS, vous devez ajouter deux buildpacks : Node.js et PHP. Cliquez sur Réglages > Ajouter un buildpack, sélectionnez Node.js > Ajouter un buildpack. Répétez l’opération pour PHP.
  6. Cliquez sur Déploiements > Déployer maintenant > choisissez la branche requise > Déployez l’application.

Jigsaw est basé sur Laravel ; c’est une application PHP normale, donc pendant le déploiement, Kinsta détecte automatiquement la commande de démarrage pour le processus web et installe les dépendances définies dans votre fichier composer.json. L’application est disponible dès que le déploiement est terminé, et une page Jigsaw par défaut se charge à l’URL de votre application.

Page par défaut de Jigsaw après une installation réussie.
Page par défaut de Jigsaw après une installation réussie.

Buildpacks

Dans la plupart des cas, vous voudrez que l’application construise les fichiers CSS/JS, vous devrez donc ajouter ces deux Buildpacks :

  • Node JS
  • PHP

Configuration du serveur web

Commande de démarrage

Lorsque vous déployez l’application, Kinsta crée automatiquement un processus web avec npm start comme commande de démarrage. Si nécessaire, vous pouvez modifier cette commande dans les processus.

Laravel

Voici un exemple de configuration d’une application Laravel à déployer sur les services d’hébergement d’applications de Kinsta à partir d’un dépôt GitHub.

  1. Connectez-vous à GitHub et créez un nouveau dépôt à partir de ce modèle (Utiliser ce modèle > Créer un nouveau dépôt) : Kinsta – Hello World – Laravel.
  2. Laravel nécessite que la variable d’environnementAPP_KEY soit définie. Vous pouvez générer une clé d’application vous-même localement, ou vous pouvez utiliser ce générateur de clé Laravel en ligne.
  3. Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
  4. Choisissez le dépôt Hello World Laravel et l’emplacement du centre de données. Dans Variables d’environnement, dans Clé 1, saisissez APP_KEY, et dans Valeur 1, collez la clé générée à l’étape 2, sélectionnez Disponible pendant le runtime et Disponible durant le processus de construction.
  5. Laissez tous les autres réglages par défaut et cliquez sur Continuer à chaque étape. À l’étape Résumé, cliquez sur Déployer ultérieurement pour ajouter les Buildpacks nécessaires avant le déploiement.
  6. Pour que l’application puisse construire les fichiers CSS/JS, vous devez ajouter deux Buildpacks : Node.js et PHP. Cliquez sur Réglages > Ajouter un buildpack, sélectionnez Node.js > Ajouter un buildpack. Répétez l’opération pour PHP.
  7. Cliquez sur Déploiements > Déployer maintenant > choisissez la branche nécessaire > Déployez l’application.

Laravel est une application PHP normale, donc pendant le déploiement, Kinsta détecte automatiquement la commande de démarrage pour le processus web et installe les dépendances définies dans votre fichier composer.json. L’application est disponible dès que le déploiement est terminé, et une page Jigsaw par défaut se charge à l’URL de votre application.

Page d'accueil Kinsta après un déploiement réussi de Laravel.
Page d’accueil Kinsta après un déploiement réussi de Laravel.

Vous préférez regarder la version vidéo ?

Connecter une base de données

Si vous souhaitez connecter votre application à une base de données, commencez par créer une base de données dans le même centre de données que votre application.

  1. Ajoutez une base de données.
  2. Connectez la base de données à l’application en ajoutant une connexion interne et en cochant la case Ajouter des variables d’environnement…. Les variables d’environnement de la base de données seront automatiquement renseignées.
  3. Certains noms de variables (clés) utilisés par Laravel sont différents de ceux créés automatiquement dans MyKinsta. Modifiez les clés des variables si nécessaire pour qu’elles correspondent aux noms de variables définis dans le fichier database.php de Laravel. Vous trouverez ci-dessous les noms de variables (clés) correspondant aux types de bases de données pris en charge par Laravel.

Variables d’environnement

MySQL et PostgreSQL

Clé générée automatiquementClé Laravel
DB_HOSTDB_HOST
DB_PORTDB_PORT
DB_NAMEDB_DATABASE
DB_USERDB_USERNAME
MOT DE PASSE DB_PASSWORDMOT DE PASSE DB_PASSWORD
DB_CONNECTION_URLDB_URL

Redis

Clé générée automatiquementClé Laravel
DB_HOSTREDIS_HOST
DB_PORTREDIS_PORT
DB_NAMEREDIS_DB
DB_USERREDIS_USERNAME
DB_PASSWORDREDIS_PASSWORD
DB_CONNECTION_URLREDIS_URL

Clé APP Laravel

Laravel exige que la variable d’environnement APP_KEY soit définie. Si cette clé n’est pas définie, vous verrez une page d’erreur 500 servie par Laravel. Vous pouvez générer une clé d’application vous-même localement ou utiliser le générateur de clé Laravel en ligne. Une fois que vous avez une clé, vous pouvez l’ajouter comme variable d’environnement.

Buildpacks

Dans la plupart des cas, vous voudrez que l’application construise les fichiers CSS/JS, vous devrez donc ajouter ces deux Buildpacks :

  • Node.js
  • PHP

Le buildpack qui contient le langage principal de votre application doit être le dernier dans la liste des buildpacks. Dans cet exemple, PHP est le langage principal et doit être le dernier buildpack de la liste.

Configuration du serveur web

Commande de démarrage

Le processus Web par défaut est heroku-php-apache2. Cet exemple inclut un fichier .htaccess qui redirige toutes les requêtes vers public/index.php pour Laravel. Si nécessaire, vous pouvez modifier cette commande lors de l’ajout de votre application (Configurer vos processus) ou sur la page Processus de l’application après le déploiement. Vous pouvez utiliser :

heroku-php-apache2 /public

ou

php artisan serve --host 0.0.0.0 --port 8080

Leaf

Voici un exemple de configuration d’une application PHP Leaf à déployer sur les services d’hébergement d’applications de Kinsta à partir d’un dépôt GitHub.

Leaf est un framework PHP fin et léger qui se concentre sur l’expérience du développeur, la facilité d’utilisation et un code de haute performance. Vous trouverez plus d’informations sur le site web de Leaf PHP.

  1. Connectez-vous à GitHub et créez un nouveau dépôt à partir de ce modèle (Utiliser ce modèle > Créer un nouveau dépôt) : Kinsta – Hello World – Leaf PHP.
  2. Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
  3. Choisissez le dépôt Hello World – Leaf PHP et l’emplacement du centre de données. Laissez tous les autres réglages par défaut et cliquez sur Continuer à chaque étape.
  4. Dans l’étape Résumé, cliquez sur Déployer maintenant.

Pendant le déploiement, Kinsta détecte automatiquement la commande de démarrage pour le processus web et installe les dépendances définies dans votre fichier composer.json. L’application est disponible dès que le déploiement est terminé, et la page d’accueil Kinsta se charge à l’URL de votre application.

Page d'accueil Kinsta après l'installation réussie de Leaf PHP.
Page d’accueil Kinsta après l’installation réussie de Leaf PHP.

Vous préférez regarder la version vidéo ?

Configuration du serveur web

Port

Kinsta définit automatiquement la variable d’environnement PORT. Vous ne devez pas la définir vous-même, ni la coder en dur dans l’application.

Commande de démarrage

Lors du déploiement de l’application, Kinsta crée automatiquement un processus web exécutant heroku-php-apache2.

Cycle de vie du déploiement

Chaque fois qu’un déploiement est initié (par la création d’une application ou par un redéploiement suite à un commit entrant), la commande composer install est exécutée.

Statamic

Voici un exemple de configuration d’une application Statamic à déployer sur les services d’hébergement d’applications de Kinsta à partir d’un dépôt GitHub.

Statamic est un CMS « flat-file » qui, par défaut, stocke toutes les données dans le dépôt Git. Avant de pousser le code vers MyKinsta, l’installation locale de Statamic est l’approche recommandée pour créer et maintenir votre site. Ensuite, créez un compte super utilisateur, puis validez et transférez toutes les modifications dans le dépôt.

  1. Connectez-vous à GitHub et créez un nouveau dépôt à partir de ce modèle (Utiliser ce modèle > Créer un nouveau dépôt) : Kinsta – Statamic Boilerplate.
  2. Statamic est basé sur Laravel, la variable d’environnement APP_KEY doit donc être définie. Vous pouvez générer une clé d’application vous-même localement, ou vous pouvez utiliser ce générateur de clé Laravel en ligne.
  3. Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
  4. Choisissez le dépôt Statamic Starter et l’emplacement du centre de données. Dans Variables d’environnement:
    1. Dans Clé 1, saisissez APP_KEY, et dans Valeur 1, collez la clé générée à l’étape 2.
    2. Cliquez sur Ajouter et dans Clé 2, saisissez APP_KINSTA, et dans Valeur 2, saisissez true.
    3. Sélectionnez Disponible pendant l’exécution et Disponible pendant le processus de construction.
  5. Laissez tous les autres réglages par défaut et cliquez sur Continuer à chaque étape. À l’étape Résumé, cliquez sur Déployer ultérieurement pour ajouter les Buildpacks nécessaires avant le déploiement.
  6. Pour que l’application puisse construire les fichiers CSS/JS, vous devez ajouter deux Buildpacks : Node.js et PHP. Cliquez sur Réglages > Ajouter un buildpack, sélectionnez Node.js > Ajouter un buildpack. Répétez l’opération pour PHP.
  7. Cliquez sur Déploiements > Déployer maintenant > choisissez la branche nécessaire > Déployer l’application.

Statamic est basé sur Laravel ; c’est une application PHP normale, donc pendant le déploiement, Kinsta détecte automatiquement la commande de démarrage pour le processus web et installe les dépendances définies dans votre fichier composer.json. L’application est disponible dès que le déploiement est terminé, et la page d’accueil Statamic se charge à l’URL de votre application.

Page de bienvenue Statamic après une installation réussie.
Page de bienvenue Statamic après une installation réussie.

Vous préférez regarder la version vidéo ?

Variables d’environnement

Statamic nécessite que les variables d’environnement suivantes soient définies :

Buildpacks

Dans la plupart des cas, vous voudrez que l’application construise les fichiers CSS/JS, vous devrez donc ajouter ces deux Buildpacks :

  • Node.js
  • PHP

Le buildpack qui contient le langage principal de votre application doit être le dernier dans la liste des buildpacks. Dans cet exemple, PHP est le langage principal et doit être le dernier buildpack de la liste.

Configuration du serveur web

Commande de démarrage

Le processus web par défaut est heroku-php-apache2 public/. Si nécessaire, vous pouvez modifier cette commande lors de l’ajout de votre application (Configurer vos processus) ou sur la page Processus de l’application après le déploiement.

PHP pour l’envoi d’e-mails

Voici un exemple de configuration d’une application PHP pour l’envoi d’e-mails via SendGrid sur les services d’hébergement d’applications de Kinsta, déployée à partir d’un dépôt GitHub.

Kinsta ne supporte pas nativement les e-mails sortants des serveurs. L’envoi d’e-mails via des fournisseurs spécialisés tels que SendGrid ou Mailchimp offre plus de flexibilité et des taux de réussite plus élevés pour les e-mails transactionnels et de campagne.

  1. Connectez-vous à GitHub et créez un nouveau dépôt à partir de ce modèle (Utiliser ce modèle > Créer un nouveau dépôt) : Kinsta – Hello World – Email Sending With PHP.
  2. Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
  3. Choisissez le dépôt Hello World Email PHP et un emplacement de centre de données. Dans les variables d’environnement, ajoutez les éléments suivants :
    • SENDGRID_API_KEY: La clé API de SendGrid.
    • TEST_EMAIL_TO_ADDRESS: L’adresse à laquelle envoyer l’e-mail de test.
    • TEST_EMAIL_FROM_ADDRESS: L’adresse à partir de laquelle envoyer l’e-mail de test.
    • TEST_ENDPOINT: Le point de terminaison à utiliser comme déclencheur pour l’envoi de l’e-mail de test. Veuillez utiliser une chaîne aléatoire d’au moins 8 caractères.
  4. Laissez tous les autres réglages par défaut et cliquez sur Continuer à chaque étape. À l’étape Résumé, cliquez sur Déployer maintenant.

L’application est disponible dès que le déploiement est terminé, et une page Hello World se charge à l’URL de votre application.

E-mail PHP envoyant la page Hello World après une installation réussie.
E-mail PHP envoyant la page Hello World après une installation réussie.

Déclencher un e-mail

Grâce à un point d’entrée index.php très simple, deux points de terminaison sont exposés ; tous les autres renverront un message 404 :

  • /: Une page simple qui renvoie le message « Hello World »
  • /${TEST_ENDPOINT}: Une page qui déclenche un e-mail de test.

Pour déclencher un e-mail, recherchez l’URL de votre déploiement sur la page Déploiements, ajoutez votre point de terminaison de test à cette URL et visitez la page. Par exemple, si votre TEST_ENDPOINT est défini sur o34nifnodhni4of et que votre dernier déploiement se trouve sur https://example.kinsta.app, vous pouvez déclencher un e-mail de test à partir de https://example.kinsta.app/o34nifnodhni4of dans votre navigateur.

Cet article vous a été utile ?