Instalare LAMP – Ubuntu 18.04

In randurile de mai jos o sa explic pasii care trebuie parcursi pentru instalarea LAMP. Desi exista mai multe variante disponibile, eu voi instala LAMP cu tasksel, un utilitar ce face in locul nostru toate cele necesare, ramanand doar sa configuram cateva optiuni.

Am ales sa scriu articolul asta pentru ca majoritatea celor de pe net’ sunt out-of-date, multe fiind scrise acum mai bine de 10 ani.

Voi scrie comenzile in ordinea in care trebuie executate, ca sa nu existe confuzii.

1: TASKSEL & LAMP

sudo apt install tasksel
sudo tasksel install lamp-server

Daca totul a decurs ok, in momentul in care accesam IP-ul server-ului ar trebui sa apara urmatoarea pagina:

2: PHPMYADMIN

Desi nu recomand, stiu ca cei ce vin de pe shared hosting sunt obisnuiti ca user-ul sa aiba drepturi depline, asa ca randurile de mai jos, pe langa instalarea phpMyAdmin, creeaza un utilizator cu toate privilegiile.

sudo apt install phpmyadmin php-mbstring php-gettext
sudo phpenmod mbstring
sudo systemctl restart apache2
sudo mysql
CREATE USER 'nume_utilizator'@'localhost' IDENTIFIED BY 'parola_utilizator';
GRANT ALL PRIVILEGES ON *.* TO 'nume_utilizator'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
quit

Dupa instalare facem o verificare rapida, sa ne asiguram ca totul functioneaza fara probleme – http://ip-server/phpmyadmin

3: VIRTUAL HOST

(Ajuta in cazul in care vrei sa gazduiesti mai multe site-uri pe acelasi server)

Apache vine cu o gazda virtuala default, iar fisierul de care avem nevoie se numeste 000-default.conf – o sa il folosim ca sablon pentru noile gazde.

Incepem prin a copia fisierul pentru primul domeniu:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf

Dupa care il deschidem pentru editare:

sudo nano /etc/apache2/sites-available/example.com.conf

In interiorul tag-ului *<VirtualHost :80> adaugam urmatoarele linii:

ServerName example.com
ServerAlias www.example.com
<Directory /var/www/html>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Require all granted
</Directory>

Salvam si inchidem fisierul. Acum trebuie sa activam gazda virtuala pe care am creat-o si sa o dezactivam pe cea default.

sudo a2ensite example.com.conf
sudo a2dissite 000-default.conf

La final trebuie sa repornim Apache pentru ca modificarile facute mai sus sa aiba efect:

sudo systemctl restart apache2

4: SETAREA PERMISIUNILOR

sudo chown -R $USER:$USER /var/www/public_html

Variabila $USER va lua valoarea utilizatorului autentificat in momentul in care apasam Enter. Facand acest lucru, utilizatorul nostru non-root detine acum directorul public_html.

De asemenea, ar trebui sa modificam putin permisiunile pentru a ne asigura ca accesul de citire este permis in directorul general si in toate subfolderele pe care le contine:

sudo chmod -R 755 /var/www

Asta-i tot. In cazul in care intampinati probleme, lasati un reply si voi incerca sa va ajut :slight_smile:

:beer: