Website-Suche

So installieren Sie das Laravel PHP Web Framework in CentOS


Laravel ist ein kostenloses Open-Source-, leistungsstarkes PHP-Framework mit einer ausdrucksstarken und ansprechenden Syntax. Es verfügt über eine verfeinerte, einfache und lesbare Syntax für die Entwicklung moderner, robuster und leistungsstarker Anwendungen von Grund auf. Darüber hinaus bietet Laravel mehrere Tools, die Sie zum Schreiben von sauberem, modernem und wartbarem PHP-Code benötigen.

Lesen Sie auch: So installieren Sie das Laravel PHP Framework unter Ubuntu

Hauptfunktionen von Laravel:

  • Leistungsstarkes ORM (Object-Relational Mapping) für die Arbeit mit Ihrer Datenbank.
  • Unkomplizierter und schneller Routing-Mechanismus.
  • Leistungsstarker Abhängigkeitsinjektionscontainer.
  • Bietet eine einheitliche API für mehrere Warteschlangen-Backends, einschließlich Amazon SQS und Redis und viele mehr, für Sitzungs- und Cache-Speicher.
  • Unterstützt einen einfachen Authentifizierungsmechanismus.
  • Unterstützt die Übertragung von Ereignissen in Echtzeit.
  • Unterstützt auch datenbankunabhängige Migrationen und den Schema-Builder.
  • Unterstützt die Verarbeitung von Hintergrundjobs und mehr.

System Anforderungen

Ihr System muss die folgenden Anforderungen erfüllen, um die neueste Version von Laravel ausführen zu können:

  • PHP >= 7.1.3 mit OpenSSL-, PDO-, Mbstring-, Tokenizer-, XML-, Ctype- und JSON-PHP-Erweiterungen.
  • Composer – ein Paketmanager auf Anwendungsebene für PHP.

Test Umgebung:

  1. CentOS 7 mit LEMP Stack

In diesem Artikel erklären wir, wie Sie die neueste Version des Laravel 5.6 PHP Framework auf CentOS-, Red Hat- und Fedora-Systemen installieren.

Schritt 1: Yum-Repositorys einrichten

1. Zunächst müssen Sie REMI- und EPEL-Repositorys in Ihrer Linux-Distribution aktivieren, um über die aktualisierten Pakete (PHP<) zu verfügen, Nginx, MariaDB usw.) mit den folgenden Befehlen

------------- On CentOS/RHEL 7.x ------------- 
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

------------- On CentOS/RHEL 6.x -------------
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

Schritt 2: Installieren Sie Nginx, MySQL und PHP

2. Als nächstes müssen wir eine funktionierende LEMP-Umgebung auf Ihrem System installieren. Wenn Sie bereits über einen funktionierenden LEMP-Stack verfügen, können Sie diesen Schritt überspringen, andernfalls installieren Sie ihn mit den folgenden Befehlen.

Installieren Sie Nginx

yum install nginx        [On CentOS/RHEL]

3. Sobald Nginx installiert wurde, starten Sie den Webserver und aktivieren Sie ihn für den Start beim Systemstart. Überprüfen Sie dann den Status mit den folgenden Befehlen.

------------- On CentOS/RHEL 7.x ------------- 
systemctl start nginx
systemctl enable nginx
systemctl status nginx

------------- On CentOS/RHEL 6.x -------------
service nginx start  
chkconfig nginx on
service nginx status

4. Um über ein öffentliches Netzwerk auf Nginx zuzugreifen, müssen Sie einen Port 80 in Ihrer Systemfirewall öffnen, um externe Anfragen zu empfangen, wie gezeigt.

------------- On CentOS/RHEL 7.x -------------
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload 

------------- On CentOS/RHEL 6.x -------------
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
service iptables restart

Installieren Sie MySQL

yum install mariadb-server php-mysql
systemctl start mariadb.service
/usr/bin/mysql_secure_installation

Installieren Sie PHP

yum install yum-utils
yum-config-manager --enable remi-php72
yum install php php-fpm php-common php-xml php-mbstring php-json php-zip

5. Als nächstes starten und aktivieren Sie den PHP-FPM-Dienst und prüfen, ob er betriebsbereit ist.

------------- On CentOS/RHEL 7.x ------------- 
systemctl start php-fpm
systemctl enable php-fpm
systemctl status php-fpm

------------- On CentOS/RHEL 6.x -------------
service php-fpm start  
chkconfig php-fpm on
service php-fpm status

Schritt 3: Installieren Sie Composer und Laravel PHP Framework

6. Installieren Sie nun Composer (Abhängigkeitsmanager für PHP) zur Installation der erforderlichen Laravel-Abhängigkeiten mit den folgenden Befehlen.

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

7. Sobald Sie Composer installiert haben, können Sie Laravel installieren, indem Sie den Befehl composer create-project ausführen folgt.

cd /var/www/html/
sudo composer create-project --prefer-dist laravel/laravel testsite 

8. Wenn Sie nun eine lange Auflistung Ihres Webdokumentstamms erstellen, sollte dort das Verzeichnis testsite vorhanden sein, das Ihre Laravel-Dateien enthält.

ls -l /var/www/html/testsite

Schritt 4: Laravel-Installation konfigurieren

9. Legen Sie nun mit den folgenden Befehlen die entsprechenden Berechtigungen für das Verzeichnis testsite und die Dateien laravel fest.

chmod -R 775 /var/www/html/testsite
chown -R apache.apache /var/www/html/testsite
chmod -R 777 /var/www/html/testsite/storage/

10. Wenn Sie SELinux aktiviert haben, müssen Sie außerdem den Sicherheitskontext der Speicher- und Bootstrap-/Cache-Verzeichnisse mit den folgenden Befehlen aktualisieren.

semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/testsite/bootstrap/cache(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/testsite/storage(/.*)?'
restorecon -Rv '/usr/share/nginx/html/testapp'

11. Erstellen Sie dann mithilfe der bereitgestellten Beispieldatei eine Umgebungsdatei für Ihre Anwendung.

cp .env.example .env

12. Als Nächstes verwendet Laravel einen Anwendungsschlüssel, um Benutzersitzungen und andere verschlüsselte Daten zu sichern. Daher müssen Sie Ihren Anwendungsschlüssel mit dem folgenden Befehl generieren und auf eine zufällige Zeichenfolge setzen.

php artisan key:generate

Schritt 5: Konfigurieren Sie den Nginx-Serverblock für Laravel

13. In diesem Schritt müssen Sie einen Nginx-Serverblock für testsite konfigurieren, um über einen Webbrowser darauf zugreifen zu können. Erstellen Sie wie gezeigt eine .conf-Datei dafür im Verzeichnis /etc/nginx/conf.d/.

vi /etc/nginx/conf.d/testsite.conf

Und fügen Sie darin die folgende Konfiguration hinzu (verwenden Sie Werte, die für Ihre Umgebung gelten, in diesem Beispiel ist unsere Dummy-Domäne testinglaravel.com). Beachten Sie, dass die Laravel-Indexdatei in /var/www/html/testsite/public gespeichert ist. Dies ist das Stammverzeichnis Ihrer Website/Anwendung.

server {
	listen      80;
	server_name testinglaravel.com;
	root        /var/www/html/testsite/public;
	index       index.php;

	charset utf-8;
	gzip on;
	gzip_types text/css application/javascript text/javascript application/x-javascript 	image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
	location / {
		try_files $uri $uri/ /index.php?$query_string;
	}
	
	location ~ \.php {
		include fastcgi.conf;
		fastcgi_split_path_info ^(.+\.php)(/.+)$;
		fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
	}
	location ~ /\.ht {
		deny all;
	}
}

Speichern Sie die Datei und beenden Sie den Vorgang. Starten Sie dann Ihren Webserver neu, damit die letzten Änderungen wirksam werden.

systemctl restart nginx

Schritt 6: Greifen Sie auf die Laravel-Website zu

14. Wenn Sie keinen vollständig registrierten Domänennamen haben, müssen Sie als Nächstes die Datei /etc/hosts verwenden, um zu Testzwecken einen lokalen DNS zu erstellen.

Fügen Sie die folgende Zeile wie gezeigt in Ihre Datei /etc/hosts ein (verwenden Sie Ihre System-IP-Adresse und Domäne anstelle von 192.168.43.31 und testinglaravel.com ) bzw.).

192.168.43.31  testinglaravel.com

15. Greifen Sie schließlich über einen Browser über die folgende URL auf Ihre Laravel-Site zu.

http://testinglaravel.com
OR
http://your-ip-address

Wenn Sie lokal entwickeln, können Sie wie folgt den integrierten Entwicklungsserver von PHP verwenden, um Ihre Anwendung oder Site bereitzustellen. Dieser Befehl startet einen Entwicklungsserver unter http://localhost:8000 oder http://127.0.0.1:8000. Unter CentOS/REHL sollte dieser Port in der Firewall geöffnet sein, damit Sie Ihre Anwendung auf diese Weise bereitstellen können.

php artisan serve

Von diesem Punkt an können Sie mit der Entwicklung Ihrer Website beginnen. Weitere Konfigurationen wie Cache, Datenbank und Sitzungen finden Sie auf der Laravel-Homepage.

Laravel ist ein PHP-Framework mit einer ausdrucksstarken und schönen Syntax für praktische, moderne Webentwicklung. Wir hoffen, dass bei der Installation alles gut gelaufen ist. Wenn nicht, nutzen Sie das Kommentarformular unten, um uns Ihre Fragen mitzuteilen.