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

Jak nainstalovat Laravel PHP Framework s Nginx na CentOS 8

Úvod

Laravel je open source, dobře známý a moderní webový rámec založený na PHP 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.

Využívá také nástroje jako Composer – 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í.

Dozvíte se, jak nainstalovat nejnovější verzi webového rámce Laravel PHP na distribuci CentOS 8 Linux.

Instalovat LEMP Stack

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. 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.

Enter current password for root (enter for none): press Enter 

 Set root password? [Y/n]y #set new root password Remove anonymous users? [Y/n] press y 
Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] press y
 Reload privilege tables now? [Y/n] 

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

Konfigurace a zabezpečení PHP-FPM a Nginx

1. 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.

2. 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 = nginx
listen.group = nginx
listen.mode = 066

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

# vim /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 = Africa/Cairo

4. 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=0

5. 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

Nainstalujte Composer a Laravel PHP Framework

1. 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.

[unixcop@unixcop ~]$ curl -sS https://getcomposer.org/installer | php
All settings correct for using Composer
Downloading…
Composer (version 2.1.5) successfully installed to: /home/unixcop/composer.phar
Use it: php composer.phar
[unixcop@unixcop ~]$

Poté spusťte tyto příkazy:

mv composer.phar /usr/local/bin/composer
chmod +x /usr/local/bin/composer

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

# cd /var/www/html/
# composer create-project --prefer-dist laravel/laravel newunixcop.com

3. Během procesu instalace se soubor .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 newunixcop.com/

4. Musíte 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.

[root@unixcop html]# chown -R :nginx /var/www/html/newunixcop.com/storage/
[root@unixcop html]# chown -R :nginx /var/www/html/newunixcop.com/bootstrap/cache/
[root@unixcop html]# chown -R :nginx /var/www/html/newunixcop.com/storage/
[root@unixcop html]# chmod -R 0775 /var/www/html/newunixcop.com/bootstrap/cache/

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

spusťte tento příkaz:

[root@unixcop html]# restorecon -Rv 'https://1118798822.rsc.cdn77.org/var/www/html/newunixcop.com'
Relabeled /var/www/html/newunixcop.com/storage/logs from unconfined_u:object_r:httpd_sys_content_t:s0 to unconfined_u:object_r:httpd_log_t:s0
Relabeled /var/www/html/newunixcop.com/storage/logs/.gitignore from unconfined_u:object_r:httpd_sys_content_t:s0 to unconfined_u:object_r:httpd_log_t:s0
[root@unixcop html]# 

Nakonfigurujte blok serveru Nginx pro Laravel

1. 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.

# vim /etc/nginx/conf.d/newunixcop.com.conf

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

server {
        listen      80;
       server_name newunixcop.com;
       root        /var/www/html/newunixcop.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-fpm/www.sock;
        }
        location ~ /\.ht {
                deny all;
        }
}

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

[root@unixcop ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@unixcop ~]# 

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

# systemctl restart php-fpm
# systemctl restart Nginx

Přístup na web Laravel z webového prohlížeče

4. Pro přístup na webovou stránku Laravel na adrese newunixcop.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.

Spuštěním následujícího příkazu přidejte IP adresu serveru a doménu do požadovaného souboru (nahraďte hodnotu podle vašeho nastavení).

[root@unixcop ~]# echo "192.168.122.60  newunixcop.com" | sudo tee -a /etc/hosts
192.168.122.60  newunixcop.com
[root@unixcop ~]# 

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

http://newunixcop.com

Závěr

Ú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.


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