Увод
ФАМП стек, који је упоредив са ЛАМП стеком на Линуку, је колекција софтвера отвореног кода који се обично инсталира заједно како би се омогућило ФрееБСД серверу да угости динамичке веб странице и веб апликације. ФАМП је акроним који означава Ф рееБСД (оперативни систем), А пацхе (ХТТП сервер), М иСКЛ (сервер базе података) и П ХП (програмски језик за обраду динамичког ПХП садржаја).
У овом водичу ћемо применити елементе ФАМП стека на инстанци ФрееБСД 12.0 Вултр користећи pkg, ФрееБСД менаџер пакета.
Захтеви
Пре него што започнете овај водич, требаће вам следеће:
- ФрееБСД 12.0 ВПС.
- Корисник са роот привилегијама или
sudoкорисник да изврши промене конфигурације.
- Препоручује се основно познавање ФрееБСД система и интерфејса командне линије.
Пре него што почнете
Проверите верзију ФрееБСД-а.
uname -ro # FreeBSD 12.0-RELEASE-p6
Уверите се да је ваш ФрееБСД систем ажуриран.
freebsd-update fetch install pkg update && pkg upgrade -y
Инсталирајте потребне пакете.
pkg install -y sudo vim bash curl
Креирајте нови кориснички налог са жељеним корисничким именом. Користимо johndoe.
adduser # Username: johndoe # Full name: John Doe # Uid (Leave empty for default): <Enter> # Login group [johndoe]: <Enter> # Login group is johndoe. Invite johndoe into other groups? []: wheel # Login class [default]: <Enter> # Shell (sh csh tcsh nologin) [sh]: bash # Home directory [/home/johndoe]: <Enter> # Home directory permissions (Leave empty for default): <Enter> # Use password-based authentication? [yes]: <Enter> # Use an empty password? (yes/no) [no]: <Enter> # Use a random password? (yes/no) [no]: <Enter> # Enter password: your_secure_password # Enter password again: your_secure_password # Lock out the account after creation? [no]: <Enter> # OK? (yes/no): yes # Add another user? (yes/no): no # Goodbye!
Покрените visudoкоманду и скините коментар са %wheel ALL=(ALL) ALLлиније да бисте омогућили члановима wheelгрупе да изврше било коју команду.
visudo # Uncomment by removing hash (#) sign # %wheel ALL=(ALL) ALL
Сада се пребаците на свог новокреираног корисника са su:
su - johndoe
НАПОМЕНА: Замените johndoeсвојим корисничким именом.
Подесите временску зону:
sudo tzsetup
Корак 1 - Инсталирање Апацхе-а
Апацхе веб сервер је тренутно један од најпопуларнијих веб сервера на свету. То је одличан избор за хостовање веб странице.
Можете инсталирати Апацхе користећи ФрееБСД менаџер пакета, pkg. Менаџер пакета вам омогућава да инсталирате већину софтвера без напора из спремишта које одржава ФрееБСД. Можете сазнати више о томе како да користите pkgовде .
Да бисте инсталирали Апацхе, издајте следећу команду:
sudo pkg install -y apache24
Проверите верзију:
httpd -v # Server version: Apache/2.4.39 (FreeBSD)
Сада омогућите и покрените Апацхе:
sudo sysrc apache24_enable=yes sudo service apache24 start
Да бисте проверили да ли је Апацхе покренут, можете покренути следећу команду:
sudo service apache24 status
Као резултат, видећете нешто слично:
# Output apache24 is running as pid 17772.
Можете да проверите да ли је Апацхе инсталиран и да ради без грешака тако што ћете посетити јавну ИП адресу вашег сервера у вашем веб претраживачу. Идите на http://your_server_IP. Видећете подразумевану страницу „ Ради! “ Апацхе страницу.
Корак 2 — Инсталирање МиСКЛ 8.0
Сада када је ваш веб сервер покренут и ради, време је да инсталирате МиСКЛ, систем за управљање релационим базама података. МиСКЛ сервер ће организовати и обезбедити приступ базама података где ваш сервер може да чува информације.
Опет, можете користити pkgда набавите и инсталирате свој софтвер.
Да бисте инсталирали МиСКЛ 8.0користећи pkg, користите ову команду:
sudo pkg install -y mysql80-client mysql80-server
Ова команда ће инсталирати најновију верзију МиСКЛ клијента и сервера, који је тренутно 8.x.x.
Проверите верзију:
mysql --version # mysql Ver 8.0.16 for FreeBSD12.0 on amd64 (Source distribution)
Сада омогућите и покрените МиСКЛ:
sudo sysrc mysql_enable=yes sudo service mysql-server start
Да бисте проверили да ли је МиСКЛ покренут, можете покренути следећу команду:
sudo service mysql-server status
Видећете нешто слично следећем:
# Output mysql is running as pid 19171.
Као добра пракса, можете покренути mysql_secure_installationбезбедносну скрипту која ће уклонити неке несигурне подразумеване вредности и мало ограничити приступ вашем систему базе података.
sudo mysql_secure_installation
Од вас ће се тражити да поставите лозинку, а затим следе нека друга питања. Унесите јаку лозинку, а затим за остала питања притисните ENTERда изаберете подразумеване вредности.
Корак 3 — Инсталирање ПХП 7.3
ПХП је скриптни језик на страни сервера дизајниран за веб развој. ПХП је незаобилазна компонента ФАМП стека. Такође, Питхон или Перл се обично користе уместо ПХП-а. Међутим, најчешће се користи ПХП као најпопуларнија опција. Заједно са базом података, он ће вашим веб локацијама или апликацијама дати динамичко понашање.
Још једном искористите pkgсистем за инсталирање ПХП компоненти.
Да б��сте инсталирали ПХП 7.3 са pkg, покрените ову команду:
sudo pkg install -y php73 php73-mysqli mod_php73
Ово инсталира пакете php73, mod_php73, и php73-mysqli.
Проверите верзију.
php --version # PHP 7.3.7 (cli) (built: Jul 25 2019 01:28:53) ( NTS ) # Copyright (c) 1997-2018 The PHP Group # Zend Engine v3.3.7, Copyright (c) 1998-2018 Zend Technologies
Копирајте узорак ПХП конфигурационе датотеке на своје место са овом командом:
sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini
Сада омогућите и покрените ПХП-ФПМ:
sudo sysrc php_fpm_enable=yes sudo service php-fpm start
Да бисте проверили да ли је ПХП-ФПМ покренут, можете покренути следећу команду:
sudo service php-fpm status
Као резултат, видећете нешто слично:
# Output php_fpm is running as pid 23005.
Инсталирање ПХП модула (опционо)
Да бисте побољшали функционалност ПХП-а, опционо можете инсталирати неке додатне модуле.
Да бисте видели тренутно састављене у ПХП модулима, можете покренути ово:
php -m # [PHP Modules] # Core # date # libxml # mysqlnd # pcre # Reflection # SPL # standard # [Zend Modules]
Да бисте тражили доступне ПХП модуле, можете користити ову команду:
pkg search ^php73-*
Резултати ће углавном бити ПХП 7.3 модули које можете да инсталирате:
# Output # php73-7.3.7 PHP Scripting Language # php73-Ice37-3.7.2 Modern alternative to object middleware such as CORBA/COM/DCOM/COM+ # php73-aphpbreakdown-2.2.2 Code-Analyzer for PHP for Compatibility Check-UP # php73-aphpunit-1.8 Testing framework for unit tests # php73-bcmath-7.3.7 The bcmath shared extension for php # php73-brotli-0.7.0 Brotli extension for PHP # php73-bsdconv-11.5.0 PHP wrapper for bsdconv # php73-bz2-7.3.7 The bz2 shared extension for php # php73-calendar-7.3.7 The calendar shared extension for php # php73-composer-1.8.6 Dependency Manager for PHP # php73-ctype-7.3.7 The ctype shared extension for php # php73-curl-7.3.7 The curl shared extension for php # . . .
Ако након истраживања одлучите да треба да инсталирате пакет, то можете учинити помоћу pkg installкоманде. Већина ПХП веб апликација ће захтевати додатне модуле, па је добро знати како да их тражите.
Корак 4 — Конфигурисање Апацхе-а да користи ПХП модул
Пре употребе ПХП-а, морате га конфигурисати да ради са Апацхе-ом.
Покрените sudo vi /usr/local/etc/apache24/modules.d/001_mod-php.confи попуните датотеку са садржајем испод:
<IfModule dir_module> DirectoryIndex index.php index.html <FilesMatch "\.php$"> SetHandler application/x-httpd-php </FilesMatch> <FilesMatch "\.phps$"> SetHandler application/x-httpd-php-source </FilesMatch> </IfModule>
Сачувајте датотеку и изађите са :+ W+Q
Проверите конфигурацију Апацхе-а.
sudo apachectl configtest
Пошто сте извршили промене конфигурације у Апацхе-у, морате поново да учитате услугу да би се оне примениле. У супротном, Апацхе ће и даље радити са ранијом конфигурацијом.
sudo apachectl restart
Корак 5 — Тестирање ПХП обраде
Да бисте тестирали да ли је ваш систем исправно конфигурисан за ПХП, можете креирати врло основну ПХП скрипту. Назваћете ову скрипту info.php. Подразумевано DocumentRootје подешено на /usr/local/www/apache24/data. Можете креирати info.phpдатотеку на тој локацији тако што ћете откуцати:
sudo vim /usr/local/www/apache24/data/info.php
Додајте овај код у ту датотеку:
<?php phpinfo(); ?>
Идите до http://your_server_IP/info.phpи видећете следећу страницу:

Након инсталације и подешавања ФАМП стека, требало би да уклоните info.phpдатотеку како бисте избегли откривање информација о серверу јавности.
sudo rm /usr/local/www/apache24/data/info.php
Закључак
Честитамо, успешно сте инсталирали ФАМП стек на ваш ФрееБСД 12.0 ВПС. Сада имате више избора шта да радите следеће. Инсталирали сте платформу која ће вам омогућити да инсталирате већину врста веб локација и веб софтвера на њу.