Како инсталирати Нгинк, МиСКЛ и ПХП (ФЕМП) стек на ФрееБСД 12.0

ФЕМП стек, који је упоредив са ЛЕМП стеком на Линуку, је колекција софтвера отвореног кода који се обично инсталира заједно како би се омогућило ФрееБСД серверу да хостује динамичке веб странице и веб апликације. ФЕМП је акроним који означава ФрееБСД, Нгинк, МиСКЛ и ПХП.

У овом водичу ћемо применити елементе ФЕМП стека на инстанци ФрееБСД 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

Инсталирање главног Нгинк-а

Можете да инсталирате Нгинк користећи ФрееБСД менаџер пакета, pkg. Менаџер пакета вам омогућава да инсталирате већину софтвера без напора из спремишта које одржава ФрееБСД. Можете сазнати више о томе како да користите pkgовде .

Да бисте инсталирали најновији главни Нгинк, издајте следећу команду:

sudo pkg install -y nginx-devel

Проверите верзију:

nginx -v # nginx version: nginx/1.17.1

Ова команда ће инсталирати најновију верзију главне линије, која се може поуздано користити на производном серверу. Ако желите да инсталирате најновију стабилну верзију, само користите nginxпакет уместо nginx-devel.

Сада омогућите и покрените Нгинк:

sudo sysrc nginx_enable=yes sudo service nginx start

Да бисте проверили да ли је Нгинк покренут, можете покренути следећу команду:

sudo service nginx status

Као резултат, видећете нешто слично следећем:

# Output nginx is running as pid 17607.

Можете да проверите да ли је Нгинк инсталиран и да ради без грешака тако што ћете посетити јавну ИП адресу вашег сервера у вашем веб претраживачу. Идите на your_server_IP. Видећете подразумевано „Добродошли у нгинк!“ страна.

Инсталирање МиСКЛ-а

Опет, можете користити pkgда набавите и инсталирате свој софтвер.

Инсталирајте МиСКЛ користећи pkg:

sudo pkg install -y mysql80-client mysql80-server

Проверите верзију:

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 19066.

Као добра пракса, требало би да покренете mysql_secure_installationбезбедносну скрипту која ће уклонити неке несигурне подразумеване вредности и мало ограничити приступ вашем систему базе података.

sudo mysql_secure_installation

Од вас ће се тражити да поставите лозинку, а затим следе нека друга питања. Унесите јаку лозинку, а затим за остала питања притисните ENTERда изаберете подразумеване вредности.

Инсталирање ПХП 7.3

Да бисте инсталирали ПХП 7.3са pkg, покрените ову команду:

sudo pkg install -y php73

Проверите верзију.

php --version # PHP 7.3.7 (cli) (built: Jul 18 2019 01:14:37) ( NTS ) # Copyright (c) 1997-2018 The PHP Group # Zend Engine v3.3.7, Copyright (c) 1998-2018 Zend Technologies

Софт-линк php.ini-productionдо php.ini.

sudo ln -s /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команде. Већина ПХП веб апликација ће захтевати додатне модуле, па је добро знати како да их тражите.

Конфигурисање Нгинк-а за коришћење ПХП модула

Пре употребе ПХП-а, морате га конфигурисати да ради са Нгинк-ом.

Покрените sudo vim /usr/local/etc/nginx/test.confи попуните датотеку следећим садржајем:

server { listen 80; server_name SERVER_IP; # Replace with your IP or hostname root /usr/local/www/nginx-dist; index index.php index.html index.htm; location / { try_files $uri $uri/ =404; } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }

Сачувајте датотеку и изађите са :+ W+Q

Сада морамо да укључимо test.confу главну nginx.confдатотеку. Главна конфигурациона датотека за Нгинк живи под /usr/local/etc/nginxименом nginx.conf.

Покрените sudo vim /usr/local/etc/nginx/nginx.confда отворите главну конфигурациону датотеку у Виму и додајте следећу линију у http {}блок.

include test.conf;

Тестирајте Нгинк конфигурацију:

sudo nginx -t

Пошто сте направили промене конфигурације у Нгинк-у, морате поново да учитате услугу да би се оне примениле. У супротном, Нгинк ће и даље радити са ранијом конфигурацијом.

sudo service nginx reload

Тестирање ПХП обраде

Да бисте тестирали да ли је ваш систем исправно конфигурисан за ПХП, можете креирати врло основну ПХП скрипту. Назваћете ову скрипту info.php. Подразумевано rootје подешено на /usr/local/www/nginx-dist. Можете креирати info.phpдатотеку на тој локацији:

sudo vim /usr/local/www/nginx-dist/info.php

Додајте овај код у ту датотеку:

<?php phpinfo(); ?>

Идите до http://your_server_IP/ìnfo.phpи видећете следећу страницу:

Како инсталирати Нгинк, МиСКЛ и ПХП (ФЕМП) стек на ФрееБСД 12.0

Након инсталације и подешавања требало би да уклоните info.phpдатотеку како бисте избегли откривање информација о серверу јавности.

sudo rm /usr/local/www/nginx-dist/info.php

Закључак

Честитамо, успешно сте инсталирали ФЕМП стек на ваш ФрееБСД 12.0 ВПС. Сада имате више избора шта да радите следеће. Инсталирали сте платформу која ће вам омогућити да инсталирате већину врста веб локација и веб софтвера на њу.

Остави коментар

Успон машина: Примене вештачке интелигенције у стварном свету

Успон машина: Примене вештачке интелигенције у стварном свету

Вештачка интелигенција није у будућности, она је овде управо у садашњости. У овом блогу Прочитајте како су апликације вештачке интелигенције утицале на различите секторе.

ДДОС напади: кратак преглед

ДДОС напади: кратак преглед

Да ли сте и ви жртва ДДОС напада и збуњени сте методама превенције? Прочитајте овај чланак да бисте решили своја питања.

Да ли сте се икада запитали како хакери зарађују новац?

Да ли сте се икада запитали како хакери зарађују новац?

Можда сте чули да хакери зарађују много новца, али да ли сте се икада запитали како зарађују толики новац? Хајде да причамо.

Гоогле-ови револуционарни изуми који ће вам олакшати живот.

Гоогле-ови револуционарни изуми који ће вам олакшати живот.

Да ли желите да видите револуционарне изуме Гугла и како су ти изуми променили живот сваког људског бића данас? Затим читајте на блогу да бисте видели Гооглеове изуме.

Фридаи Ессентиал: Шта се десило са аутомобилима које покреће вештачка интелигенција?

Фридаи Ессентиал: Шта се десило са аутомобилима које покреће вештачка интелигенција?

Концепт самовозећих аутомобила који путују на путеве уз помоћ вештачке интелигенције је сан који већ неко време имамо. Али упркос неколико обећања, њих нема нигде. Прочитајте овај блог да сазнате више…

Технолошка сингуларност: далека будућност људске цивилизације?

Технолошка сингуларност: далека будућност људске цивилизације?

Како се наука развија великом брзином, преузимајући многе наше напоре, расте и ризик да се подвргнемо необјашњивој сингуларности. Прочитајте шта би сингуларност могла да значи за нас.

Функционалности слојева референтне архитектуре великих података

Функционалности слојева референтне архитектуре великих података

Прочитајте блог да бисте на најједноставнији начин упознали различите слојеве у архитектури великих података и њихове функционалности.

Еволуција складиштења података – Инфографика

Еволуција складиштења података – Инфографика

Методе складиштења података су се развијале можда од рођења података. Овај блог покрива еволуцију складиштења података на основу инфографике.

6 невероватних предности поседовања паметних кућних уређаја у нашим животима

6 невероватних предности поседовања паметних кућних уређаја у нашим животима

У овом дигиталном свету, паметни кућни уређаји постали су кључни део живота. Ево неколико невероватних предности паметних кућних уређаја о томе како они чине наш живот вредним живљења и једноставнијим.

Ажурирање додатка за мацОС Цаталина 10.15.4 изазива више проблема него што их решава

Ажурирање додатка за мацОС Цаталина 10.15.4 изазива више проблема него што их решава

Недавно је Аппле издао мацОС Цаталина 10.15.4 додатак за исправку проблема, али изгледа да ажурирање изазива више проблема који доводе до квара Мац машина. Прочитајте овај чланак да бисте сазнали више