Jak zainstalować stos Apache, Mariadb i PHP (FAMP) na FreeBSD

Jak zainstalować stos Apache, Mariadb i PHP (FAMP) na FreeBSD

Ten przewodnik opisuje, jak zainstalować i skonfigurować FBAMP w systemie operacyjnym FreeBSD, który jest podobny do LAMPA Ustaw na Linux. FBAMP to akronim, który oznacza zbiór oprogramowania oparty na FreeBSD OS, Apache http serwer, najpopularniejszy serwer WWW w Internecie, Mariadb system zarządzania relacyjną bazą danych (RDBMS), widelca Mysql silnik bazy danych i Php po stronie serwera.

Wymagania

  1. Świeża instalacja FreeBSD
  2. FreeBSD Początkowe konfiguracje
  3. Dostęp do konsoli bezpośredniej lub SSH w przypadku zdalnego połączenia z FreeBSD.
  4. Statyczny adres IP skonfigurowany w interfejsie sieciowym.

Krok 1: Zainstaluj Apache na FreeBSD

1. Pierwsza usługa, którą zainstalujemy Apache http serwer. Domyślnie FreeBSD oferuje wiele wersji z różnymi modułami pracy w czasie wykonywania dla Apache Web Server.

Wersje są wstępnie skompilowane w pakiet binarny i dostarczane przez Porty FreeBSD Repozytoria. Aby wyświetlić wszystkie opakowania Apache Dostarczone przez Porty, Wydaj następujące polecenie.

# ls/usr/porty/www/| Grep Apache 
Wymień pakiety Apache na freebsd

Możesz także wyszukać dostępne gotowe pakiety Apache na FreeBSD, wydając poniższe polecenie.

# PKG Wyszukaj Apache2 
Wyszukaj pakiety Apache na FreeBSD

2. Następnie zainstaluj najnowszą wersję serwera Apache HTTP ze wszystkimi wymaganymi modułami, wydając następujące polecenie.

# PKG zainstaluj apache24 
Zainstaluj Apache na FreeBSD

3. Po zainstalowaniu Server Apache w systemie, wydaj następujące polecenie, aby włączyć system demona w FreeBSD.

# sysrc apache24_enable = "tak" 

Alternatywną metodą włączania demona Apache byłoby ręczne edycja i dołączenie wiersza apache24_enable = "tak" W /etc/rc.conf Plik, jak pokazano na poniższym zrzucie ekranu.

Włącz system Apache szeroko na FreeBSD

4. Wreszcie, aby sprawdzić, czy serwer WWW działa poprawnie, uruchom demon Apache, wydając poniższe polecenie i odwiedź domyślną stronę internetową, wskazując przeglądarkę na adres IP serwera FQDN (http: // ip-orfqdn) Jak pokazano na poniższym zrzucie ekranu.

# usługa apache24 start 
Uruchom usługę Apache Sprawdź stronę Apache

Domyślny katalog Webroot Server Apache FreeBSD 11.X znajduje się w /usr/local/www/apache24/data/ ścieżka systemowa. Tam znajdziesz mały indeks.html plik, który możesz edytować jako najlepiej.

Apache Documentroot na FreeBSD

Krok 2: Zainstaluj PHP na FreeBSD

5. FreeBSD 11.X oferuje wiele wersji Php zinterpretowany język po stronie serwera pakowany w wstępnie skomplikowane pliki binarne. Aby uzyskać listę wszystkich dostępnych pakietów wersji PHP podanych przez repozytoria Portsd Ports Wydaj następujące polecenie.

# ls/usr/porty/lang/| GREP PHP 
Wymień wersje PHP w FreeBSD

Alternatywna metoda wyszukiwania wszystkich dostępnych FreeBSD PHP Wersje pakietów to uruchomienie poniższego polecenia.

# PKG Wyszukaj -O PHP 
Wyszukaj wersje PHP w FreeBSD

6. Aby wyszukać wszystkie dostępne pliki binarne dostarczone przez FreeBSD w celu uzyskania określonej wersji PHP (5 Lub 7 obecnie wersje) Uruchom poniższe polecenia. Użyj mniej polecenia, aby zawęzić i poruszać się po wyjściu.

# PKG Wyszukaj PHP5 | Mniej # PKG Wyszukaj php7 
Wymień pakiety PHP 5 na FreeBSD Wymień pakiety PHP 7 na FreeBSD

7. Aby bardziej szczegółowo określić moduły, które zapewnia niestandardowa wersja PHP, uruchom następujące polecenie, jak opisano poniżej, które wyświetlają wszystkie dostępne moduły dla PHP 7.1 wersja.

# PKG Wyszukaj PHP71 
Wymień moduły PHP na FreeBSD

8. W tym przewodniku zainstalujemy PHP 7.1 Wydanie dla naszych FBAMP stos. Wydaj następujące polecenie zainstalowania PHP z niektórymi najważniejszymi modułami wymaganymi do typowej instalacji CMS.

# PKG instalacja php71 mod_php71 php71-mbstring php71-McRypt php71-Zlib php71-curl php71-gd php71-json 

9. Następnie musimy utworzyć php.conf plik konfiguracyjny dla serwera WWW Apache w /usr/local/etc/apache24/obejmuje/ Ścieżka systemowa z następującą zawartością.

# nano/usr/local/etc/apache24/obejmuje/php.conf 

Dodaj następujące wiersze do php.conf plik.

 Indeks DirectoryIndex.Wskaźnik PHP.HTML Sethandler Application/X-HTTPD-PHP Sethandler Application/X-HTTPD-PHP-SOURCE   
Skonfiguruj PHP dla Apache na FreeBSD

10. Aby sprawdzić, czy PHP Gateway działa zgodnie z oczekiwaniami z serwerem WWW Apache, utwórz PHP informacje.php plik w /usr/local/www/apache24/data/system Ścieżka, która jest domyślną ścieżką główną dokumentu WWW Apache Server.

# echo '' | tee -a/usr/local/www/apache24/data/info.php 

Uruchom demon Apache, aby zastosować zmiany.

# Service Apache24 restart 

Następnie odwiedź następujący URI w przeglądarce, aby wyświetlić podsumowanie PHP.

http: // ip-or-fqdn/info.php 
Sprawdź moduły PHP na FreeBSD

11. Aby aktywować plik konfiguracyjny PHP INI do wydania produkcji, poniższe polecenia. Możesz zmodyfikować php.ini Plik produkcyjny w celu zmiany różnorodnych ustawień PHP w stosie FBAMP.

# cp/usr/local/etc/php.ini-produkcja/usr/local/etc/php.Produkcja in-produkcja.Bakup # ln -s/usr/local/etc/php.ini-produkcja/usr/local/etc/php.ini 

Krok 3: Zainstaluj Mariadb na FreeBSD

12. Ostatni brakujący komponent dla naszych FBAMP stos jest Mysql Serwer bazy danych. FreeBSD 11.X oferować więcej niż 1000 pakiety dla różnych baz danych.

Aby wyświetlić, do czego są dostępne komponenty Mariadb Lub Mysql bazy danych, wydaj następujące polecenia. W tym przewodniku zainstalujemy bazę danych MariaDB w MySQL (która jest obecnie własnością i opracowana przez Oracle).

# ls -al/usr/porty/bazy danych/| GREP MARIADB # PKG Wyszukaj -O Mariadb # ls -al/usr/porty/bazy danych/| grep mysql # pkg wyszukiwanie -o mysql5 
Wymień wersje mariadb na freebsd Wyszukaj wersje Mariadb na FreeBSD

13. W tym przewodniku zainstalujemy najnowszą wersję serwera bazy danych Mariadb w FreeBSD, który jest obecnie reprezentowany przez MARIADB102 Wydanie pakietu binarnego.

Uruchom następujące polecenie w celu zainstalowania serwera i klienta MarIADB oraz wymaganego PHP 7.1 Moduł potrzebny do uzyskania dostępu do bazy danych za pośrednictwem bramy serwera Apache.

# PKG instalacja MariaDB102-Server MariaDB102-CLIENT PHP71-MYSQLI 

14. Następnie włącz system Mariadb serwer i uruchom demon bazy danych, uruchamiając następujące polecenia.

# sysrc mysql_enable = "tak" # serwis mysql-server start 

15. Aby zabezpieczyć przebieg bazy danych Mysql_Secure_Instalation Skrypt. Użyj poniższego fragmentu wyjściowego skryptu do stwardnienia mariadb.

#/usr/local/bin/mysql_secure_instalation 
Przykładowy wyjście
MySQL Secure instalacja wyjście skryptu
Uwaga: Uruchomienie wszystkich części tego skryptu jest zalecane dla wszystkich serwerów MariaDB w użyciu produkcji! Przeczytaj uważnie każdy krok! Aby zalogować się do Mariadb, aby go zabezpieczyć, potrzebujemy bieżącego hasła dla użytkownika root. Jeśli właśnie zainstalowałeś Mariadb i nie ustawiłeś jeszcze hasła rocznego, hasło będzie puste, więc powinieneś po prostu naciśnij Enter tutaj. Wprowadź bieżące hasło dla root (wprowadź dla brak): ok, pomyślnie używane hasło, poruszanie się… Ustawienie hasła roota zapewnia, że ​​nikt nie może zalogować się do użytkownika root Mariadb bez odpowiedniego autoryzacji. Ustaw hasło roota? [T/N] y Nowe hasło: Ponownie wprowadź nowe hasło: hasło pomyślnie zaktualizowane! Tabele przywilejów przeładowywania… sukces! Domyślnie instalacja MariaDB ma anonimowego użytkownika, umożliwiając każdemu zalogowanie się do MariaDB bez konieczności tworzenia dla nich konta użytkownika. Jest to przeznaczone tylko do testowania i sprawienie, aby instalacja stała się nieco gładsza. Powinieneś je usunąć przed przejściem do środowiska produkcyjnego. Usuń anonimowych użytkowników? [T/N] y… Powodzenie! Zwykle root powinien mieć możliwość łączenia się tylko z „localhost”. Zapewnia to, że ktoś nie może odgadnąć hasła głównego z sieci. Zdalnie odrzucaj logowanie root? [T/N] y… Powodzenie! Domyślnie Mariadb jest wyposażony w bazę danych o nazwie „Test”, do którego każdy może uzyskać dostęp. Jest to również przeznaczone tylko do testowania i należy je usunąć przed przejściem do środowiska produkcyjnego. Usuń testową bazę danych i dostęp do niej? [T/N] y - Zrzucanie testu bazy danych… sukces! - Usuwanie uprawnień w testowej bazie danych… sukces! Ponowne załadowanie tabel uprzywilejowanych zapewni, że wszystkie wprowadzone do tej pory zmiany pojawią się natychmiast. Załaduj teraz tabele uprawnień? [T/N] y… Powodzenie! Sprzątanie… wszystko gotowe! Jeśli ukończyłeś wszystkie powyższe kroki, instalacja Mariadb powinna być teraz bezpieczna. Dzięki za użycie mariadb! 

16. Domyślnie demon MariaDB słucha połączeń sieciowych poza lokalhost na porcie 3306/TCP. Uruchom Netstat, LSOF lub Sockstat polecenie uzyskania stanu gniazda Mariadb. Ta konfiguracja jest niebezpieczna i ujawnia usługę na zewnętrzne ataki sieciowe.

# lsof -i4 -i6 # sockstat -4 -6 
Sprawdź port Mariadb

17. Jeśli nie potrzebujesz zdalnego dostępu do MariaDB, upewnij się, że demon Mariadb słucha tylko LocalHost, wydając poniższe polecenie. Następnie ponownie uruchom usług mariadb, aby zastosować zmiany.

# sysrc mysql_args = "-Bind-Address = 127.0.0.1 " # usługa mysql-server restart lub #/usr/local/etc/rc.D/mysql-server restart 

18. Ponownie uruchom Netstat, LSOF lub Sockstat polecenie, aby wymienić gniazdo sieciowe Mariadb. Gniazdo powinno teraz wiązać i słuchać Localhost, jak pokazano na poniższym obrazku.

# lsof -i4 | GREP MYSQL # NETSTAT -an | GREP 3306 # SOCKSTAT -4 | GREP 3306 
Sprawdź słuchanie Mariadb na Localhost

19. Aby przetestować łączność bazy danych MariaDB z wydania konsoli następujące polecenie. Wpisz hasło root MySQL w monicie, a lista domyślnych baz danych powinna być wyświetlana na ekranie konsoli, jak pokazano na poniższym obrazku.

# mysql -u root -p -e „pokaż bazy danych” 
Wymień bazy danych Mysql

To wszystko! Pomyślnie zainstalowałeś serwer WWW Apache z bazą danych Mariadb i interpretera PHP w FreeBSD. Możesz teraz zacząć wdrażać witrynę WordPress w krótkim czasie.

W następnym samouczku omówimy kilka zaawansowanych tematów FPBAMP, takich jak włączenie i tworzenie hostów wirtualnych Apache, włącz moduł przepisywania wymagany przez .Htaccess Plik do prawidłowego funkcjonowania i sposobu zabezpieczenia połączeń Apache za pomocą certyfikatu podpisanego lub bezpłatnego certyfikatu oferowanego przez Entety Let's Encrypt.