GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie Yii PHP Framework auf Ubuntu

Ja (ausgesprochen Yee oder [ji:] ) ist ein kostenloses und quelloffenes, schnelles, hochleistungsfähiges, sicheres, flexibles und dennoch pragmatisches und effizientes generisches Webprogrammier-Framework für die Entwicklung aller Arten von Webanwendungen mit PHP.

In diesem Artikel erfahren Sie, wie Sie die neueste Version des Yii-Frameworks installieren in Ubuntu LTS (Long Term Support)-Releases, um mit der Entwicklung moderner PHP-Webanwendungen zu beginnen.

Plattformunterstützung

Ja enthält die folgenden Ubuntu LTS-Versionen (Langzeitunterstützung):

  • Ubuntu 20.04 LTS („Focal“)
  • Ubuntu 18.04 LTS („Bionic“)
  • Ubuntu 16.04 LTS („Xenial“)

Anforderungen

  • Eine laufende Instanz des Ubuntu-Servers.
  • Ein LEMP-Stack mit PHP 5.4.0 oder höher.
  • Ein Composer – ein Paketmanager auf Anwendungsebene für PHP.

Auf dieser Seite

  • Installieren von Yii Framework über Composer in Ubuntu
  • Ausführen von Yii unter Verwendung des PHP-Entwicklungsservers
  • Ausführen des Yii-Projekts in der Produktion unter Verwendung eines NGINX-HTTP-Servers
  • Aktivieren Sie HTTPS auf Yii-Anwendungen mit Let’s Encrypt

Es gibt zwei Möglichkeiten, Yii zu installieren , mit dem Composer Paketmanager oder indem Sie ihn aus einer Archivdatei installieren. Ersteres wird empfohlen, da es Ihnen ermöglicht, neue Erweiterungen zu installieren oder Yii zu aktualisieren durch einen einzigen Befehl.

Installieren von Yii Framework über Composer in Ubuntu

Wenn Sie Composer nicht haben installiert haben, können Sie es mit den folgenden Befehlen installieren, die später Yii installieren und seine Abhängigkeiten verwalten.

$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
$ sudo chmod +x /usr/local/bin/composer

Sobald Sie Composer installiert haben, wechseln Sie in das Verzeichnis /var/www/html/ die Ihre Webanwendungen oder Website-Dateien speichert, dann installieren Sie Yii Paket mit dem Composer (ersetzen Sie Testprojekt mit dem Namen des Verzeichnisses Ihrer Webanwendung).

$ cd /var/www/html/
$ composer create-project --prefer-dist yiisoft/yii2-app-basic testproject

Yii mit dem PHP-Entwicklungsserver ausführen

An diesem Punkt können Sie mit der Verwendung von Yii beginnen Rahmen für Entwicklung. Wechseln Sie zum Ausführen des PHP-Entwicklungsservers in die Testprojekte Verzeichnis (Ihr Verzeichnisname sollte unterschiedlich sein, je nachdem, was Sie im vorherigen Befehl angegeben haben), und starten Sie dann den Entwicklungsserver. Standardmäßig sollte es auf Port 8080 ausgeführt werden .

$ cd /var/www/html/testproject/
$ php yii serve

Zum Ausführen des Entwicklungsservers auf einem anderen Port, z. B. Port 5000 verwenden Sie den --port Flagge wie gezeigt.

$ php yii serve --port=5000

Öffnen Sie dann Ihren Webbrowser und navigieren Sie über die folgende Adresse:

http://SERVER_IP:8080
OR
http://SERVER_IP:5000

Ausführen des Yii-Projekts in der Produktion unter Verwendung eines NGINX-HTTP-Servers

Zum Bereitstellen und Zugreifen auf ein Yii Anwendung in der Produktion, erfordert einen HTTP-Server wie NGINX , Apache/HTTPD oder jede andere unterstützte Webserver-Software.

Für den Zugriff auf Yii Anwendung verwenden, ohne Ihren Port einzugeben, müssen Sie den erforderlichen DNS A erstellen record, um Ihre Domain auf Ihr Yii zu verweisen Framework-Anwendungsserver.

In dieser Anleitung zeigen wir, wie man ein Yii bereitstellt Anwendung mit NGINX . Sie müssen also eine virtuelle Host- oder Serverblock-Konfigurationsdatei unter /etc/nginx/sites-available/ erstellen Verzeichnis für Ihre Anwendung, sodass NGINX kann es servieren.

$ sudo vim /etc/nginx/sites-available/testproject.me.conf

Kopieren Sie die folgende Konfiguration und fügen Sie sie ein (ersetzen Sie testprojects.me und www.testprojects.me mit Ihrem Domainnamen). Geben Sie auch die Mittel NGINX an wird FastCGI bestehen Anfragen an PHP-FPM verwenden wir in diesem Beispiel einen UNIX-Socket (/run/php/php7.4-fpm.sock ):

server {
    set $host_path "/var/www/html/testproject";
    #access_log  /www/testproject/log/access.log  main;

    server_name  testprojects.me www.testprojects.me;
    root   $host_path/web;
    set $yii_bootstrap "index.php";

    charset utf-8;

    location / {
        index  index.html $yii_bootstrap;
        try_files $uri $uri/ /$yii_bootstrap?$args;
    }

    location ~ ^/(protected|framework|themes/\w+/views) {
        deny  all;
    }

    #avoid processing of calls to unexisting static files by yii
    location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
        try_files $uri =404;
    }

    # pass the PHP scripts to FastCGI server listening on UNIX socket 
    location ~ \.php {
        fastcgi_split_path_info  ^(.+\.php)(.*)$;

        #let yii catch the calls to unexising PHP files
        set $fsn /$yii_bootstrap;
        if (-f $document_root$fastcgi_script_name){
            set $fsn $fastcgi_script_name;
        }
       fastcgi_pass   unix:/run/php/php7.4-fpm.sock;
        include fastcgi_params;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fsn;

       #PATH_INFO and PATH_TRANSLATED can be omitted, but RFC 3875 specifies them for CGI
        fastcgi_param  PATH_INFO        $fastcgi_path_info;
        fastcgi_param  PATH_TRANSLATED  $document_root$fsn;
    }

    # prevent nginx from serving dotfiles (.htaccess, .svn, .git, etc.)
    location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
    }
}

Speichern Sie die Datei und schließen Sie sie.

Überprüfen Sie dann die NGINX Konfigurationssyntax auf Korrektheit prüfen, wenn OK, aktivieren Sie die neue Anwendung wie gezeigt:

$ sudo nginx -t
$ sudo ln -s /etc/nginx/sites-available/testprojects.me.conf /etc/nginx/sites-enabled/testprojects.me.conf

Starten Sie dann den NGINX-Dienst neu, um die neuen Änderungen zu übernehmen:

$ sudo systemctl restart nginx

Gehen Sie zurück zu Ihrem Webbrowser und navigieren Sie mit Ihrem Domainnamen.

http://testprojects.me
OR
http://www.testprojects.me

HTTPS für Yii-Anwendungen mit Let’s Encrypt aktivieren

Zuletzt müssen Sie HTTPS aktivieren Auf deiner Webseite. Sie können entweder ein kostenloses SSL/TLS-Zertifikat von Let’s Encrypt verwenden (das automatisiert ist und von allen modernen Webbrowsern erkannt wird) oder ein Zertifikat von einer kommerziellen Zertifizierungsstelle erwerben.

Wenn Sie sich für die Verwendung eines Let’s Encrypt-Zertifikats entscheiden, kann dieses mithilfe des certbot automatisch installiert und konfiguriert werden Werkzeug. So installieren Sie certbot , müssen Sie snapd installieren, um es zu installieren.

$ sudo snap install --classic certbot

Verwenden Sie dann certbot um Ihr kostenloses SSL/TLS-Zertifikat für die Verwendung mit dem NGINX-Webserver zu erhalten und zu installieren/konfigurieren (geben Sie eine gültige E-Mail-Adresse für die Verlängerung an und folgen Sie den Anweisungen, um die Installation abzuschließen):

$ sudo certbot --nginx

Gehen Sie jetzt noch einmal zu Ihrem Webbrowser, um zu bestätigen, dass Ihr Yii Anwendung läuft jetzt auf HTTPS (Denken Sie an HTTP sollte automatisch auf HTTPS umgeleitet werden ).

http://testprojects.me
OR
http://www.testprojects.me

Weitere Informationen, z. B. zum Verbinden Ihrer Anwendung mit einer Datenbank, finden Sie in der Yii-Framework-Dokumentation auf der offiziellen Website des Yii-Projekts. Probieren Sie es aus und teilen Sie uns Ihre Meinung zu Yii mit oder stellen Sie Fragen über das Feedback-Formular unten.


Ubuntu
  1. So installieren Sie PHP 7.4 und 8.0 auf Ubuntu 18.04 oder 20.04

  2. So installieren Sie PHP 8.0 unter Ubuntu 20.04 / Ubuntu 18.04

  3. So installieren Sie PHP 7.2 auf Ubuntu 16.04

  4. So installieren Sie PHP 7.3 auf Ubuntu 16.04

  5. So installieren Sie PHP 7.2 auf Ubuntu 16.04

So installieren Sie PrestaShop auf Ubuntu 20.04 Server

So installieren Sie Yii Framework auf Ubuntu 20.04 LTS

So installieren Sie PHP 8.0 unter Ubuntu 20.04 / 18.04

So installieren und richten Sie Yii PHP Framework unter Ubuntu Linux ein

So installieren Sie PHP unter Ubuntu 22.04

So installieren Sie PHP unter Ubuntu 22.04