Jak zainstalować Linux, Nginx, MySQL, PHP (LEMP) na Ubuntu
1. Wymagania wstępne
Przed rozpoczęciem upewnij się, że posiadasz następujące elementy:
- Serwer z systemem Ubuntu 18.04 lub 20.04.
- Uprawnienia Sudo na serwerze.
- Terminal lub dostęp SSH do serwera.
2. Aktualizacja systemu
Otwórz terminal i uruchom następujące polecenie, aby zaktualizować indeks pakietów:
sudo apt update
3. Zainstaluj Nginx
Krok 1: Zainstaluj Nginx
Uruchom następujące polecenie, aby zainstalować Nginx:
sudo apt install nginx -y
Krok 2: Uruchom i włącz Nginx
Po zakończeniu instalacji uruchom usługę Nginx i włącz jej uruchamianie przy starcie systemu:
sudo systemctl start nginx sudo systemctl enable nginx
Krok 3: Sprawdź status Nginx
Możesz sprawdzić status Nginx, aby upewnić się, że jest uruchomiony:
sudo systemctl status nginx
Możesz także otworzyć przeglądarkę internetową i przejść do adresu IP serwera. Powinieneś zobaczyć stronę powitalną Nginx.
4. Zainstaluj MySQL
Krok 1: Instalacja serwera MySQL
Uruchom następujące polecenie, aby zainstalować MySQL:
sudo apt install mysql-server -y
Krok 2: Bezpieczna instalacja MySQL
Po instalacji uruchom skrypt bezpieczeństwa, aby zwiększyć bezpieczeństwo MySQL:
sudo mysql_secure_installation
Postępuj zgodnie z instrukcjami, aby ustawić hasło roota i skonfigurować inne ustawienia zabezpieczeń.
5. Zainstaluj PHP
Krok 1: Zainstaluj PHP i wymagane rozszerzenia
Aby zainstalować PHP i wymagane rozszerzenia dla Nginx i MySQL, uruchom następujące polecenie:
sudo apt install php-fpm php-mysql -y
Krok 2: Konfiguracja procesora PHP
Otwórz plik konfiguracyjny PHP dla Nginx:
sudo nano /etc/php/7.4/fpm/php.ini
Upewnij się, że poniższe linie są ustawione (w razie potrzeby usuń komentarz):
cgi.fix_pathinfo=0
Krok 3: Uruchom ponownie usługę PHP-FPM
Po wprowadzeniu zmian w konfiguracji PHP, uruchom ponownie usługę PHP-FPM:
sudo systemctl restart php7.4-fpm
6. Konfiguracja Nginx do korzystania z PHP
Krok 1: Utwórz blok serwera dla swojej witryny
Utwórz nowy plik konfiguracyjny dla swojej witryny:
sudo nano /etc/nginx/sites-available/your_domain
Dodaj następującą konfigurację:
server {
listen 80;
server_name your_domain;
# Zastąp swoją domeną lub adresem IP serwera
root /var/www/twoja_domena;
# Katalog główny, w którym przechowywane są pliki witryny
index index.php index.html index.htm;
# Domyślne pliki ładowane podczas uzyskiwania dostępu do katalogu głównego
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
# Dostosuj wersję PHP według potrzeb
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
Krok 2: Włącz blok serwera
Utwórz dowiązanie symboliczne, aby włączyć konfigurację bloku serwera:
sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/
Krok 3: Przetestuj konfigurację Nginx
Przetestuj konfigurację Nginx pod kątem błędów składni:
sudo nginx -t
Krok 4: Uruchom ponownie Nginx
Uruchom ponownie usługę Nginx, aby zastosować zmiany:
sudo systemctl restart nginx
7. Utwórz plik informacyjny PHP
Aby przetestować instalację PHP, utwórz plik informacyjny PHP w katalogu głównym dokumentu:
sudo nano /var/www/your_domain/info.php
Dodaj następującą treść:
<?php phpinfo(); ?
8. Uzyskiwanie dostępu do aplikacji
Otwórz przeglądarkę internetową i przejdź do http://your_domain/info.php lub adresu IP serwera. Powinieneś zobaczyć stronę informacyjną PHP.
9. Wnioski
Pomyślnie zainstalowałeś stos LEMP (Linux, Nginx, MySQL, PHP) na swoim serwerze Ubuntu. Ta potężna kombinacja zapewnia solidną platformę do hostowania dynamicznych aplikacji internetowych. Pamiętaj, aby zabezpieczyć swój serwer, regularnie aktualizować oprogramowanie i zbadać dalsze konfiguracje w celu optymalizacji wydajności.