Jak nainstalovat Laravel PHP Framework s Nginx na Ubuntu 20.04
Laravel je nejpopulárnější, bezplatný a open-source PHP framework na světě, známý svou výraznou a elegantní syntaxí. Laravel je přístupný, výkonný a nabízí některé z nejlepších nástrojů pro vývoj webu, které jsou vyžadovány pro velké, robustní a moderní aplikace.
V tomto článku se dozvíte, jak nainstalovat Laravel PHP Framework na server Ubuntu 20.04 běžící na webovém serveru Nginx.
Předpoklady
- Jak nainstalovat LEMP Stack s PhpMyAdmin v Ubuntu 20.04
Krok 1: Instalace požadovaných modulů PHP
Po nastavení zásobníku LEMP na vašem serveru Ubuntu 20.04, jak je popsáno v průvodci ve výše uvedeném odkazu, musíte nainstalovat další rozšíření PHP požadovaná Laravelem následovně:
sudo apt update
sudo apt php-common php-json php-mbstring php-zip php-xml php-tokenizer
Krok 2: Vytvoření databáze pro Laravel
Dále je třeba vytvořit databázi MySQL pro vaši aplikaci Laravel. Přihlaste se tedy do svého mysql shellu a vytvořte databázi následovně.
sudo mysql
MariaDB [(none)]> CREATE DATABASE laraveldb;
MariaDB [(none)]> GRANT ALL ON laraveldb.* to 'webmaster'@'localhost' IDENTIFIED BY 'tecmint';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> quit
Krok 3: Instalace aplikace Composer v Ubuntu 20.04
Laravel využívá ke správě svých závislostí composer (správce závislostí pro PHP). Před použitím Laravel se proto ujistěte, že máte v systému nainstalovaný Composer, jak je znázorněno.
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composer
Krok 4: Instalace Laravelu v Ubuntu 20.04
Po instalaci skladatele jej použijte k instalaci souborů Laravel. Přesuňte se do svého adresáře /var/www/html
, kde jsou uloženy webové soubory, a poté nainstalujte Laravel pomocí skladatele podle obrázku. Nezapomeňte nahradit example.com
názvem adresáře, kde budou uloženy soubory Laravel.
cd /var/www/html
composer create-project --prefer-dist laravel/laravel example.com
Krok 5: Konfigurace Laravelu v Ubuntu 20.04
Chcete-li zobrazit obsah nové instalace Laravel, spusťte následující příkaz ls. Všimnete si, že byl automaticky vytvořen soubor .env
, který by v minulosti musel být vytvořen ručně.
ls -la /var/www/html/example.com/
Dále nastavte příslušná oprávnění pro adresář Laravel následovně.
sudo chown -R :www-data /var/www/html/example.com/storage/
sudo chown -R :www-data /var/www/html/example.com/bootstrap/cache/
sudo chmod -R 0777 /var/www/html/example.com/storage/
sudo chmod -R 0775 /var/www/html/example.com/bootstrap/cache/
Dále Laravel používá aplikační klíč k zabezpečení uživatelských relací a dalších šifrovaných dat. Výchozí .env
obsahuje výchozí klíč aplikace, ale z bezpečnostních důvodů si pro nasazení laravel musíte vygenerovat nový.
sudo php artisan key:generate
Vygenerovaný klíč bude připojen do souboru .env
jako hodnota APP_KEY
. Připojený klíč můžete zobrazit pomocí příkazu grep.
grep -i APP_Key /var/www/html/example.com/.env
Musíte také nakonfigurovat podrobnosti o připojení k databázi Laravel v .env
, jak je znázorněno na následujícím snímku obrazovky.
sudo nano /var/www/html/example.com/.env
Krok 6: Konfigurace NGINX pro obsluhu aplikace Laravel
Aby NGINX obsluhoval vaši novou aplikaci, musíte pro ni vytvořit blok serveru v konfiguraci NGINX v adresáři /etc/nginx/sites-available/
.
sudo nano /etc/nginx/sites-available/example.com.conf
V níže uvedené konfiguraci aktualizujte kořenovou direktivu na veřejný adresář aplikace Laravel a nezapomeňte nahradit www.example.com
názvem domény vašeho webu, jak je znázorněno.
Nastavte také direktivu fastcgi_pass
tak, aby ukazovala na médium, na kterém PHP-FPM naslouchá požadavkům (například fastcgi_pass unix:/run/php/php7.4 -fpm.sock
):
server{
server_name www.example.com;
root /var/www/html/example.com/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:/run/php/php7.4-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
Uložte soubor a poté povolte konfiguraci webu Laravel vytvořením odkazu z /etc/nginx/sites-available/example.com.conf
na /etc/nginx/sites-enabled/
. Kromě toho odeberte výchozí konfiguraci bloku serveru.
sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/
sudo rm /etc/nginx/sites-enabled/default
Dále zkontrolujte, zda je syntaxe konfigurace NGINX správná, spuštěním následujícího příkazu před restartováním služby.
sudo nginx -t
sudo systemctl restart nginx
Krok 7: Přístup k aplikaci Laravel z webového prohlížeče
V této fázi musíte otestovat, zda vaše nasazení Laravel funguje správně a zda k němu lze přistupovat z prohlížeče. Chcete-li použít fiktivní doménu example.com
, použijte k vytvoření místního DNS soubor /etc/hosts
na vašem místním počítači.
Spuštěním následujících příkazů získáte IP adresu serveru Laravel a přidejte ji do souboru /etc/hosts
(hodnotu nahraďte podle svého nastavení).
$ip reklama
$echo “192.168.56.11 example.com” | sudo tee -a /etc/hosts
Nyní otevřete webový prohlížeč na místním počítači a použijte k navigaci následující adresu.
http://www.example.com/
Nyní, když máte nainstalovaný Laravel, můžete začít vytvářet svou webovou aplikaci nebo web. Další informace naleznete v dokumentaci Laravel.