Bii o ṣe le Fi Framework PHP Laravel sori Ubuntu


Laravel jẹ ọfẹ, orisun ṣiṣi, irọrun ati iwuwo PHP fẹẹrẹ pẹlu eto apẹrẹ awoṣe-Wo Adarí (MVC). O ni atunto kan, rọrun, ati kika ti o ṣe ka fun idagbasoke idagbasoke igbalode, logan ati awọn ohun elo ti o lagbara lati ori. Ni afikun, Laravel wa pẹlu awọn irinṣẹ pupọ, ti o le lo lati kọ koodu mimọ, igbalode ati itọju PHP.

Ninu àpilẹkọ yii, Emi yoo ṣe alaye bi o ṣe le fi sori ẹrọ ati ṣiṣe ẹya tuntun ti Laravel 5.6 Framework PHP lori Ubuntu 18.04, 16.04 ati 14.04 LTS (Atilẹyin Igba pipẹ) pẹlu Apache2 ati atilẹyin PHP 7.2.

Eto rẹ gbọdọ ni itẹlọrun awọn ibeere wọnyi lati ni anfani lati ṣiṣẹ ẹya tuntun ti Laravel:

  • PHP> = 7.1.3 pẹlu OpenSSL, PDO, Mbstring, Tokenizer, XML, Ctype ati Awọn amugbooro JSON PHP.
  • Olupilẹṣẹ - oluṣakoso ohun elo ipele-ipele fun PHP.

Fifi-Pre-Requisites

Ni akọkọ, rii daju lati ṣe imudojuiwọn awọn orisun eto rẹ ati awọn idii sọfitiwia ti o wa tẹlẹ nipa lilo awọn ofin atẹle.

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

Fifi LAMP Stack sori Ubuntu

Nigbamii, ṣeto LAMP ti nṣiṣẹ (Linux, Apache, MySQL ati PHP) ayika, ti o ba ti ni tẹlẹ, o le foju igbesẹ yii, tabi fi sori ẹrọ akopọ atupa nipa lilo awọn ofin atẹle lori eto 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

Botilẹjẹpe ibi ipamọ Ubuntu aiyipada ni PHP, ṣugbọn o jẹ igbagbogbo imọran lati ni ibi-ipamọ ẹnikẹta fun awọn imudojuiwọn igbagbogbo. Ti o ba fẹ, o le foju igbesẹ yii ki o faramọ ẹya PHP aiyipada lati ibi ipamọ Ubuntu.

Fifi Olupilẹṣẹ sori Ubuntu

Bayi, a nilo lati fi Olupilẹṣẹ sori ẹrọ (oluṣakoso igbẹkẹle fun PHP) fun fifi sori ẹrọ ti o gbẹkẹle awọn igbẹkẹle Laravel nipa lilo awọn ofin wọnyi.

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

Fifi Laravel sori Ubuntu

Lọgan ti a ṣeto Olupilẹṣẹ, bayi o le ṣe igbasilẹ ati fi ẹya tuntun ti Laravel sori ẹrọ lati ibi ipamọ git osise labẹ itọsọna Apache/var/www.

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

Lọgan ti fifi sori ẹrọ Laravel pari, ṣeto awọn igbanilaaye ti o yẹ lori gbogbo awọn faili nipa lilo awọn ofin atẹle.

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

Ṣiṣeto Bọtini fifi ẹnọ kọ nkan

Bayi ṣẹda faili ayika fun ohun elo rẹ, ni lilo faili apẹẹrẹ ti a pese.

$ cp .env.example .env

Laravel lo bọtini ohun elo lati ni aabo awọn akoko olumulo ati data ti paroko miiran. Nitorina o nilo lati ṣe ina ati ṣeto bọtini ohun elo rẹ si okun alailowaya nipa lilo pipaṣẹ atẹle.

$ php artisan key:generate

Lọgan ti a ti ṣẹda bọtini, bayi ṣii faili iṣeto .env ki o ṣe imudojuiwọn awọn iye ti o nilo. Pẹlupẹlu, rii daju pe APP_KEY ti ṣeto daradara ni faili iṣeto bi o ti ṣe ipilẹṣẹ ni aṣẹ loke.

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

Ṣẹda aaye data fun Laravel

O tun le nilo lati ṣẹda ibi ipamọ data MySQL fun iṣẹ ohun elo Laravel rẹ nipa lilo awọn ofin wọnyi.

$ 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

Bayi ṣii .env faili iṣeto ati mu awọn eto ipilẹ data dojuiwọn bi o ti han.

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

Tito leto Apache fun Laravel

Nisisiyi lọ si faili iṣeto iṣeto ogun aifọwọyi Apache aiyipada /etc/apache2/sites-enabled/000-default.conf ki o ṣe imudojuiwọn DocumentRoot si itọsọna gbangba gbangba ti Laravel bi o ti han.

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

Nisisiyi ṣe atunto iṣeto ogun aṣoju aiyipada pẹlu akoonu atẹle ati tun rii daju lati rọpo yourdomain.tld pẹlu orukọ ìkápá ti oju opo wẹẹbu rẹ bi o ti han.

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

Lẹhin ṣiṣe awọn ayipada loke, rii daju lati tun gbe awọn ayipada iṣeto Apache pada nipasẹ tun bẹrẹ iṣẹ nipa lilo pipaṣẹ atẹle.

$ sudo service apache2 restart

Iwọle si Ohun elo Laravel

Lakotan wọle si ohun elo Laravel rẹ lati ẹrọ lilọ kiri ayelujara kan, ni lilo URL atẹle.

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

Lati aaye yii, o ti ṣetan lati lọ ki o bẹrẹ si kọ awọn ohun elo ti o lagbara nipa lilo Framework PHP Laravel. Fun awọn atunto afikun bi kaṣe, ibi ipamọ data ati awọn akoko, o le lọ si oju-ile Laravel.