Pełna instalacja serwera LAMP Linux, Apache, MySql, PHP Debian 11
Ten poradnik opisuje jak kompleksowo zainstalować serwer LAMP czyli podstawowe usługi Apache, MySql, PHP oraz phpmyadmin.
Krok po kroku dokonamy instalacji wszystkich pakietów.
Na początek dokonamy instalacji serwera web Apache:
1 | apt-get install apache2 apache2-utils -y |
Poleceniem:
1 | apache2 -v |
Możemy sprawdzić wersję Apache:
1 2 | Server version: Apache/2.4.48 (Debian) Server built: 2021-08-12T11:51:47 |
Apache uruchamiamy poleceniami:
1 | systemctl start apache2 |
1 | systemctl enable apache2 |
Po przejściu teraz w przeglądarce na nasz adres ip powinniśmy zobaczyć stronę startową Apache
Kolejny krok to instalacja serwera baz danych MariaDB
Instalujemy:
1 | apt-get install mariadb-server -y |
I uruchamiamy:
1 | systemctl start mariadb |
1 | systemctl enable mariadb |
Status działania możemy zweryfikować wydając polecenie:
1 | systemctl status mariadb |
poniżej wynik:
1 2 3 4 5 6 7 8 9 10 11 | ? mariadb.service - MariaDB 10.3.31 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2021-08-21 04:13:25 UTC; 1min 36s ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 1838 (mysqld) Status: "Taking your SQL requests now..." Tasks: 31 (limit: 2353) Memory: 66.1M CGroup: /system.slice/mariadb.service ??1838 /usr/sbin/mysqld |
Wydajemy w konsoli polecenie:
1 | mysql_secure_installation |
I dokonujemy wstępnej konfiguracji jak poniżej:
1 2 3 4 5 6 7 8 | Enter current password for root (enter for none): Change the root password? [Y/n] Y New password: Re-enter new password: Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y |
Logować się do mysql możemy wydając polecenie:
1 | mysql -u root -p |
I podając przed chwilą ustawione przez nas hasło.
Instalacji PHP dokonamy wydając polecenie:
1 | apt-get install php libapache2-mod-php php-cli php-mysql php-zip php-curl php-xml -y |
Wersję php możemy sprawdzić wpisując w konsoli komendę:
1 | php -v |
Poniżej wynik:
1 2 3 4 | PHP 7.4.21 (cli) (built: Jul 2 2021 03:59:48) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.21, Copyright (c), by Zend Technologies |
Ostatni krok to stworzenie naszego vhosta domeny.
Tworzymy katalog naszej domeny:
1 | mkdir /var/www/html/domena.pl |
nadajemy uprawnienia:
1 | chown -R www-data:www-data /var/www/html/domena.pl |
Tworzymy plik konfiguracyjny vhosta wydając polecenie:
1 | nano /etc/apache2/sites-available/domena.pl.conf |
O zawartości:
1 2 3 4 5 6 7 | <VirtualHost *:80> ServerAdmin webmaster@localhost ServerName domena.pl DocumentRoot /var/www/html/domena.pl ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> |
I zapisujemy plik.
Dodajemy do aktywnych nasz vhost:
1 | a2ensite domena.pl.conf |
1 | a2dissite 000-default |
Sprawdzamy konfigurację:
1 | apache2ctl configtest |
I przeładujemy serwer Apache:
1 | systemctl reload apache2 |
Pozostało nam tylko teraz przekierować domenę na ip naszego serwera.