LARAVEL SU LINUX CON WEB SERVER APACHE

La preparazione dell’ ambiente adatto per sviluppare in PHP, utilizzando il framework LARAVEL su una macchina UBUNTU SERVER con APACHE prevede una serie di passaggi che illustro dettagliatamente di seguito.

Step 1 Installazione del server web APACHE:

dopo aver effettuato l’accesso alla macchina server occorre eseguire i seguenti comandi:

sudo apt update

Comando che scarica la lista aggiornata dei pacchetti e delle nuove versioni disponibili nei repository. Questo comando si limita a recuperare informazioni senza installare alcunché.

sudo apt upgrade

Comando per scaricare e aggiornare i pacchetti che necessitano di aggiornamento

sudo apt install –y  git curl wget zip unzip 

Comando che installa alcuni tool molto comodi perché tutto funzioni adeguatamente

sudo apt install apache2 

comando per installare il server web apache

sudo systemctl stop apache2.service  (comando per fermare il server apache)

sudo systemctl start apache2.service (comando per avviare il server apache)

sudo systemctl enable apache2.service (comando per abilitare l’avvio del server al boot)

Step 2 Installazione librerie per apache e php:

sudo add-apt-repository ppa:ondrej/php  (comando per aggiungere un repository contenente alcune librerie e moduli necessari)

sudo apt update (aggiorniamo ancora la lista dei pacchetti alla luce del nuovo repository aggiunto)

sudo apt-get install  libapache2-mod-php7.2 php7.2 php7.2-xml php7.2-gd php7.2-opcache php7.2-mbstring

comando per Installare le librerie di apache e php necessarie

Abilitiamo mod_rewrite (necessario per il rewrite degli url) e riavviamo apache

sudo a2enmod rewrite

suso systemctl restart apache2.services

Editiamo il file php.ini

sudo nano /etc/php/7.2/apache2/php.ini

Apportiamo le modifiche seguenti al file

memory_limit = 256M

upload_max_filesize = 64M

cgi.fix_pathinfo=0

 

Step 3 Installazione composer

Segue una serie di comandi per installare composer (un gestore delle dipendenze e delle librerie dei progetti php che andremo a creare)

cd /tmp

curl -sS https://getcomposer.org/installer | php

sudo mv composer.phar /usr/local/bin/composer

Step 4 Installazione mysql:

A questo punto installiamo il server mysql per la gestione dei database 

sudo apt install mysql-server  (Installa mysql)

sudo mysql_secure_installation

Avviamo il client per configurare il database mysql

sudo mysql –uroot -p

Dentro il client mysql digitare quanto segue:

use mysql

UPDATE user SET authentication_string=PASSWORD(“segreta12345”)  WHERE User=’root’;

UPDATE user SET plugin=”mysql_native_password” WHERE User=’root’;

exit;  (comando per uscire dal client mysql)

 

Step 5 Operazioni conclusive

Spostiamoci nella nostra home directory e creiamo la struttura adatta ad ospitare i nostri progetti laravel

cd /home/fchiriaco

mkdir html

cd html

composer create-project –prefer-dist laravel/laravel  laraapp    (questo comando crea il primo progetto di nome laraapp)

Spostiamoci dentro la cartella laraapp

cd laraapp

Modifichiamo il file .env che contiene le principali impostazioni dell’applicazione

sudo nano .env

modifichiamo la riga APP_URL così:

APP_URL=http://laraapp.webserver

Conviene modificare anche le righe relative al db mysql inserendo i parametri del nostro server.

Modificato e salvato il file .env, torniamo nella cartella HTML

cd ..

Assegniamo la proprietà della cartella laraapp all’utente e al gruppo www-data collegati al demone apache.

sudo chown –R www-data:www-data laraapp

Assegniamo l’utente corrente al gruppo www-data

sudo usermod -aG www-data fchiriaco

Spostiamoci nella cartella di apache che ospita i siti disponibili

cd /etc/apache2/sites-available

Creiamone uno nuovo con il comando seguente

sudo nano 001-laraapp.conf

Il suo contenuto dovrà essere il seguente

<VirtualHost *:80>
ServerName laraapp.webserver
ServerAlias laraapp.webserver
ServerAdmin webmaster@localhost
DocumentRoot /home/fchiriaco/html/laraapp/public
<Directory /home/fchiriaco/html/laraapp/public>
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>

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

</VirtualHost>

Salviamo e usciamo.

Abilitiamo il nuovo sito con il comando seguente:

sudo a2ensite 001-laraapp.conf

Riavviamo apache

sudo systemctl restart apache2.service

A questo punto il sistema è configurato.

Modifichiamo i file hosts di tutte le macchine collegate in rete, che accederanno mediante browser al nuovo sito laraapp utilizzando l’url http://laraapp.webserver.

I file hosts dovranno contenere una riga come la seguente

indirizzo-ip-del-server    laraapp.webserver

esempio file hosts

127.0.0.1           localhost

192.168.1.230       laraapp.webserver

Apriamo il browser, di una macchina della rete, digitiamo nella barra dell’indirizzo http://laraapp.webserver

Se tutto è andato bene dovrebbe comparire la home predefinita del sito

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *