GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat Laravel PHP Framework s Nginx na CentOS 8

Laravel je dobře známý a moderní webový rámec založený na PHP s otevřeným zdrojovým kódem s výraznou, elegantní a snadno srozumitelnou syntaxí, která usnadňuje vytváření velkých a robustních webových aplikací.

Mezi jeho klíčové vlastnosti patří jednoduchý, rychlý routovací engine, výkonný kontejner pro vkládání závislostí, více back-endů pro ukládání relací a mezipaměti, expresivní a intuitivní databáze ORM (Object-relational Mapping), robustní zpracování úloh na pozadí a vysílání událostí v reálném čase.

Používá také nástroje jako Skladatel – správce balíčků PHP pro správu závislostí a Artisan – rozhraní příkazového řádku pro vytváření a správu webových aplikací.

V tomto článku se dozvíte, jak nainstalovat nejnovější verzi Laravel PHP webový rámec na CentOS 8 Linux distribuce.

Požadavky na server

Laravel framework má následující požadavky:

  • PHP>=7.2.5 s těmito rozšířeními PHP OpenSSL, PDO, Mbstring, Tokenizer, XML, Ctype a JSON.
  • Skladatel – pro instalaci a správu závislostí.

Krok 1:Instalace LEMP Stack v CentOS 8

1. Chcete-li začít, aktualizujte balíčky systémového softwaru a nainstalujte LEMP zásobník (Linux , Nginx , MariaDB / MySQL a PHP ) pomocí následujících příkazů dnf.

# dnf update# dnf install nginx php php-fpm php-common php-xml php-mbstring php-json php-zip mariadb-server php-mysqlnd

2. Když LEMP je instalace dokončena, musíte spustit PHP-PFM , Nginx a MariaDB služby pomocí následujících příkazů systemctl.

# systemctl start php-fpm nginx mariadb# systemctl enable php-fpm nginx mariadb# systemctl status php-fpm nginx mariadb

3. Dále musíte zabezpečit a zpevnit MariaDB databázový stroj pomocí bezpečnostního skriptu, jak je uvedeno.

# mysql_secure_installation

Chcete-li zabezpečit instalaci serveru, odpovězte na následující otázky.

Zadejte aktuální heslo pro root (zadejte pro žádné):Enter Nastavit heslo root? [A/n] y #set new root password Odstranit anonymní uživatele? [A/n] y Zakázat vzdálené přihlášení root? [A/n] y Odebrat testovací databázi a přístup k ní? [A/n] y Znovu načíst tabulky oprávnění? [A/n] y 

4. Pokud máte firewall spuštěná služba, musíte otevřít HTTP a HTTPS službu ve bráně firewall, abyste povolili požadavky klientů na webový server Nginx.

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

5. Nakonec můžete potvrdit, že vaše LEMP stack běží pomocí prohlížeče na IP adrese vašeho systému.

http://server-IP

Zkontrolujte webovou stránku Nginx

Krok 2:Konfigurace a zabezpečení PHP-FPM a Nginx

6. Ke zpracování požadavků z Nginx webový server, PHP-FPM může naslouchat na soketu Unix nebo TCP soketu a to je definováno pomocí naslouchat parametr v /etc/php-fpm.d/www.conf konfigurační soubor.

# vi /etc/php-fpm.d/www.conf

Ve výchozím nastavení je nakonfigurován tak, aby poslouchal na soketu Unix, jak je znázorněno na následujícím snímku obrazovky. Hodnota zde bude specifikována v souboru bloku serveru Nginx později.

Nastavte PHP-FPM Listen Socket

7. Pokud používáte soket Unix, měli byste u něj také nastavit správné vlastnictví a oprávnění, jak je znázorněno na snímku obrazovky. Odkomentujte následující parametry a nastavte jejich hodnoty na uživatele a skupinu tak, aby odpovídaly uživateli a skupině Nginx běží jako.

listen.owner =nginxlisten.group =nginxlisten.mode =066

Nastavte Listen Socket Ownership na Nginx

8. Dále také nastavte časové pásmo pro celý systém v /etc/php.ini konfigurační soubor.

# vi /etc/php.ini

Hledejte řádek “;date.timezone” a odkomentujte jej, poté nastavte jeho hodnotu, jak je znázorněno na snímku obrazovky (použijte hodnoty, které platí pro váš region/kontinent a zemi).

 date.timezone =Afrika/Kampala

Nastavte časové pásmo v PHP

9. Ke zmírnění rizika Nginx předávání požadavků od uživatelů se zlými úmysly, kteří ke spuštění kódu PHP používají jiná rozšíření, do PHP-FPM, zrušte komentář u následujícího parametru a nastavte jeho hodnotu na 0 .

cgi.fix_pathinfo=1

Zabezpečené PHP a Nginx

10. V souvislosti s předchozím bodem také odkomentujte následující parametr v /etc/php-fpm.d/www.conf soubor. Přečtěte si komentář pro další vysvětlení.

security.limit_extensions =.php .php3 .php4 .php5 .php7

Omezte spouštění rozšíření PHP

Krok 3:Instalace Composer a Laravel PHP Framework

11. Dále nainstalujte Skladatel balíček spuštěním následujících příkazů. První příkaz stáhne instalační program a poté jej spustí pomocí PHP.

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

Nainstalujte Composer v CentOS 8

12. Teď ten Skladatel je nainstalován, použijte jej k instalaci souborů Laravel a závislostí následovně. Nahraďte mysite.com s názvem adresáře, kde budou uloženy soubory Laravel, absolutní cesta (nebo kořenová cesta v konfiguračním souboru Nginx) bude /var/www/html/mysite.com .

# cd /var/www/html/# skladatel create-project --prefer-dist laravel/laravel mysite.com

Nainstalujte Laravel v CentOS 8

Pokud během procesu vše půjde dobře, měla by být aplikace úspěšně nainstalována a měl by být vygenerován klíč, jak je znázorněno na následujícím snímku obrazovky.

Instalace Laravel dokončena

13. Během procesu instalace .env prostředí byl vytvořen a požadovaná aplikace byla také vygenerována, takže je nemusíte vytvářet ručně jako dříve. Chcete-li to potvrdit, spusťte dlouhý výpis kořenového adresáře laravel pomocí příkazu ls.

# ls -la mysite.com/

Seznam souborů Laravel

14. Dále je třeba nakonfigurovat správné vlastnictví a oprávnění k úložišti a bootstrap/cache do adresářů, do kterých může webový server Nginx zapisovat.

# chown -R :nginx /var/www/html/mysite.com/storage/# chown -R :nginx /var/www/html/mysite.com/bootstrap/cache/# chmod -R 0777 /var /www/html/mysite.com/storage/# chmod -R 0775 /var/www/html/mysite.com/bootstrap/cache/

15. Pokud SELinux povoleno na vašem serveru, měli byste také aktualizovat kontext zabezpečení úložiště a bootstrap/cache adresáře.

# semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/mysite.com/storage(/.*)?'# semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/mysite.com /bootstrap/cache(/.*)?'# restorecon -Rv '/var/www/html/mysite.com'

Krok 4:Nakonfigurujte blok serveru Nginx pro Laravel

16. Pro Nginx chcete-li začít poskytovat své webové stránky nebo aplikaci, musíte pro ně vytvořit blok serveru v .conf soubor pod /etc/nginx/conf.d/ adresář, jak je znázorněno.

# vi /etc/nginx/conf.d/mysite.com.conf

Zkopírujte a vložte následující konfiguraci do souboru. Poznamenejte si kořenový adresář a fastcgi_pass parametry.

server { poslouchat 80; server_name mysite.com; root /var/www/html/mysite.com/public; index index.php; znaková sada utf-8; gzip zapnutý; gzip_types text/css aplikace/javascriptový text/javascriptová aplikace/x-javascriptový obrázek/svg+xml text/prostý text/xsd text/xsl text/xml obrázek/x-ikona; umístění / { try_files $uri $uri/ /index.php?$query_string; } umístění ~ \.php { include fastcgi.conf; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/run/php-fpm/www.sock; } umístění ~ /\.ht { zakázat vše; }}

17. Uložte soubor a zkontrolujte, zda Nginx konfigurační syntaxe je spuštěním správná.

# nginx -t

Zkontrolujte konfiguraci Nginx

18. Poté restartujte PHP-FPM a Nginx služby, aby se poslední změny projevily.

# systemctl restart php-fpm# systemctl restart Nginx

Krok 5:Přístup k webu Laravel z webového prohlížeče

19. Přístup na web Laravel na adrese mysite.com , což není plně kvalifikovaný název domény (FQDN) a není registrován (používá se pouze pro testovací účely), použijeme /etc/hosts soubor na vašem místním počítači vytvořit místní DNS.

Spusťte následující příkaz a přidejte IP adresu serveru a doménu do požadovaného souboru (hodnotu nahraďte podle svého nastavení).

# ip add #get remote server IP$ echo "10.42.0.21 mysite.com" | sudo tee -a /etc/hosts

Přidejte položky DNS do místního souboru

20. Dále otevřete webový prohlížeč na místním počítači a použijte k navigaci následující adresu.

http://mysite.com

Laraval Web Access

Úspěšně jste nasadili Laravel na CentOS 8 . Nyní můžete začít vyvíjet svůj web nebo webovou aplikaci pomocí Laravel . Další informace naleznete v příručce Laravel Getting Started.

Sharing is Caring…
Sdílet na FacebookuSdílet na TwitteruSdílet na LinkedinSdílet na Redditu
Cent OS
  1. Jak nainstalovat WordPress s Nginx na CentOS 7

  2. Jak nainstalovat phpMyAdmin s Nginx na CentOS 7

  3. Jak nainstalovat Phorum s Nginx na CentOS 7

  1. Jak nainstalovat Nextcloud s Nginx a PHP 7.3 na CentOS 8

  2. Jak nainstalovat SuiteCRM s Nginx na CentOS 7

  3. Jak nainstalovat MediaWiki s Nginx na CentOS 7

  1. Jak nainstalovat Laravel 5.x s Nginx a PHP-FPM 7.1 na CentOS 7

  2. Jak nainstalovat Pimcore s Nginx na CentOS 7

  3. Jak nainstalovat Laravel 5 PHP Framework s Nginx na Ubuntu 16.04 LTS