Comment installer le framework YII PHP sur Ubuntu

Comment installer le framework YII PHP sur Ubuntu

Yii (prononcé Yee ou [Ji:]) est un cadre de programmation Web générique de programmation Web générique de programmation générique générique de programmation générique générique sécurisé, flexible mais pragmatique et efficace et efficace pour développer toutes sortes d'applications Web à l'aide de PHP.

Dans cet article, vous apprendrez à installer la dernière version du Framework yii dans Ubuntu LTS (support à long terme) verse pour commencer à développer des applications Web PHP modernes.

Prise en charge de la plate-forme

Yii Contient les versions ubuntu lts (soutien à long terme) suivantes:

  • Ubuntu 20.04 LTS («focal»)
  • Ubuntu 18.04 LTS («Bionic»)
  • Ubuntu 16.04 LTS («Xenial»)

Exigences

  • Une instance en cours du serveur Ubuntu.
  • Une pile LEMP avec PHP 5.4.0 ou plus.
  • Un compositeur - un gestionnaire de packages au niveau de l'application pour le PHP.

Sur cette page

  • Installation du framework YII via le compositeur à Ubuntu
  • Exécuter YII à l'aide de PHP Development Server
  • Exécution du projet YII en production à l'aide d'un serveur Nginx HTTP
  • Activer HTTPS sur les applications YII en utilisant Let's Encrypt

Il y a deux façons d'installer Yii, en utilisant le Compositeur Gestionnaire de packages ou en l'installant à partir d'un fichier d'archive. Le premier est le moyen recommandé, car il vous permet d'installer de nouvelles extensions ou de mettre à jour Yii par une seule commande.

Installation du framework YII via le compositeur à Ubuntu

Si tu n'as pas Compositeur Installé, vous pouvez l'installer en utilisant les commandes suivantes, qui s'installent plus tard Yii et gérer ses dépendances.

$ curl -ss https: // getComposer.org / installateur | PHP $ sudo MV Composer.phar / usr / local / bin / composer $ sudo chmod + x / usr / local / bin / compositeur 
Installez le compositeur à Ubuntu

Une fois que le compositeur est installé, déplacez-vous dans le répertoire / var / www / html / qui stockera vos fichiers d'applications Web ou de sites Web, puis installer le Yii package en utilisant le compositeur (remplacer TestProject avec le nom du répertoire de votre application Web).

$ cd / var / www / html / $ composer créat-project --prefer-rist yiisoft / yii2-app-basic TestProject 
Installez le framework YII dans Ubuntu

Exécuter YII à l'aide de PHP Development Server

À ce stade, vous êtes prêt à commencer à utiliser le Yii Cadre de développement. Pour exécuter le serveur de développement PHP, déplacez-vous dans le testprojects Répertoire (votre nom de répertoire doit être différent en fonction de ce que vous avez spécifié dans la commande précédente), puis lancez le serveur de développement. Par défaut, il devrait fonctionner sur le port 8080.

$ cd / var / www / html / testproject / $ php yii servir 
Exécuter le serveur de développement YII

Pour exécuter le serveur de développement sur un autre port, par exemple, le port 5000, Utilisez le --port Flag comme indiqué.

$ php yii servir --port = 5000 
Exécutez le serveur de développement yii sur différents ports

Ouvrez ensuite votre navigateur Web et naviguez en utilisant l'adresse suivante:

http: // server_ip: 8080 ou http: // server_ip: 5000 

Exécution du projet YII en production à l'aide d'un serveur Nginx HTTP

Pour déployer et accéder à un Yii Application en production, nécessite un serveur HTTP tel que Nginx, Apache / httpd, ou tout autre logiciel de serveur Web pris en charge.

Pour accéder au Yii Application sans taper votre port, vous devez créer le DNS requis UN Enregistrez pour pointer votre domaine vers votre Yii serveur d'applications Framework.

Définir le domaine un enregistrement pour l'application YII

Pour ce guide, nous montrerons comment déployer un Yii application avec Nginx. Vous devez donc créer un fichier de configuration de bloc d'hôte ou de serveur virtuel sous le / etc / nginx / sites-disponible / Répertoire de votre application afin que Nginx peut le servir.

$ sudo vim / etc / nginx / sites-disponible / testproject.moi.confli 

Copiez et collez la configuration suivante dedans (remplacer testprojects.moi et www.testprojects.moi avec votre nom de domaine). Spécifiez également les moyens Nginx passera Fastcgi Demandes de Php-fpm, Dans cet exemple, nous utilisons une prise Unix (/ run / php / php7.4-FPM.chaussette):

serveur set $ host_path "/ var / www / html / testproject"; #Access_log / www / testproject / log / accès.journal principal; nom du serveur testprojects.moi www.testprojects.moi; root $ host_path / web; Set $ ​​yii_bootstrap ".php "; charset utf-8; emplacement / index index.html $ yii_bootstrap; try_files $ uri $ uri / / $ yii_bootstrap?$ args;  Emplacement ~ ^ / (protégé | framework | thèmes / \ w + / vues) nier tout;  #AVOID Traitement des appels à des fichiers statiques inattendus par l'emplacement de Yii ~ \.(js | css | png | jpg | gif | swf | ico | pdf | mov | Fla | zip | rar) $ try_files $ uri = 404;  # Passez les scripts PHP à FastCGI Server écoutant sur Unix Socket Emplacement ~ \.php Fastcgi_split_path_info ^ (.+\.php) (.*) $; #let yii attraper les appels pour informer les fichiers PHP set $ fsn / $ yii_bootstrap; if (-f $ document_root $ fastcgi_script_name) set $ fsn $ fastcgi_script_name;  fastcgi_pass Unix: / Run / Php / Php7.4-FPM.chaussette; Inclure FastCGI_PARAMS; fastcgi_param script_filename $ document_root $ fsn; #Path_info et path_translated peuvent être omis, mais RFC 3875 les spécifie pour cgi fastcgi_param path_info $ fastcgi_path_info; fastcgi_param path_translated $ document_root $ fsn;  # Empêcher Nginx de servir les fichiers à points (.htaccess, .SVN, .git, etc.) Emplacement ~ / \.  Nier tous; Access_log off; log_not_found off;  

Enregistrez le fichier et fermez-le.

Puis vérifiez le Nginx Syntaxe de configuration pour l'exactitude, si elle est OK, activez la nouvelle application comme indiqué:

$ sudo nginx -t $ sudo ln -s / etc / nginx / sites-disponible / testprojects.moi.conf / etc / nginx / sites compatible / testprojects.moi.confli 

Redémarrez ensuite le service NGINX pour appliquer les nouvelles modifications:

$ sudo systemctl redémarrer nginx 

Revenez à votre navigateur Web et naviguez avec votre nom de domaine.

http: // testprojects.moi ou http: // www.testprojects.moi 
Accédez à l'application YII à l'aide du domaine

Activer HTTPS sur les applications YII en utilisant Let's Encrypt

Enfin, vous devez activer Https sur votre site Web. Vous pouvez soit utiliser un certificat Free Let’s Encrypt SSL / TLS (qui est automatisé et reconnu par tous les navigateurs Web modernes) ou acquérir un certificat à partir d'un CA commercial.

Si vous décidez d'utiliser un certificat Let's Encrypt, il peut être automatiquement installé et configuré à l'aide du Certbot outil. À installer Certbot, Vous devez installer Snapd pour l'installer.

$ sudo install install - Classic Certbot 

Puis utiliser Certbot Pour obtenir et installer / configurer votre certificat SSL / TLS gratuit pour une utilisation avec le serveur Web Nginx (fournir un e-mail valide pour le renouvellement et suivre les invites pour terminer l'installation):

$ sudo Certbot --nginx 
Activer l'application https sur yii nginx

Maintenant, allez à votre navigateur Web une fois de plus pour confirmer que votre Yii L'application fonctionne maintenant sur Https (se souvenir Http devrait rediriger automatiquement vers Https).

http: // testprojects.moi ou http: // www.testprojects.moi 
Application yii fonctionnant sur https

Pour plus d'informations telles que la connexion de votre application à une base de données, consultez la documentation du framework YII du site officiel du projet YII. Essayez-le et partagez vos réflexions sur Yii ou poser des questions via le formulaire de rétroaction ci-dessous.