Kif Tinstalla Laravel PHP Framework fuq Ubuntu


Laravel huwa qafas PHP b'xejn, sors miftuħ, flessibbli u ħafif bi struttura tad-disinn tal-Model-View Controller (MVC). Għandu sintassi raffinata, faċli u li tinqara għall-iżvilupp ta' applikazzjonijiet moderni, robusti u b'saħħithom mill-bidu nett. Barra minn hekk, Laravel jiġi b'diversi għodod, li tista 'tuża biex tikteb kodiċi PHP nadif, modern u li jista' jinżamm.

F'dan l-artikolu, ser nispjega kif tinstalla u tħaddem l-aħħar verżjoni ta 'Laravel 5.6 PHP Framework fuq Ubuntu 18.04, 16.04 u 14.04 LTS (Long Term Support) b'appoġġ Apache2 u PHP 7.2.

Is-sistema tiegħek trid tissodisfa r-rekwiżiti li ġejjin biex tkun tista' tħaddem l-aħħar verżjoni ta' Laravel:

  • PHP >= 7.1.3 b'Estensjonijiet PHP OpenSSL, PDO, Mbstring, Tokenizer, XML, Ctype u JSON.
  • Kompożitur – maniġer tal-pakkett fil-livell tal-applikazzjoni għall-PHP.

Installazzjoni ta' Pre-Rekwiżiti

L-ewwel, kun żgur li taġġorna s-sorsi tas-sistema tiegħek u l-pakketti tas-softwer eżistenti billi tuża l-kmandi li ġejjin.

$ sudo apt-get update 
$ sudo apt-get upgrade

Installazzjoni ta 'LAMP Stack fuq Ubuntu

Sussegwentement, waqqaf ambjent ta 'LAMP (Linux, Apache, MySQL u PHP), jekk diġà għandek, tista' taqbeż dan il-pass, jew tinstalla munzell tal-bozoz billi tuża l-kmandi li ġejjin fuq is-sistema Ubuntu.

$ sudo apt-get install python-software-properties
$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt-get update
$ sudo apt-get install apache2 libapache2-mod-php7.2 mysql-server php7.2 php7.2-xml php7.2-gd php7.2-opcache php7.2-mbstring php7.2-mysql

Anke jekk ir-repożitorju default ta 'Ubuntu għandu PHP, iżda dejjem hija idea tajba li jkollok repożitorju ta' parti terza għal aġġornamenti aktar frekwenti. Jekk trid, tista 'taqbeż dan il-pass u żżomm mal-verżjoni PHP default mir-repożitorju ta' Ubuntu.

Installazzjoni ta' Composer fuq Ubuntu

Issa, għandna bżonn ninstallaw Kompożitur (maniġer tad-dipendenza għal PHP) għall-installazzjoni tad-dipendenzi meħtieġa ta 'Laravel billi tuża l-kmandi li ġejjin.

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

Installazzjoni ta 'Laravel fuq Ubuntu

Ladarba l-Kompożitur ikun installat, issa tista' tniżżel u tinstalla l-aħħar verżjoni ta' Laravel mir-repożitorju uffiċjali tal-git taħt id-direttorju Apache /var/www.

$ cd /var/www
$ git clone https://github.com/laravel/laravel.git
$ cd /var/www/laravel
$ sudo composer install

Ladarba titlesta l-installazzjoni ta 'Laravel, issettja l-permessi xierqa fuq il-fajls kollha billi tuża l-kmandi li ġejjin.

$ chown -R www-data.www-data /var/www/laravel
$ chmod -R 755 /var/www/laravel
$ chmod -R 777 /var/www/laravel/storage

Twaqqif ta 'Encryption Key

Issa oħloq fajl ambjentali għall-applikazzjoni tiegħek, billi tuża l-kampjun tal-fajl ipprovdut.

$ cp .env.example .env

Laravel juża ċavetta tal-applikazzjoni biex jiżgura sessjonijiet tal-utent u data oħra kriptata. Allura għandek bżonn tiġġenera u tissettja ċ-ċavetta tal-applikazzjoni tiegħek għal string każwali billi tuża l-kmand li ġej.

$ php artisan key:generate

Ladarba ċ-ċavetta tkun ġiet iġġenerata, issa tiftaħ il-fajl tal-konfigurazzjoni .env u aġġorna l-valuri meħtieġa. Ukoll, kun żgur li APP_KEY hija ssettjata b'mod korrett fil-fajl tal-konfigurazzjoni kif iġġenerat fil-kmand ta 'hawn fuq.

APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:AFcS6c5rhDl+FeLu5kf2LJKuxGbb6RQ/5gfGTYpoAk=
APP_DEBUG=true
APP_URL=http://localhost

Oħloq Database għal Laravel

Jista 'jkollok bżonn ukoll li toħloq database MySQL għall-proġett ta' applikazzjoni Laravel tiegħek billi tuża l-kmandi li ġejjin.

$ mysql -u root -p
mysql> CREATE DATABASE laravel;
mysql> GRANT ALL ON laravel.* to 'laravel'@'localhost' IDENTIFIED BY 'secret_password';
mysql> FLUSH PRIVILEGES;
mysql> quit

Issa tiftaħ il-fajl tal-konfigurazzjoni .env u aġġorna s-settings tad-database kif muri.

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=laravel
DB_PASSWORD=secret_password

Konfigurazzjoni ta' Apache għal Laravel

Issa mur fil-fajl tal-konfigurazzjoni tal-host virtwali default Apache /etc/apache2/sites-enabled/000-default.conf u aġġorna d-DocumentRoot għal direttorju pubbliku Laravel kif muri.

$ nano /etc/apache2/sites-enabled/000-default.conf

Issa modifika l-konfigurazzjoni tal-host virtwali default bil-kontenut li ġej u kun żgur ukoll li tissostitwixxi yourdomain.tld bl-isem tad-dominju tal-websajt tiegħek kif muri.

<VirtualHost *:80>
        ServerName yourdomain.tld

        ServerAdmin [email 
        DocumentRoot /var/www/laravel/public

        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/laravel>
                AllowOverride All
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Wara li tagħmel il-bidliet ta 'hawn fuq, kun żgur li terġa' tgħabbi l-bidliet fil-konfigurazzjoni ta 'Apache billi terġa' tibda s-servizz billi tuża l-kmand li ġej.

$ sudo service apache2 restart

Aċċess għall-Applikazzjoni Laravel

Fl-aħħarnett aċċess għall-applikazzjoni tiegħek Laravel minn browser, billi tuża l-URL li ġej.

http://yourdomain.tld
OR
http://your-ip-address

Minn dan il-punt, inti lest li tmur u tibda tibni applikazzjonijiet b'saħħithom billi tuża Laravel PHP Framework. Għal konfigurazzjonijiet addizzjonali bħal cache, database u sessjonijiet, tista 'tmur fil-homepage ta' Laravel.