Kako namestiti sklad Nginx, MySQL in PHP (FEMP) na FreeBSD 12.0

Sklad FEMP, ki je primerljiv s skladom LEMP v Linuxu, je zbirka odprtokodne programske opreme, ki je običajno nameščena skupaj, da strežniku FreeBSD omogoči gostovanje dinamičnih spletnih mest in spletnih aplikacij. FEMP je kratica, ki pomeni FreeBSD, Nginx, MySQL in PHP.

V tem priročniku bomo razmestili elemente sklada FEMP na primerek FreeBSD 12.0 Vultr z uporabo pkgupravljalnika paketov FreeBSD.

Zahteve

Preden začnete s tem vodnikom, boste potrebovali naslednje:

  • FreeBSD 12.0 VPS.
  • Uporabnik s pravicami root ali sudouporabnik za spreminjanje konfiguracije.
  • Priporočljivo je osnovno poznavanje sistema FreeBSD in vmesnika ukazne vrstice.

Preden začneš

Preverite različico FreeBSD.

uname -ro # FreeBSD 12.0-RELEASE-p6

Prepričajte se, da je vaš sistem FreeBSD posodobljen.

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

Namestite potrebne pakete.

pkg install -y sudo vim bash curl

Ustvarite nov uporabniški račun s svojim želenim uporabniškim imenom. Uporabljamo 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!

Zaženite visudoukaz in razkomentirajte %wheel ALL=(ALL) ALLvrstico, da omogočite članom wheelskupine, da izvedejo kateri koli ukaz.

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

Zdaj preklopite na novo ustvarjenega uporabnika z su:

su - johndoe

OPOMBA: Zamenjajte johndoez vašim uporabniškim imenom.

Nastavite časovni pas:

sudo tzsetup

Namestitev glavnega Nginxa

Nginx lahko namestite s pomočjo upravitelja paketov FreeBSD, pkg. Upravitelj paketov vam omogoča enostavno namestitev večine programske opreme iz skladišča, ki ga vzdržuje FreeBSD. Več o uporabipkg lahko izveste tukaj .

Za namestitev najnovejšega glavnega Nginxa izdajte naslednji ukaz:

sudo pkg install -y nginx-devel

Preverite različico:

nginx -v # nginx version: nginx/1.17.1

Ta ukaz bo namestil najnovejšo glavno različico, ki jo je mogoče zanesljivo uporabljati na produkcijskem strežniku. Če želite namestiti najnovejšo stabilno izdajo, uporabite samo nginxpaket namesto nginx-devel.

Zdaj omogočite in zaženite Nginx:

sudo sysrc nginx_enable=yes sudo service nginx start

Če želite preveriti, ali se je Nginx zagnal, lahko zaženete naslednji ukaz:

sudo service nginx status

Kot rezultat boste videli nekaj podobnega temu:

# Output nginx is running as pid 17607.

Če je bil Nginx nameščen in deluje brez napak, lahko preverite tako, da v spletnem brskalniku obiščete javni IP naslov vašega strežnika. Pomaknite se do your_server_IP. Videli boste privzeto "Dobrodošli v nginx!" stran.

Namestitev MySQL

Ponovno lahko uporabite pkgza pridobitev in namestitev programske opreme.

Namestite MySQL z uporabo pkg:

sudo pkg install -y mysql80-client mysql80-server

Preverite različico:

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

Zdaj omogočite in zaženite MySQL:

sudo sysrc mysql_enable=yes sudo service mysql-server start

Če želite preveriti, ali se je MySQL zagnal, lahko zaženete naslednji ukaz:

sudo service mysql-server status

Videli boste nekaj podobnega temu:

# Output mysql is running as pid 19066.

Kot dobra praksa bi morali zagnati mysql_secure_installationvarnostni skript, ki bo odstranil nekatere nevarne privzete nastavitve in nekoliko omejil dostop do vašega sistema baze podatkov.

sudo mysql_secure_installation

Pozvani boste, da nastavite geslo, nato pa še nekaj vprašanj. Vnesite močno geslo in nato za preostala vprašanja pritisnite , ENTERda izberete privzete nastavitve.

Namestitev PHP 7.3

Če želite namestiti PHP 7.3z pkg, zaženite ta ukaz:

sudo pkg install -y php73

Preverite različico.

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

Mehka povezava php.ini-productiondo php.ini.

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

Zdaj omogočite in zaženite PHP-FPM:

sudo sysrc php_fpm_enable=yes sudo service php-fpm start

Če želite preveriti, ali se je PHP-FPM zagnal, lahko zaženete naslednji ukaz:

sudo service php-fpm status

Kot rezultat boste videli nekaj podobnega:

# Output php_fpm is running as pid 23005.

Namestitev PHP modulov (izbirno)

Za izboljšanje funkcionalnosti PHP lahko po želji namestite nekaj dodatnih modulov.

Če si želite ogledati trenutno prevedene v modulih PHP, lahko zaženete to:

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

Za iskanje razpoložljivih PHP modulov lahko uporabite ta ukaz:

pkg search ^php73-*

Rezultati bodo večinoma moduli PHP 7.3, ki jih lahko namestite:

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

Če se po raziskovanju odločite, da morate namestiti paket, lahko to storite z pkg installukazom. Večina spletnih aplikacij PHP bo zahtevala dodatne module, zato je dobro vedeti, kako jih poiskati.

Konfiguriranje Nginxa za uporabo modula PHP

Pred uporabo PHP ga morate konfigurirati za delo z Nginxom.

Zaženite sudo vim /usr/local/etc/nginx/test.confin napolnite datoteko z naslednjo vsebino:

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

Shranite datoteko in zapustite s :+ W+Q

Zdaj moramo vključiti test.confv glavno nginx.confdatoteko. Glavna konfiguracijska datoteka za Nginx je pod /usr/local/etc/nginximenom nginx.conf.

Zaženite, sudo vim /usr/local/etc/nginx/nginx.confda odprete glavno konfiguracijsko datoteko v Vimu in v http {}blok dodajte naslednjo vrstico .

include test.conf;

Preizkusite konfiguracijo Nginxa:

sudo nginx -t

Ker ste v Nginxu naredili konfiguracijske spremembe, morate storitev znova naložiti, da se te uporabijo. V nasprotnem primeru bo Nginx še vedno deloval s prejšnjo konfiguracijo.

sudo service nginx reload

Testiranje obdelave PHP

Če želite preveriti, ali je vaš sistem pravilno konfiguriran za PHP, lahko ustvarite zelo osnovni skript PHP. Ta skript boste poklicali info.php. Privzeto rootje nastavljen na /usr/local/www/nginx-dist. Datoteko lahko ustvarite na info.phptej lokaciji:

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

Tej datoteki dodajte to kodo:

<?php phpinfo(); ?>

Pomaknite se do http://your_server_IP/ìnfo.phpin videli boste naslednjo stran:

Kako namestiti sklad Nginx, MySQL in PHP (FEMP) na FreeBSD 12.0

Po namestitvi in ​​nastavitvi odstranite info.phpdatoteko, da se izognete razkritju informacij o strežniku javnosti.

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

Zaključek

Čestitamo, uspešno ste namestili sklad FEMP na vaš FreeBSD 12.0 VPS. Zdaj imate več možnosti, kaj storiti naprej. Namestili ste platformo, ki vam bo omogočila namestitev večine vrst spletnih mest in spletne programske opreme.


How to Install Tiny Tiny RSS Reader on a FreeBSD 11 FAMP VPS

How to Install Tiny Tiny RSS Reader on a FreeBSD 11 FAMP VPS

Using a Different System? Tiny Tiny RSS Reader is a free and open source self-hosted web-based news feed (RSS/Atom) reader and aggregator, designed to allo

Kako namestiti Wiki.js na FreeBSD 11

Kako namestiti Wiki.js na FreeBSD 11

Uporaba drugega sistema? Wiki.js je brezplačna odprtokodna sodobna wiki aplikacija, zgrajena na Node.js, MongoDB, Git in Markdown. Izvorna koda Wiki.js je javna

Kako namestiti Pagekit 1.0 CMS na FreeBSD 11 FAMP VPS

Kako namestiti Pagekit 1.0 CMS na FreeBSD 11 FAMP VPS

Uporaba drugega sistema? Pagekit 1.0 CMS je lep, modularen, razširljiv in lahek, brezplačen in odprtokoden sistem za upravljanje vsebine (CMS) z

Kako namestiti MODX Revolution na FreeBSD 11 FAMP VPS

Kako namestiti MODX Revolution na FreeBSD 11 FAMP VPS

Uporaba drugega sistema? MODX Revolution je hiter, prilagodljiv, razširljiv, odprtokoden sistem za upravljanje vsebin (CMS) za podjetja, napisan v PHP. To i

Namestitev OpenBSD 5.5 64-bit

Namestitev OpenBSD 5.5 64-bit

Ta članek vas vodi skozi nastavitev OpenBSD 5.5 (64-bit) na KVM z Vultr VPS. 1. korak. Prijavite se v nadzorno ploščo Vultr. 2. korak. Kliknite RAZPOSTAVI

Kako namestiti osTicket na FreeBSD 12

Kako namestiti osTicket na FreeBSD 12

Uporaba drugega sistema? osTicket je odprtokodni sistem za izdajo vstopnic za podporo strankam. Izvorna koda osTicket je javno gostovana na Githubu. V tej vadnici

Kako namestiti Flarum Forum na FreeBSD 12

Kako namestiti Flarum Forum na FreeBSD 12

Uporaba drugega sistema? Flarum je brezplačna in odprtokodna programska oprema za forume naslednje generacije, ki naredi spletno razpravo zabavno. Izvorna koda Flarum gostuje o

Kako omogočiti TLS 1.3 v Nginxu na FreeBSD 12

Kako omogočiti TLS 1.3 v Nginxu na FreeBSD 12

Uporaba drugega sistema? TLS 1.3 je različica protokola Transport Layer Security (TLS), ki je bil objavljen leta 2018 kot predlagani standard v RFC 8446

Namestite WordPress na OpenBSD 6.2

Namestite WordPress na OpenBSD 6.2

Uvod WordPress je prevladujoči sistem za upravljanje vsebin na internetu. Poganja vse, od blogov do zapletenih spletnih mest z dinamično vsebino

Kako namestiti Subrion 4.1 CMS na FreeBSD 11 FAMP VPS

Kako namestiti Subrion 4.1 CMS na FreeBSD 11 FAMP VPS

Uporaba drugega sistema? Subrion 4.1 CMS je zmogljiv in prilagodljiv odprtokodni sistem za upravljanje vsebine (CMS), ki prinaša intuitivno in jasno vsebino.

Kako konfigurirati DJBDNS na FreeBSD

Kako konfigurirati DJBDNS na FreeBSD

Ta vadnica vam bo pokazala, kako konfigurirati storitev DNS, ki je enostavna za vzdrževanje, enostavna za konfiguriranje in ki je na splošno bolj varna kot klasični BIN

Kako namestiti sklad Nginx, MySQL in PHP (FEMP) na FreeBSD 12.0

Kako namestiti sklad Nginx, MySQL in PHP (FEMP) na FreeBSD 12.0

Sklad FEMP, ki je primerljiv s skladom LEMP v Linuxu, je zbirka odprtokodne programske opreme, ki je običajno nameščena skupaj, da omogoči FreeBS

Namestitev MongoDB na FreeBSD 10

Namestitev MongoDB na FreeBSD 10

MongoDB je vrhunska baza podatkov NoSQL, ki se pogosto uporablja v novejših spletnih aplikacijah. Zagotavlja visoko zmogljive poizvedbe, razdeljevanje in podvajanje

Kako namestiti Monico na FreeBSD 12

Kako namestiti Monico na FreeBSD 12

Uporaba drugega sistema? Monica je odprtokodni sistem za upravljanje osebnih odnosov. Pomislite na to kot na CRM (priljubljeno orodje, ki ga uporabljajo prodajne ekipe v th

OpenBSD kot rešitev za e-trgovino s PrestaShop in Apache

OpenBSD kot rešitev za e-trgovino s PrestaShop in Apache

Uvod Ta vadnica prikazuje OpenBSD kot rešitev za e-trgovino z uporabo PrestaShop in Apache. Apache je potreben, ker ima PrestaShop zapleten UR

Namestitev Fork CMS na FreeBSD 12

Namestitev Fork CMS na FreeBSD 12

Uporaba drugega sistema? Fork je odprtokodni CMS, napisan v PHP. Izvorna koda Forks gostuje na GitHubu. Ta priročnik vam bo pokazal, kako namestiti Fork CM

Kako namestiti Directus 6.4 CMS na FreeBSD 11 FAMP VPS

Kako namestiti Directus 6.4 CMS na FreeBSD 11 FAMP VPS

Uporaba drugega sistema? Directus 6.4 CMS je zmogljiv in prilagodljiv, brezplačen in odprtokoden Headless Content Management System (CMS), ki omogoča razvijalcem

Izboljšanje varnosti za FreeBSD z uporabo IPFW in SSHGuard

Izboljšanje varnosti za FreeBSD z uporabo IPFW in SSHGuard

VPS strežniki so pogosto tarča vsiljivcev. Pogosta vrsta napada se prikaže v sistemskih dnevnikih kot na stotine nepooblaščenih poskusov prijave ssh. Postavitev

Nastavite httpd v OpenBSD

Nastavite httpd v OpenBSD

Uvod OpenBSD 5.6 je predstavil nov demon, imenovan httpd, ki podpira CGI (prek FastCGI) in TLS. Za namestitev novega http ni potrebno dodatno delo

Nastavite iRedMail na FreeBSD 10

Nastavite iRedMail na FreeBSD 10

Ta vadnica vam bo pokazala, kako namestiti skupinsko programsko opremo iRedMail na novo namestitev FreeBSD 10. Uporabiti morate strežnik z vsaj enim gigabajtom o

Vzpon strojev: aplikacije AI v resničnem svetu

Vzpon strojev: aplikacije AI v resničnem svetu

Umetna inteligenca ni v prihodnosti, tukaj je prav v sedanjosti. V tem blogu preberite, kako so aplikacije umetne inteligence vplivale na različne sektorje.

DDOS napadi: kratek pregled

DDOS napadi: kratek pregled

Ste tudi vi žrtev DDOS napadov in ste zmedeni glede načinov preprečevanja? Preberite ta članek, če želite rešiti svoja vprašanja.

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Morda ste že slišali, da hekerji zaslužijo veliko denarja, a ste se kdaj vprašali, kako zaslužijo takšen denar? razpravljajmo.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Ali želite videti revolucionarne izume Googla in kako so ti izumi danes spremenili življenje vsakega človeka? Nato preberite v blogu in si oglejte Googlove izume.

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Koncept samovozečih avtomobilov, ki zapeljejo na ceste s pomočjo umetne inteligence, so sanje, ki jih imamo že nekaj časa. A kljub številnim obljubam jih ni nikjer. Preberite ta blog, če želite izvedeti več…

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Ker se znanost hitro razvija in prevzame veliko naših prizadevanj, se povečuje tudi tveganje, da se podvržemo nerazložljivi singularnosti. Preberite, kaj bi za nas lahko pomenila singularnost.

Razvoj shranjevanja podatkov – Infografika

Razvoj shranjevanja podatkov – Infografika

Metode shranjevanja podatkov so se lahko razvijale od rojstva podatkov. Ta blog pokriva razvoj shranjevanja podatkov na podlagi infografike.

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Preberite blog, če želite na najpreprostejši način spoznati različne plasti v arhitekturi velikih podatkov in njihove funkcionalnosti.

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

V tem digitalno vodenem svetu so pametne naprave za dom postale ključni del življenja. Tukaj je nekaj neverjetnih prednosti pametnih naprav za dom o tem, kako naredijo naše življenje vredno življenja in poenostavijo.

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Pred kratkim je Apple izdal macOS Catalina 10.15.4 dopolnilno posodobitev za odpravo težav, vendar se zdi, da posodobitev povzroča več težav, ki vodijo do opečenja računalnikov Mac. Preberite ta članek, če želite izvedeti več