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
- 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.
- Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
- 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.
- 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.
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.
- 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.
- Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
- 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.
- À l’étape Résumé, comme vous devez ajouter les Buildpacks nécessaires avant le déploiement, cliquez sur Déployer plus tard.
- 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.
- 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.
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.
- 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.
- Laravel nécessite que la variable d’environnement
APP_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. - Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
- 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. - 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.
- 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.
- 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.
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.
- Ajoutez une base de données.
- 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.
- 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 automatiquement | Clé Laravel |
DB_HOST | DB_HOST |
DB_PORT | DB_PORT |
DB_NAME | DB_DATABASE |
DB_USER | DB_USERNAME |
MOT DE PASSE DB_PASSWORD | MOT DE PASSE DB_PASSWORD |
DB_CONNECTION_URL | DB_URL |
Redis
Clé générée automatiquement | Clé Laravel |
DB_HOST | REDIS_HOST |
DB_PORT | REDIS_PORT |
DB_NAME | REDIS_DB |
DB_USER | REDIS_USERNAME |
DB_PASSWORD | REDIS_PASSWORD |
DB_CONNECTION_URL | REDIS_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.
- 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.
- Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
- 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.
- 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.
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.
- 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.
- 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. - Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
- Choisissez le dépôt Statamic Starter 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. - Cliquez sur Ajouter et dans Clé 2, saisissez
APP_KINSTA
, et dans Valeur 2, saisisseztrue
. - Sélectionnez Disponible pendant l’exécution et Disponible pendant le processus de construction.
- Dans Clé 1, saisissez
- 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.
- 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.
- 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.
Vous préférez regarder la version vidéo ?
Variables d’environnement
Statamic nécessite que les variables d’environnement suivantes soient définies :
APP_KEY
– Vous pouvez générer une clé d’application vous-même localement, ou vous pouvez utiliser le générateur de clé Laravel en ligne.APP_KINSTA
– set totrue
.
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.
- 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.
- Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
- 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.
- 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.
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.