So installieren Sie das Yii PHP Framework unter CentOS 8

Yii ist ein Open-Source-, leistungsstarkes, flexibles, effizientes und sicheres PHP-Framework für die schnelle Erstellung moderner Webanwendungen. Es ist ein generisches und vollständig gestapeltes Webprogrammierungsframework zum objektorientierten Schreiben von Code und bietet viele bewährte und sofort einsatzbereite Funktionen. Es enthält eine Reihe angemessener Standardeinstellungen und integrierter Tools, mit denen Sie soliden und sicheren Code schreiben können.

Yii Funktionen

Hier sind einige der Hauptmerkmale von Yii:

  • Ein reines OOP-basiertes Framework.
  • Eine komponentenbasierte Architektur.
  • Implementiert das MVC-Architekturmuster (Model-View-Controller).
  • Unterstützt Query Builder und ActiveRecord für relationale und NoSQL-Datenbanken.
  • Unterstützung für mehrstufiges Caching.
  • RESTful API-Entwicklungsunterstützung.
  • Es ist extrem erweiterbar, sodass Benutzer jeden Code direkt vom Kern aus anpassen oder ersetzen können. Außerdem können Benutzer weiterverteilbare Erweiterungen verwenden oder entwickeln.

Yii 2.0 ist die aktuelle Generation des Frameworks (zum Zeitpunkt des Schreibens), die dies erfordert PHP 5.4.0 oder höher, läuft aber am besten mit der neuesten Version von PHP 7. Es unterstützt einige der neuesten Webtechnologien und -protokolle, darunter Composer, PSR, Namespaces, Merkmale und andere.

Als generisches Webentwicklungs-Framework in Verbindung mit seinen wesentlichen Funktionen Yii kann verwendet werden, um nahezu alle Arten von Webanwendungen zu entwickeln, von Benutzer- / Verwaltungsportalen, Foren, Content-Management-Systemen (CMS) bis hin zu E-Commerce-Projekten, RESTful-Webdiensten und vielem mehr in großem Maßstab.

Bedarf

  1. Eine laufende Instanz des CentOS 8-Servers.
  2. Ein LAMP- oder LEMP-Stack mit PHP 5.4.0 oder höher.
  3. EIN Komponist – Ein Paketmanager auf Anwendungsebene für PHP.

In diesem Artikel zeigen wir Ihnen, wie Sie das installieren Yii PHP-Framework auf einen CentOS 8 Server, um mit der Entwicklung von PHP-Anwendungen zu beginnen Yii.

Yii mit Composer installieren


Es gibt verschiedene Möglichkeiten zur Installation Yii, aber die empfohlene Art der Installation Yii benutzt Komponist Paketmanager, da Sie damit Yii mit einem einzigen Befehl aktualisieren und neue Erweiterungen installieren können.

Wenn Sie noch nicht haben Komponist auf Ihrem installiert CentOS 8 Server können Sie es installieren, indem Sie die folgenden Befehle ausführen.

# curl -sS https://getcomposer.org/installer | php
# mv composer.phar /usr/local/bin/composer
# chmod +x /usr/local/bin/composer
Installieren Sie Composer in CentOS 8
Installieren Sie Composer in CentOS 8

Mit Komponist installiert, können Sie die neueste stabile Version von installieren Yii Bewerbungsvorlage unter einem Apache oder Nginx Web-zugängliches Verzeichnis aufgerufen testapp. Sie können einen anderen Verzeichnisnamen auswählen, wenn Sie möchten.

# cd /var/www/html/      [Apache Root Directory]
OR
# cd /usr/share/nginx/html/   [Nginx Root Directory]
# composer create-project --prefer-dist yiisoft/yii2-app-basic testapp
Installieren Sie Yii PHP Framwork in CentOS 8
Installieren Sie das Yii PHP Framework in CentOS 8

Konfigurieren Sie nach Abschluss der Installation entweder Ihren Webserver (siehe nächster Abschnitt) oder verwenden Sie den integrierten PHP-Webserver, indem Sie den folgenden Befehl in ausführen testapp Projektstammverzeichnis.

# cd testapp
# php yii serve

Hinweis: Standardmäßig überwacht der HTTP-Server den Port 8080. Wenn dieser Port jedoch bereits verwendet wird, können Sie den anderen Port durch Hinzufügen verwenden --port das Argument wie gezeigt.

# php yii serve --port=8888
Überprüfen Sie die Yii-Installation
Überprüfen Sie die Yii-Installation

Öffnen Sie nun Ihren Browser und geben Sie die folgende URL ein, um auf die installierte zuzugreifen Yii Anwendung.

http://localhost:8888
Yii Anwendung
Yii Anwendung

Konfigurieren von Webservern für Yii

Auf einem Produktionsserver möchten Sie möglicherweise Ihren Webserver so konfigurieren, dass er den Server bedient Yii Webanwendung über die URL http://www.example.com/index.php anstatt http://www.example.com/basic/testapp/index.php. In diesem Fall müssen Sie Ihr Webserver-Dokumentstammverzeichnis auf das verweisen testapp/web Verzeichnis.

Empfohlene Nginx-Konfiguration

Erstellen Sie eine Konfigurationsdatei mit dem Namen /etc/nginx/conf.d/testapp.conf.

# vi /etc/nginx/conf.d/testapp.conf

Kopieren Sie anschließend die folgende Konfiguration und fügen Sie sie ein. Denken Sie daran, zu ersetzen tecmintapp.lan mit Ihrem Domainnamen und /usr/share/nginx/html/testapp/web mit dem Pfad, in dem sich Ihre App-Dateien befinden.

server {
    charset utf-8;
    client_max_body_size 128M;

    listen 80; ## listen for ipv4
    #listen [::]:80 default_server ipv6only=on; ## listen for ipv6

    server_name tecmintapp.lan;
    root        /usr/share/nginx/html/testapp/web;
    index       index.php;

    access_log  /var/log/nginx/access.log;
    error_log   /var/log/nginx/error.log;

    location / {
        # Redirect everything that isn't a real file to index.php
        try_files $uri $uri/ /index.php$is_args$args;
    }

    # uncomment to avoid processing of calls to non-existing static files by Yii
    #location ~ .(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
    #    try_files $uri =404;
    #}
    #error_page 404 /404.html;

    # deny accessing php files for the /assets directory
    location ~ ^/assets/.*.php$ {
        deny all;
    }

    location ~ .php$ {
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        #fastcgi_pass 127.0.0.1:9000;
        fastcgi_pass unix:/run/php-fpm/www.sock;
        try_files $uri =404;
    }

    location ~* /. {
        deny all;
    }
}

Speichern Sie die Datei und starten Sie die neu Nginx um die letzten Änderungen zu bewirken.

# systemctl restart nginx

Empfohlene Apache-Konfiguration

Verwenden Sie die folgende Konfiguration in Apache httpd.conf Datei oder innerhalb einer virtuellen Host-Konfiguration.

# Set document root to be "testapp/web"
DocumentRoot "/var/www/html/testapp/web"


    # use mod_rewrite for pretty URL support
    RewriteEngine on
    
    # if $showScriptName is false in UrlManager, do not allow accessing URLs with script name
    RewriteRule ^index.php/ - [L,R=404]
    
    # If a directory or a file exists, use the request directly
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    
    # Otherwise forward the request to index.php
    RewriteRule . index.php

    # ...other settings...

Speichern Sie die Datei und starten Sie die neu Apache um die letzten Änderungen zu bewirken.

# systemctl restart httpd

Testen der Yii-Webanwendung über einen Browser

Vor dem Testen unserer Yii Webanwendung stellen Sie sicher, den Sicherheitskontext der zu aktualisieren /web/assets/ Verzeichnis, um es für den Webprozess beschreibbar zu machen, indem Sie den folgenden Befehl ausführen.

# chcon -R -t httpd_sys_content_rw_t '/usr/share/nginx/html/testapp/web/assets/' [for Nginx]
# chcon -R -t httpd_sys_content_rw_t '/var/www/html/testapp/web/assets/'         [for Apache] 

Als nächstes aktualisieren Sie Ihre Firewalld Regeln zu erlauben HTTP und HTTPS Anforderungen über die Firewall an den Nginx-Server.

# firewall-cmd --zone=public --add-service=http --permanent
# firewall-cmd --zone=public --add-service=https --permanent
# firewall-cmd --reload

Testen Sie abschließend, ob Ihre Webanwendung einwandfrei funktioniert und von bereitgestellt wird Nginx oder Apache. Öffnen Sie einen Webbrowser und zeigen Sie auf die folgende Adresse:

http://tecmintapp.lan 

Die Standardwebseite der Yii-Anwendung sollte wie im folgenden Screenshot gezeigt angezeigt werden.

Yii Web App Seite
Yii Web App Seite

Herzliche Glückwünsche! Sie haben die neueste Generation der erfolgreich installiert Yii PHP-Framework und konfiguriert, um mit zu arbeiten Nginx oder Apache auf CentOS 8.

Weitere Informationen und Informationen zur Verwendung Yii Informationen zum Erstellen Ihrer Webanwendung finden Sie in der Yii definitive Anleitung.

Similar Posts

Leave a Reply

Your email address will not be published.