Jak skonfigurować serwer lamp na Ubuntu 20.04 Focal Fossa

Jak skonfigurować serwer lamp na Ubuntu 20.04 Focal Fossa

Lampa to konwencjonalny model stosów usług internetowych. Komponenty, z których zbudowana jest lampa, są open source i obejmują: system operacyjny Linux, serwer Apache HTTP, system zarządzania relacyjnymi bazą danych MySQL i język programowania PHP. W tym krótkim samouczku będziemy konfigurować podstawowy serwer lamp na Ubuntu 20.04 Focal Fossa.

Możesz być również zainteresowany naszym artykułem na temat utworzenia stosu lampy na bazie Dockera na Ubuntu 20.04.

W tym samouczku nauczysz się:

  • Jak zainstalować serwer lamp na Ubuntu 20.04.
  • Jak otworzyć port zapory, aby umożliwić ruch przychodzący HTTP i HTTPS.
  • Jak połączyć się z bazą danych MySQL za pomocą skryptu PHP.
Konfiguracja serwera lampy na Ubuntu 20.04 Focal Fossa

Zastosowane wymagania i konwencje oprogramowania

Wymagania oprogramowania i konwencje linii poleceń Linux
Kategoria Wymagania, konwencje lub wersja oprogramowania
System Zainstalowany Ubuntu 20.04 lub zaktualizowane Ubuntu 20.04 Focal Fossa
Oprogramowanie Nie dotyczy
Inny Uprzywilejowany dostęp do systemu Linux jako root lub za pośrednictwem sudo Komenda.
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

Konfigurowanie serwera lampy na Ubuntu 20.04 Instrukcje krok po kroku

  1. Możesz zainstalować stos serwera lampy za pomocą trafny polecenie i w tym absolutna minimalna liczba pakietów:
    $ sudo apt Zainstaluj php-mysql libapache2-mod-php mysql-server 

    lub za pomocą Zadania Komenda:

    $ sudo tasksel instal instaluj serwer lampy 


  2. Włącz MySQL/Mariadb i Apache, aby zacząć po ponownym uruchomieniu:
    $ sudo systemctl enable --now mysql $ sudo systemctl enable --now apache2 
  3. Skonfiguruj bazę danych MySQL/Mariadb. Najpierw wykonaj bezpieczną instalację:
    $ sudo mysql_secure_instalation 

    Następnie przetestujmy połączenie z bazą danych MySQL programowo za pomocą skryptu PHP. Tylko do celów testowych będziemy używać NISKI Polityka hasła. Połącz się z MySQL z wiersza poleceń:

    root@linuxconfig: ~# mysql -u root -p 

    W następnych krokach utworzymy przykładową bazę danych i użytkownika. Najpierw potwierdź zasady hasła, a następnie utwórz nowego użytkownika Admin i przyznać użytkownikowi pełne uprawnienia nowemu Linuxconfig Baza danych:

    mysql> pokaż zmienne takie jak „validate_password%”; +----------------------------------+-------+| Zmienna_nazwa | Wartość | +----------------------------------+-------+| VALIDATE_PASSWORD.Check_user_name | Na | |. VALIDATE_PASSWORD.Dictionary_file | |. |. VALIDATE_PASSWORD.długość | 8 | |. VALIDATE_PASSWORD.mixed_case_count | 1 | |. VALIDATE_PASSWORD.Number_count | 1 | |. VALIDATE_PASSWORD.Polityka | Niski | |. VALIDATE_PASSWORD.Special_Char_Count | 1 | +----------------------------------+-------+7 wierszy w zestawie (0.01 s) MySQL> Utwórz bazę danych LinuxConfig; MySQL> Utwórz użytkownika „admin”@„localHost” zidentyfikowane z mysql_native_password przez „yourPass”; mysql> dotacja na LinuxConfig.* Do „admin”@„localHost”; mysql> uprawnienia spłukające; 

    Następnie utwórz następujący skrypt PHP o nazwie EG. /var/www/html/php-mysql-connect.php Aby połączyć się z lokalną bazą danych MySQL:

    connect_error) die („błąd: nie można się podłączyć:” . $ conn-> connect_error);  echo 'podłączony do bazy danych.
    ';; $ conn-> close (); ?>

    Uczyń skrypt wykonywalny:

    $ sudo chmod +x/var/www/html/php-mysql-connect.php 

    Po przygotowaniu, otwórz i przejdź do przeglądarki do http: // localhost/php-mysql-connect.php:

    Używanie skryptu PHP do łączenia się z bazą danych MySQL na Ubuntu 20.04


  4. Opcjonalnie włącz Https Aby zapewnić bezpieczne połączenie z naszym serwerem Apache. Należy pamiętać, że będziemy używać domyślnych ustawień Apache2 z domyślnym samowystarczalnym certyfikatem SSL: Domyślne certyfikaty SSL
    Należy pamiętać, że używamy domyślnych certyfikatów SSL. Zależy Ci na przesłaniu certyfikatów SSL lub użyciu Let's Encrypt, aby wygenerować nowe certyfikaty dla Twojej domeny (.
    $ sudo a2ensite default-ssl $ sudo a2enmod ssl $ sudo systemctl restart apache2 

    Następnie przejdź do https: // localhost/ za pomocą przeglądarki.

  5. Na koniec otwórz port 80 i 443 zapory, aby umożliwić zdalny ruch przychodzący:
    $ sudo ufw zezwalaj na „apache pełne” 

    Możesz teraz utworzyć następujący skrypt /var/www/html/phpinfo.php z poniższą zawartością, aby zobaczyć ustawienia konfiguracji lampy i włączone moduły:

     

    Nie zapomnij, aby skrypt PHP był wykonywany:

    chmod +x/var/www/html/phpinfo.php 

    Użyj następującego adresu URL, aby połączyć się z phpinfo.php scenariusz: http: // relaver-or-ip/phpinfo.php.

Rozwiązywanie problemów

Serwer żądany metoda uwierzytelniania nieznana klientowi

Ten błąd oznacza, że ​​nie możesz uwierzytelnić swojego użytkownika za pomocą hasła. Ta metoda musi być specjalnie włączona. Spróbuj zaktualizować ustawienia użytkownika MySQL, aby wykonać poniższe polecenie i edytować nazwę użytkownika i hasło na poniższym poleceniu MySQL, aby pasować do twojego środowiska:

MySQL> Zmień użytkownika „nazwa użytkownika”@„localHost” zidentyfikowane z mysql_native_password przez „hasło”; 


Błąd 1819 (HY000): Twoje hasło nie spełnia aktualnych wymagań zasad

Przejrzyj zasady hasła i upewnij się, że podane hasło jest zgodne z wymaganiami:

mysql> pokaż zmienne takie jak „validate_password%”; +----------------------------------+--------+| Zmienna_nazwa | Wartość | +----------------------------------+--------+| VALIDATE_PASSWORD.Check_user_name | Na | |. VALIDATE_PASSWORD.Dictionary_file | |. |. VALIDATE_PASSWORD.długość | 8 | |. VALIDATE_PASSWORD.mixed_case_count | 1 | |. VALIDATE_PASSWORD.Number_count | 1 | |. VALIDATE_PASSWORD.Polityka | Medium | |. VALIDATE_PASSWORD.Special_Char_Count | 1 | +--------------------------------------+--------+ 

Alternatywnie przejdź do innej zasady haseł. Na przykład poniższe polecenie przejdzie na NISKI Polityka hasła:

MySQL> Ustaw globalny VALIDATE_PASSWORD.polityka = niska; 

Powiązane samouczki Linux:

  • Rzeczy do zainstalowania na Ubuntu 20.04
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
  • Ubuntu 20.04 WordPress z instalacją Apache
  • Jak utworzyć stos lampy na bazie Dockera za pomocą Dockera na…
  • Zainstaluj MySQL na Ubuntu 20.04 LTS Linux
  • Jak zainstalować MySQL na Almalinux
  • Ubuntu 20.04 sztuczki i rzeczy, których możesz nie wiedzieć
  • Ubuntu 20.04: WordPress z instalacją Nginx
  • Instalacja OpenLitespeed WordPress
  • Ubuntu 20.04 Przewodnik