déployer
- Améliorations
- Améliorations du chargeur automatique Chargement de l'itinéraire améliorations
- Déployer à l'aide de Forge
- Introduction
Lorsque vous êtes prêt à déployer votre < Lors de l'application du code>Laravel dans un environnement de production, assurez-vous de payer attention à quelques points importants pour garantir que votre application fonctionne le plus efficacement possible. Dans cet article, nous aborderons quelques points clés pour garantir que votre application
Laravel
est déployée correctement. Nginx
Si vous souhaitez déployer votre application sur le serveur Nginx
, vous pouvez utiliser le fichier de configuration suivant comme point de départ configurez votre serveur Web
. Très probablement, ce fichier nécessitera quelques modifications personnalisées en fonction de la configuration de votre serveur. Si vous avez besoin d'aide pour gérer votre serveur, pensez à utiliser Laravel Forge :
server { listen 80; server_name example.com; root /example.com/public; add_header X-Frame-Options "SAMEORIGIN"; add_header X-XSS-Protection "1; mode=block"; add_header X-Content-Type-Options "nosniff"; index index.html index.htm index.php; charset utf-8; location / { try_files $uri $uri/ /index.php?$query_string; } location = /favicon.ico { access_log off; log_not_found off; } location = /robots.txt { access_log off; log_not_found off; } error_page 404 /index.php; location ~ \.php$ { fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; include fastcgi_params; } location ~ /\.(?!well-known).* { deny all; } }
Laravel
应用到生产环境时,请确保几个重要的注意点以保证你的应用能尽可能高效的运行。本文中我们将会覆盖几个重点来确保你的 Laravel
应用部署得当。
服务器配置
Nginx
如果你想要部署你的应用到 Nginx
服务器上,你可能会用到下面这个配置文件作为一个开始来配置你的 Web
Améliorations
Améliorations de l'Autoloader
Lorsque vous êtes prêt à déployer votre application dans l'environnement de production, assurez-vous d'optimiser le mappage de chargement automatique de votre classe Composer afin que Composer puisse rapidement trouver la bonne. fichier pour charger la classe donnée :
composer install --optimize-autoloader --no-dev
Conseils : En plus d'optimiser le chargeur automatique, vous devez également vous assurer d'inclure le fichier
composer.lock
dans le référentiel de code de votre projet. Lorsque vous avez le fichiercomposer.lock
dans le code de votre projet, vous pouvez installer plus rapidement les dépendances nécessaires au projet.composer.lock
这个文件。当你的项目代码中有composer.lock
这个文件时,便可以更快的安装项目中需要的依赖项。
优化配置加载
当你将应用程序部署到生产环境时,你应当确保在你部署过程中运行 config:cache
Artisan 命令:
php artisan config:cache
此命令将所有 Laravel 的配置文件合并到一个缓存文件,这次极大地减少了框架在加载配置值时必须对文件系统进行访问的次数。
{note} 如果在你部署过程中执行
config:cache
命令,你应当确保你仅从你的配置文件中调用env
函数。一旦配置被缓存,.env
文件将不被加载并且对env
函数的所有调用将返回null
。
优化路由加载
如果你想构建具有许多路由的大型应用程序,你应当确保在你部署的过程中运行 route:cache
Optimisation du chargement de la configurationLorsque vous déployez votre application en production, vous devez faire assurez-vous d'exécuter la commande
{note} Si vous exécutez la commandeconfig:cache
Artisan pendant votre déploiement :php artisan route:cacheCette commande fusionne tous les fichiers de configuration de Laravel en un seul fichier de cache, réduisant cette fois considérablement le temps dont dispose le framework pour charger les valeurs de configuration. nombre de fois où le système de fichiers doit être accédé.config:cache
lors de votre déploiement, vous devez vous assurer que vous appelez uniquement la fonctionenv
à partir de votre fichier de configuration. Une fois la configuration mise en cache, le fichier.env
ne sera pas chargé et tous les appels à la fonctionenv
renverrontnull
.Cette commande réduira tous les enregistrements de route à un seul appel de méthode dans un fichier cache, enregistrant ainsi des centaines de routes. performance de l'enregistrement de l'itinéraire lors du routage. 🎜🎜🎜{note} Étant donné que cette fonctionnalité utilise la sérialisation PHP, vous ne pouvez mettre en cache que les routes d'application qui utilisent spécifiquement le routage basé sur le contrôleur. PHP ne peut pas sérialiser les routes de fermeture. 🎜🎜🎜🎜🎜🎜🎜🎜🎜 Déploiement avec Forge 🎜🎜 Si vous n'êtes pas prêt à gérer votre propre configuration de serveur, ou si vous n'êtes pas familier avec la configuration des différents services requis pour exécuter de puissantes applications Laravel, Laravel Forge est un bon choix. 🎜🎜Laravel Forge peut créer des serveurs sur différents fournisseurs d'infrastructures (tels que DigitalOcean, Linode, AWS, etc.). De plus, Forge installe et gère tous les outils nécessaires pour créer de puissantes applications Laravel, telles que : Nginx, MySQL, Redis, Memcached, Beanstalk, etc. 🎜🎜Cet article a été publié pour la première fois sur le site 🎜LearnKu.com🎜. 🎜🎜 rrreee