Kako instalirati Nginx, MySQL i PHP (FEMP) stog na FreeBSD 12.0

FEMP stog, koji je usporediv s LEMP stogom na Linuxu, zbirka je softvera otvorenog koda koji se obično instalira zajedno kako bi se omogućilo FreeBSD poslužitelju da ugošćuje dinamičke web stranice i web aplikacije. FEMP je akronim koji označava FreeBSD, Nginx, MySQL i PHP.

U ovom vodiču ćemo implementirati elemente FEMP stoga na instancu FreeBSD 12.0 Vultr koristeći pkg, FreeBSD upravitelj paketa.

Zahtjevi

Prije nego što započnete ovaj vodič, trebat će vam sljedeće:

  • FreeBSD 12.0 VPS.
  • Korisnik s korijenskim privilegijama ili sudokorisnik za promjenu konfiguracije.
  • Preporuča se osnovno poznavanje sustava FreeBSD i sučelja naredbenog retka.

Prije nego što počneš

Provjerite verziju FreeBSD-a.

uname -ro # FreeBSD 12.0-RELEASE-p6

Provjerite je li vaš FreeBSD sustav ažuriran.

freebsd-update fetch install pkg update && pkg upgrade -y

Instalirajte potrebne pakete.

pkg install -y sudo vim bash curl

Izradite novi korisnički račun sa svojim željenim korisničkim imenom. Koristimo 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!

Pokrenite visudonaredbu i dekomentirajte %wheel ALL=(ALL) ALLredak kako biste omogućili članovima wheelgrupe da izvrše bilo koju naredbu.

visudo # Uncomment by removing hash (#) sign # %wheel ALL=(ALL) ALL

Sada se prebacite na svog novostvorenog korisnika pomoću su:

su - johndoe

NAPOMENA: Zamijenite johndoesvojim korisničkim imenom.

Postavite vremensku zonu:

sudo tzsetup

Instalacija glavnog Nginxa

Možete instalirati Nginx koristeći FreeBSD-ov upravitelj paketa, pkg. Upravitelj paketa omogućuje vam da instalirate većinu softvera bez napora iz spremišta koje održava FreeBSD. Više o tome kako koristitipkg možete saznati ovdje .

Da biste instalirali najnoviji mainline Nginx, izdajte sljedeću naredbu:

sudo pkg install -y nginx-devel

Provjerite verziju:

nginx -v # nginx version: nginx/1.17.1

Ova naredba će instalirati najnoviju glavnu verziju, koja se može pouzdano koristiti na proizvodnom poslužitelju. Ako želite instalirati najnovije stabilno izdanje, samo upotrijebite nginxpaket umjesto nginx-devel.

Sada omogućite i pokrenite Nginx:

sudo sysrc nginx_enable=yes sudo service nginx start

Da biste provjerili je li Nginx pokrenut, možete pokrenuti sljedeću naredbu:

sudo service nginx status

Kao rezultat, vidjet ćete nešto slično sljedećem:

# Output nginx is running as pid 17607.

Možete provjeriti da je Nginx instaliran i da radi bez grešaka posjetom javne IP adrese vašeg poslužitelja u vašem web pregledniku. Idite na your_server_IP. Vidjet ćete zadani "Dobrodošli u nginx!" stranica.

Instalacija MySQL-a

Opet, možete koristiti pkgza nabavu i instalaciju svog softvera.

Instalirajte MySQL koristeći pkg:

sudo pkg install -y mysql80-client mysql80-server

Provjerite verziju:

mysql --version # mysql Ver 8.0.16 for FreeBSD12.0 on amd64 (Source distribution)

Sada omogućite i pokrenite MySQL:

sudo sysrc mysql_enable=yes sudo service mysql-server start

Da biste provjerili je li MySQL pokrenut, možete pokrenuti sljedeću naredbu:

sudo service mysql-server status

Vidjet ćete nešto slično sljedećem:

# Output mysql is running as pid 19066.

Kao dobra praksa, trebali biste pokrenuti mysql_secure_installationsigurnosnu skriptu koja će ukloniti neke nesigurne zadane postavke i malo ograničiti pristup vašem sustavu baze podataka.

sudo mysql_secure_installation

Od vas će se tražiti da postavite lozinku, nakon čega slijede neka druga pitanja. Unesite jaku lozinku, a zatim za ostala pitanja pritisnite ENTERza odabir zadanih postavki.

Instalacija PHP-a 7.3

Da biste instalirali PHP 7.3s pkg, pokrenite ovu naredbu:

sudo pkg install -y php73

Provjerite verziju.

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

Soft-link php.ini-productionna php.ini.

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Sada omogućite i pokrenite PHP-FPM:

sudo sysrc php_fpm_enable=yes sudo service php-fpm start

Da biste provjerili je li PHP-FPM pokrenut, možete pokrenuti sljedeću naredbu:

sudo service php-fpm status

Kao rezultat, vidjet ćete nešto slično:

# Output php_fpm is running as pid 23005.

Instaliranje PHP modula (izborno)

Kako biste poboljšali funkcionalnost PHP-a, po želji možete instalirati neke dodatne module.

Da biste vidjeli trenutno sastavljene u PHP modulima, možete pokrenuti ovo:

php -m # [PHP Modules] # Core # date # libxml # mysqlnd # pcre # Reflection # SPL # standard # [Zend Modules]

Za traženje dostupnih PHP modula, možete koristiti ovu naredbu:

pkg search ^php73-*

Rezultati će uglavnom biti PHP 7.3 moduli koje možete instalirati:

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

Ako nakon istraživanja odlučite da trebate instalirati paket, to možete učiniti pomoću pkg installnaredbe. Većina PHP web aplikacija zahtijevat će dodatne module, pa je dobro znati kako ih tražiti.

Konfiguriranje Nginxa za korištenje PHP modula

Prije korištenja PHP-a, morate ga konfigurirati za rad s Nginxom.

Pokrenite sudo vim /usr/local/etc/nginx/test.confi popunite datoteku sljedećim sadržajem:

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; } }

Spremite datoteku i izađite s :+ W+Q

Sada moramo uključiti test.confu glavnu nginx.confdatoteku. Glavna konfiguracijska datoteka za Nginx živi pod /usr/local/etc/nginximenom nginx.conf.

Pokrenite sudo vim /usr/local/etc/nginx/nginx.confda otvorite glavnu konfiguracijsku datoteku u Vimu i dodajte sljedeći redak u http {}blok.

include test.conf;

Testirajte Nginx konfiguraciju:

sudo nginx -t

Budući da ste napravili promjene konfiguracije u Nginxu, morate ponovno učitati uslugu da bi se one primijenile. Inače će Nginx i dalje raditi s ranijom konfiguracijom.

sudo service nginx reload

Testiranje PHP obrade

Kako biste provjerili je li vaš sustav ispravno konfiguriran za PHP, možete stvoriti vrlo osnovnu PHP skriptu. Nazvat ćete ovu skriptu info.php. Prema zadanim postavkama, vrijednost rootje postavljena na /usr/local/www/nginx-dist. Možete stvoriti info.phpdatoteku na tom mjestu:

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

Dodajte ovaj kod toj datoteci:

<?php phpinfo(); ?>

Idite na http://your_server_IP/ìnfo.phpi vidjet ćete sljedeću stranicu:

Kako instalirati Nginx, MySQL i PHP (FEMP) stog na FreeBSD 12.0

Nakon instalacije i postavljanja trebate ukloniti info.phpdatoteku kako biste izbjegli otkrivanje informacija o poslužitelju javnosti.

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

Zaključak

Čestitamo, uspješno ste instalirali FEMP stog na svoj FreeBSD 12.0 VPS. Sada imate više izbora što učiniti sljedeće. Instalirali ste platformu koja će vam omogućiti da instalirate većinu vrsta web stranica i web softvera na nju.


Kako instalirati Tiny Tiny RSS Reader na FreeBSD 11 FAMP VPS

Kako instalirati Tiny Tiny RSS Reader na FreeBSD 11 FAMP VPS

Korištenje drugog sustava? Tiny Tiny RSS Reader je besplatan čitač i agregator vijesti otvorenog koda koji se hostira na webu (RSS/Atom), dizajniran za

Kako instalirati Wiki.js na FreeBSD 11

Kako instalirati Wiki.js na FreeBSD 11

Korištenje drugog sustava? Wiki.js je besplatna i moderna wiki aplikacija otvorenog koda izgrađena na Node.js, MongoDB, Git i Markdown. Izvorni kod Wiki.js je javni

Kako instalirati Pagekit 1.0 CMS na FreeBSD 11 FAMP VPS

Kako instalirati Pagekit 1.0 CMS na FreeBSD 11 FAMP VPS

Korištenje drugog sustava? Pagekit 1.0 CMS je prekrasan, modularan, proširiv i lagan, besplatan i otvoreni sustav za upravljanje sadržajem (CMS) s

Kako instalirati MODX Revolution na FreeBSD 11 FAMP VPS

Kako instalirati MODX Revolution na FreeBSD 11 FAMP VPS

Korištenje drugog sustava? MODX Revolution je brz, fleksibilan, skalabilan, open source, Enterprise-grade Content Management System (CMS) napisan u PHP-u. To i

Postavljanje OpenBSD 5.5 64-bit

Postavljanje OpenBSD 5.5 64-bit

Ovaj članak vas vodi kroz postavljanje OpenBSD 5.5 (64-bit) na KVM s Vultr VPS. Korak 1. Prijavite se na Vultr upravljačku ploču. Korak 2. Kliknite na UPOTREBU

Kako instalirati osTicket na FreeBSD 12

Kako instalirati osTicket na FreeBSD 12

Korištenje drugog sustava? osTicket je sustav za kupnju ulaznica otvorenog koda za korisničku podršku. OsTicket izvorni kod je javno hostiran na Githubu. U ovom vodiču

Kako instalirati Flarum Forum na FreeBSD 12

Kako instalirati Flarum Forum na FreeBSD 12

Korištenje drugog sustava? Flarum je besplatan forumski softver sljedeće generacije otvorenog koda koji čini internetsku raspravu zabavnom. Izvorni kod za Flarum se nalazi o

Kako omogućiti TLS 1.3 u Nginxu na FreeBSD 12

Kako omogućiti TLS 1.3 u Nginxu na FreeBSD 12

Korištenje drugog sustava? TLS 1.3 verzija je protokola Transport Layer Security (TLS) koji je objavljen 2018. kao predloženi standard u RFC 8446

Instalirajte WordPress na OpenBSD 6.2

Instalirajte WordPress na OpenBSD 6.2

Uvod WordPress je dominantni sustav za upravljanje sadržajem na internetu. Pokreće sve, od blogova do složenih web stranica s dinamičkim sadržajem

Kako instalirati Subrion 4.1 CMS na FreeBSD 11 FAMP VPS

Kako instalirati Subrion 4.1 CMS na FreeBSD 11 FAMP VPS

Korištenje drugog sustava? Subrion 4.1 CMS je moćan i fleksibilan sustav upravljanja sadržajem otvorenog koda (CMS) koji donosi intuitivan i jasan sadržaj

Kako konfigurirati DJBDNS na FreeBSD-u

Kako konfigurirati DJBDNS na FreeBSD-u

Ovaj vodič će vam pokazati kako konfigurirati DNS uslugu koju je lako održavati, lako konfigurirati i koja je općenito sigurnija od klasičnog BIN-a

Kako instalirati Nginx, MySQL i PHP (FEMP) stog na FreeBSD 12.0

Kako instalirati Nginx, MySQL i PHP (FEMP) stog na FreeBSD 12.0

FEMP stog, koji je usporediv s LEMP stogom na Linuxu, zbirka je softvera otvorenog koda koji se obično instalira zajedno kako bi omogućio FreeBS

Instalacija MongoDB-a na FreeBSD 10

Instalacija MongoDB-a na FreeBSD 10

MongoDB je NoSQL baza podataka svjetske klase koja se često koristi u novijim web aplikacijama. Pruža upite visoke performanse, dijeljenje i replikaciju

Kako instalirati Monicu na FreeBSD 12

Kako instalirati Monicu na FreeBSD 12

Korištenje drugog sustava? Monica je sustav upravljanja osobnim odnosima otvorenog koda. Zamislite to kao CRM (popularni alat koji koriste prodajni timovi u th

OpenBSD kao rješenje za e-trgovinu s PrestaShopom i Apacheom

OpenBSD kao rješenje za e-trgovinu s PrestaShopom i Apacheom

Uvod Ovaj vodič demonstrira OpenBSD kao rješenje za e-trgovinu koristeći PrestaShop i Apache. Apache je potreban jer PrestaShop ima složeni UR

Instalacija Fork CMS-a na FreeBSD 12

Instalacija Fork CMS-a na FreeBSD 12

Korištenje drugog sustava? Fork je CMS otvorenog koda napisan u PHP-u. Izvorni kod Forks nalazi se na GitHubu. Ovaj vodič će vam pokazati kako instalirati Fork CM

Kako instalirati Directus 6.4 CMS na FreeBSD 11 FAMP VPS

Kako instalirati Directus 6.4 CMS na FreeBSD 11 FAMP VPS

Korištenje drugog sustava? Directus 6.4 CMS je moćan i fleksibilan, besplatan i otvoreni izvor Headless Content Management System (CMS) koji pruža programerima

Poboljšanje sigurnosti za FreeBSD pomoću IPFW i SSHGuard

Poboljšanje sigurnosti za FreeBSD pomoću IPFW i SSHGuard

VPS poslužitelji su često na meti uljeza. Uobičajena vrsta napada pojavljuje se u zapisnicima sustava kao stotine neovlaštenih pokušaja prijave ssh-om. Postavljanje

Postavite httpd u OpenBSD

Postavite httpd u OpenBSD

Uvod OpenBSD 5.6 uveo je novi demon pod nazivom httpd, koji podržava CGI (putem FastCGI) i TLS. Za instalaciju novog http nije potreban dodatni rad

Postavite iRedMail na FreeBSD 10

Postavite iRedMail na FreeBSD 10

Ovaj vodič će vam pokazati kako instalirati grupni softver iRedMail na novu instalaciju FreeBSD 10. Trebali biste koristiti poslužitelj s najmanje jednim gigabajtom o

Uspon strojeva: primjene AI u stvarnom svijetu

Uspon strojeva: primjene AI u stvarnom svijetu

Umjetna inteligencija nije u budućnosti, ovdje je upravo u sadašnjosti. U ovom blogu Pročitajte kako su aplikacije umjetne inteligencije utjecale na različite sektore.

DDOS napadi: kratak pregled

DDOS napadi: kratak pregled

Jeste li i vi žrtva DDOS napada i zbunjeni ste metodama prevencije? Pročitajte ovaj članak kako biste riješili svoje upite.

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Možda ste čuli da hakeri zarađuju mnogo novca, ali jeste li se ikada zapitali kako zarađuju toliki novac? raspravimo.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Želite li vidjeti revolucionarne izume Googlea i kako su ti izumi promijenili život svakog čovjeka danas? Zatim čitajte na blogu kako biste vidjeli Googleove izume.

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Koncept samovozećih automobila koji će krenuti na ceste uz pomoć umjetne inteligencije san je koji već neko vrijeme imamo. No, unatoč nekoliko obećanja, nigdje ih nema. Pročitajte ovaj blog kako biste saznali više…

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Kako se znanost razvija velikom brzinom, preuzimajući mnoge naše napore, raste i rizik da se podvrgnemo neobjašnjivoj Singularnosti. Pročitajte što bi za nas mogla značiti singularnost.

Evolucija pohrane podataka – Infografika

Evolucija pohrane podataka – Infografika

Metode pohrane podataka su se razvijale možda od rođenja podataka. Ovaj blog pokriva evoluciju pohrane podataka na temelju infografike.

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Pročitajte blog kako biste na najjednostavniji način upoznali različite slojeve u arhitekturi velikih podataka i njihove funkcionalnosti.

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

U ovom digitalnom svijetu, pametni kućni uređaji postali su ključni dio života. Evo nekoliko nevjerojatnih prednosti pametnih kućnih uređaja o tome kako naš život čine vrijednim življenja i jednostavnijim.

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Nedavno je Apple izdao macOS Catalina 10.15.4 dodatak ažuriranju kako bi riješio probleme, ali čini se da ažuriranje uzrokuje više problema koji dovode do zalijevanja mac strojeva. Pročitajte ovaj članak da biste saznali više