Jak zainstalować Nginx, Mariadb, PHP (stos LEMP) na Ubuntu 18.04 Bionic Beaver Linux

Jak zainstalować Nginx, Mariadb, PHP (stos LEMP) na Ubuntu 18.04 Bionic Beaver Linux

Cel

Zainstaluj serwer WWW Nginx (LEMP) na Ubuntu 18.04. W szczególności ten instalacja instalacji serwera Linux pokazuje, jak zainstalować Nginx, jak zainstalować Mariadb i jak zainstalować PHP.

Rozkłady

Ubuntu 18.04 Bionic Beaver

Wymagania

Działający instalacja Ubuntu 18.04 z uprawnieniami root

Trudność

ŚREDNI

Konwencje

  • # - Wymaga, aby podane polecenia Linux są wykonywane z uprawnieniami root bezpośrednio jako użytkownik root lub za pomocą sudo Komenda
  • $ - Wymaga, aby podane polecenia Linux zostały wykonane jako zwykły użytkownik niepewny

Wstęp

Jeśli chcesz uruchomić strony internetowe oparte na PHP w Linux, Apache nie jest twoją jedyną opcją. Nginx to szybsza, lżejsza waga, serwer WWW, który jest dość łatwy w konfiguracji i uruchamiania. Ponadto jest doskonałe w obsłudze innych zadań, takich jak równoważenie obciążenia, optymalizacja serwera i działanie jako odwrotny serwer proxy. W rzeczywistości Nginx jest najlepszym wyborem wśród startupów do hostowania aplikacji internetowych.

Ustawienie nginx na host PHP na Ubuntu 18.04 jest bardzo proste i potrzebujesz tylko kilku pakietów, aby rozpocząć.

Instalacja

Zanim będziesz mógł coś zrobić, powinieneś zainstalować wszystko, czego potrzebujesz najpierw. Jest tylko kilka potrzebnych pakietów. Plus Ubuntu 18.04 ma dość aktualne wersje wszystkiego, co dobrze w swoich domyślnych repozytoriach, więc nie musisz się martwić o śledzenie zewnętrznych repozytoriów.

$ sudo apt instaluj mariadb-server nginx php-fpm php-mysql

Podczas instalacji zostaniesz poproszony o skonfigurowanie konta administracyjnego dla Mariadb/MySQL. Wybierz bezpieczną i niezapomnianą hasło.

Powinieneś poświęcić chwilę na rozpoczęcie i włączyć PHP-FPM.

Uwaga: Zaktualizuj poniższe polecenia za pomocą zainstalowanej wersji PHP! Aby sprawdzić wersję PHP wykonać php --version Komenda.
$ sudo systemctl start php7.1-fpm $ sudo Systemctl Włącz PHP7.1-fpm


Skonfiguruj bazę danych

Teraz możesz zalogować się do nowo utworzonej bazy danych.

$ mysql -u root -p

Wprowadź hasło, które konfigurujesz podczas instalacji.

Zostaniesz upuszczony do konsoli MySQL. Możesz zrobić wszystko, czego potrzebujesz stamtąd. Przed cokolwiek zrób swoją faktyczną bazę danych.

mysql> Utwórz bazę danych „bionic_lemp”;

Następnie regularnie użyj do uruchamiania bazy danych.

mysql> Utwórz użytkownika „Site_Admin '@' localHost 'identyfikowane przez„ your_password ”;

Wreszcie, przyznaj swojemu nowemu użytkownikowi uprawnienia do faktycznego korzystania z bazy danych.

mysql> dotacja na bionic_lemp.* Do „site_admin”@„localHost”;

Kiedy skończysz, spłucz przywileje i wyjdź z konsoli.

mysql> uprawnienia spłukające; mysql> exit;

Skonfiguruj Nginx

Wszystkie konfiguracje nginx znajdują się w /etc/nginx. Są one rozbite, aby uprościć proces konfiguracji. Dwa, o które musisz się martwić nginx.conf Plik i specyficzny dla witryny, który utworzysz dla swojej witryny. Ten, włożysz do Witryny-dostępne informator.

Utwórz nowy plik dla swojej witryny w /etc/nginx/witryny-dostępne. Pełna ścieżka powinna być coś w rodzaju /etc/nginx/witryny-dostępny/Twój miejsce.

Zacznij od pliku, tworząc serwer blok. Nginx używa serwer bloki do wyznaczenia nowej instancji aplikacji internetowej do słuchania.

serwer  

Pierwsze rzeczy, które powinieneś włożyć w swoje serwer blok to Słuchać linie. Mówią Nginx, na jakim porcie słuchać.

Posłuchaj 80 domyślnych; Posłuchaj [::]: 80 domyślnie;

Będą one obejść zarówno połączenia IPv4, jak i IPv6. Usunąć domyślny Określa, że ​​jest to domyślny serwer. Możesz mieć tylko jeden Domyślnie, więc upewnij się, że wybierz odpowiedni, jeśli hostujesz wiele witryn.

Następnie powiedz Nginx, jaką nazwę domeny kojarzy się z witryną. Jeśli po prostu robisz to lokalnie, używaj Lokalny Gospodarz. W przeciwnym razie użyj nazwy domeny.

Server_name Your Site.com;

Jeśli chcesz, aby Nginx automatycznie przekierowywał żądania za pomocą www do tego samego bloku serwera. Dodaj następujący blok przed rozpoczęciem bieżącego bloku serwera.

serwer Słuchaj 80; Server_name www.Twoja strona.com; zwróć 301 http: // Twoja witryna.com $ request_uri; 


Następnie określ katalog główny witryny i to, co zostanie wymieniony plik indeksu witryny. Te linie informują Nginx, aby szukał witryny /var/www/twoja strona i zacznij od dowolnego pliku o nazwie indeks.php Lub indeks.html.

root/var/www/twoja strona/; indeks indeksu.Wskaźnik PHP.html;

Dobrym pomysłem jest również skonfigurowanie poszczególnych dzienników błędów dla każdej z twoich witryn. Podaj je też tutaj.

access_log/var/log/nginx/twój witryna.access_log; error_log/var/log/nginx/twój witryna.error_log;

Stwórz Lokalizacja blok, aby powiedzieć Nginx, aby podniósł błąd 404, gdy pliki nie są znalezione. Lokalizacja Bloki wchodzą do bloków serwerów i informuj Nginx, jak obsługiwać określone typy plików w niektórych lokalizacjach.

lokalizacja / try_files $ uri $ uri / = 404; 

Ostatnią rzeczą, którą musisz zrobić, to powiedzieć Nginx, jak obsługiwać pliki PHP. Utwórz kolejny Lokalizacja blokować do tego.

Uwaga: Zaktualizuj poniższą konfigurację za pomocą zainstalowanej wersji PHP! Aby sprawdzić wersję PHP wykonać php --version Komenda.
Lokalizacja ~ \.php $ obejmują fragmenty/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.1-fpm.skarpetka; 

To wszystko, czego potrzebujesz. Zapisz i wyjdź z pliku. Prawdopodobnie dobrze jest również stworzyć ten katalog witryny.

$ sudo/var/www/twój witryna

Daj też Nginx.

$ sudo chown -r www-data: www-data/var/www/your witryna

Teraz usuń symbol do domyślnej konfiguracji /etc/nginx/witryny z obsługą.

$ sudo rm/etc/nginx/witryny-obserwowane/domyślne

Następnie utwórz nowy symlink do konfiguracji witryny.

$ sudo ln -s/etc/nginx/witryny-dostępna/twoja strona/etc/nginx/witryny-obserwowana/

Uruchom ponownie nginx, aby zmiany w obowalniu.

$ sudo systemctl restart nginx


Przetestuj to

Najlepszym sposobem przetestowania, że ​​wszystko działa, jest umieszczenie prostego skryptu PHP w katalogu witryny i połączenie go z bazą danych. Utwórz następujący plik pod /var/www/twoja strona/indeks.php.

Strona załadowana PHP!';; $ conn = mysqli_connect („localHost”, „site_admin”, „your_password”); Jeśli(!$ conn) die ('

Błąd:

' . mysqli_connect_error ()); else echo '

Pomyślnie podłączony do bazy danych MySQL!

';; ?>

Przejdź do Twojej witryny za pomocą przeglądarki internetowej. Jeśli zobaczysz komunikat sukcesu, w którym z powodzeniem podłączyłeś się do MySQL, Twój serwer jest odpowiednio skonfigurowany.

Zamykanie myśli

Konfigurowanie Nginx zajmuje trochę czasu, ale warto. Jest nie tylko szybszy niż inne serwery internetowe, ale daje mnóstwo opcji i drobnoziarnistej kontroli. Łatwo jest również skonfigurować Nginx do hostowania aplikacji internetowych napisanych w innych językach, takich jak Python i Ruby, obok PHP. Nginx jest z łatwością jeden z najlepszych wyborów dla nowoczesnych aplikacji internetowych.

Powiązane samouczki Linux:

  • Rzeczy do zainstalowania na Ubuntu 20.04
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
  • Rzeczy do zainstalowania na Ubuntu 22.04
  • Jak zainstalować stos LEMP na Almalinux
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 22.04 JAMMY Jellyfish…
  • Ubuntu 20.04 Przewodnik
  • Ubuntu 20.04 WordPress z instalacją Apache
  • Ubuntu 20.04: WordPress z instalacją Nginx
  • Zainstaluj Arch Linux na stacji roboczej VMware
  • Jak utworzyć stos lampy na bazie Dockera za pomocą Dockera na…