Ich lerne seit einiger Zeit PHP und Laravel, aber der gesamte Code läuft auf dem lokalen virtuellen Host. Deshalb ging ich zu Tencent Cloud, um einen Monat lang einen kostenlosen Cloud-Host zu beantragen, und wollte das Projekt dort bereitstellen Cloud-Server. In diesem Artikel wird hauptsächlich die Bereitstellung von Laravel auf dem Cloud-Server beschrieben. Ich hoffe, dass er Ihnen weiterhelfen kann.
PS: Linux ist wirklich ein System, das umso mehr Spaß macht, je mehr Sie es verwenden. Sie sollten Linux auch auf Ihrem Desktop-Computer installieren, um Code einzugeben, wenn Sie nach Hause gehen.
Einführung in die Umgebung
In Bezug auf die Wahl des Betriebssystems habe ich mich für das Linux-Ubuntu16.04-System entschieden und die LNMP-Umgebung verwendet, bei der es sich um eine Linux + Nginx + MySQL + PHP-Umgebung handelt.
Apache löschen
sudo service apache2 stop update-rc.d -f apache2 remove sudo apt-get remove apache2
Verwenden Sie zuerst diese drei Befehle, um Apaceh zu löschen und dann die Paketliste zu aktualisieren
sudo apt-get update
1. Installieren Sie Nginx
sudo apt-get install nginx
Nach der Installation von Nginx müssen Sie Nginx neu starten
sudo service nginx start
Geben Sie nach der Ausführung die öffentliche IP ein, die Ihnen vom Cloud-Server zugewiesen wurde, und Sie können die Willkommensoberfläche von Nginx sehen
2. Während der Installation von Mysql
sudo apt-get install mysql-server mysql-client
werden Sie, genau wie bei den üblichen Passworteinstellungen, aufgefordert, das Mysql-Passwort festzulegen, es einmal einzugeben und einmal zu bestätigen. Nachdem das Passwort bestätigt wurde, dauert die Installation grundsätzlich eine Weile. Versuchen Sie
mysql -u root -p
Wenn die Anmeldung erfolgreich ist, ist MySQL korrekt installiert.
3. PHP installieren
sudo apt-get install php5-fpm php5-cli php5-mcrypt
Nur über php5-fpm kann PHP normal unter Nginx ausgeführt werden, also installieren Sie es.
Was php5-mcrypt betrifft, so hängen einige PHP-Frameworks davon ab, wie zum Beispiel Laravel, daher ist es ebenfalls installiert.
Off-Topic, ich habe PHP7 während der Bereitstellung von PHP5 selbst installiert. Wenn Sie es ausprobieren möchten, können Sie es auch versuchen.
4. Konfigurieren Sie PHP
sudo vim /etc/php5/fpm/php.ini
Öffnen Sie die PHP-Konfigurationsdatei, suchen Sie die Option cgi.fix_pathinfo, entfernen Sie das Kommentarsemikolon davor und setzen Sie ihren Wert auf 0. wie folgt
cgi.fix_pathinfo=0
5. Aktivieren Sie php5-mcrypt:
sudo php5enmod mcrypt
6. Starten Sie php5-fpm neu:
sudo service php5-fpm restart
Nachdem Sie die LEMP-Umgebung eingerichtet haben, Sie müssen zunächst zwei wichtige Verzeichnisse klären
Standardstammordner von Nginx
/usr/share/nginx/html
Das Verzeichnis, in dem sich die Serverkonfigurationsdatei von Nginx befindet
/etc/nginx/sites-available/
Denken Sie einfach an die beiden oben genannten Verzeichnisse, sie werden sehr häufig verwendet. Lassen Sie uns sie zuerst veröffentlichen
Das Folgende ist eine schrittweise Bereitstellung von Laravel auf dem Cloud-Server
1. Erstellen Sie das Stammverzeichnis der Website
sudo mkdir -p /var/www
2
Suchen Sie nach dem Öffnen der Nginx-Konfigurationsdatei den Serverabschnitt, der wahrscheinlich so aussiehtsudo vim /etc/nginx/sites-available/default
server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /usr/share/nginx/html; index index.html index.htm; server_name localhost; location / { try_files $uri $uri/ =404; } }
Root-Änderung
Hier ist der Nginx-Server. Das Root-Verzeichnis verweist auf den öffentlichen Ordner von Laravel. Wir werden den nachfolgenden Laravel-Projektcode im Verzeichnis /var/www/laravel ablegen, das wir zuvor erstellt habenroot /var/www/laravel/public;
Indexänderung
Was hier beachtet werden muss, ist, index.php an die Spitze zu setzenindex index.php index.html index.htm;
Servernamen ändern
Serverdomäne_oder_IP in Ihre ändern öffentliche IPserver_name server_domain_or_IP;
Standort ändern
Die geänderte Version sieht so aus:location / { try_files $uri $uri/ /index.php?$query_string; }
server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /var/www/laravel/public; index index.php index.html index.htm; server_name server_domain_or_IP; location / { try_files $uri $uri/ /index.php?$query_string; } }
server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /var/www/laravel/public; index index.php index.html index.htm; server_name server_domain_or_IP; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { try_files $uri /index.php =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
Nach der Konfiguration Nginx neu starten und die obige Konfiguration vornehmen Elemente werden wirksam.
3. Erstellen Sie ein Laravel-Projektsudo service nginx restart
Wie erhalten Sie nach der Konfiguration von Nginx den Laravel-Projektcode? Es gibt mehrere Methoden:
(1). Direkte Composer-Installation
Direkte Installation über Composer. Sie können den obigen Befehl auf dem Server ausführen, indem Sie
Composer installierencd ~ curl -sS https://getcomposer.org/installer | php
Verwenden Sie Composer global:
und führen Sie ihn dann direkt im Verzeichnis /var/www aussudo mv composer.phar /usr/local/bin/composer
sudo composer create-project laravel/laravel laravel
(2). Laden Sie den Code direkt hoch
Verwenden Sie den folgenden Befehl zum Hochladen
und verschieben Sie Laravel dann in das Verzeichnis /var/www auf dem Serverscp -r laravel root@your_IP:
sudo mv laravel/ /var/www
Ich persönlich bevorzuge die Verwendung von Git, um den Code einfach zu aktualisieren und Fehler zu beheben entdeckt werden, kann ich die leistungsstarken Versionsverwaltungsfunktionen von Git nutzen, um Fehler zu beheben. Der Vorgang sieht ungefähr so aus:
Lokaler Code---->Github---->Cloud-Server
Da Sie Git verwenden möchten, installieren Sie Git zuerst auf der Cloud-Server :
sudo apt-get install git
Sobald der lokale Code an Coding übertragen wurde, verwenden Sie
ersetzen Sie Ihren Projekt-Git-Link direkt durch Ihre Laravel-Projektadresse auf Github im Verzeichnis /var/wwwgit clone your-project-git-link
5.BINGO
Eingabe im Browser: http://server_domain_or_IP
An diesem Punkt können Sie Laravel auf dem Server verwenden, wie Sie möchten, programmieren Sie weiter!
Verwandte Empfehlungen:
Das obige ist der detaillierte Inhalt vonStellen Sie die Laravel-Instanzmethode auf dem Cloud-Server bereit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!