Cum se instalează Apache, MySQL și PHP (FAMP) Stack pe FreeBSD 12.0

Introducere

Un stack FAMP, care este comparabil cu un stack LAMP pe Linux, este o colecție de software open-source care este instalat de obicei împreună pentru a permite unui server FreeBSD să găzduiască site-uri web și aplicații web dinamice. FAMP este un acronim care înseamnă F reeBSD (sistem de operare), A pache (server HTTP), M ySQL (server de baze de date) și P HP (limbaj de programare pentru a procesa conținut PHP dinamic).

În acest ghid, vom implementa elemente ale unei stivă FAMP pe o instanță FreeBSD 12.0 Vultr folosind pkg, managerul de pachete FreeBSD.

cerinţe

Înainte de a începe acest ghid, veți avea nevoie de următoarele:

  • Un FreeBSD 12.0 VPS.
  • Un utilizator cu privilegii root sau un sudoutilizator pentru a face modificări de configurare.
  • O recomandare de bază cu sistemul FreeBSD și interfața liniei de comandă este recomandată.

Înainte de a începe

Verificați versiunea FreeBSD.

uname -ro
# FreeBSD 12.0-RELEASE-p6

Asigurați-vă că sistemul dvs. FreeBSD este actualizat.

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

Instalați pachetele necesare.

pkg install -y sudo vim bash curl

Creați un cont de utilizator nou cu numele de utilizator preferat. Folosim 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!

Rulați visudocomanda și dezarhivați %wheel ALL=(ALL) ALLlinia, pentru a permite membrilor wheelgrupului să execute orice comandă.

visudo

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

Acum, treceți la utilizatorul dvs. recent creat cu su:

su - johndoe

NOTĂ: Înlocuiți johndoecu numele de utilizator.

Configurați fusul orar:

sudo tzsetup

Pasul 1 - Instalarea Apache

Serverul web Apache este în prezent unul dintre cele mai populare servere web din lume. Este o alegere excelentă pentru găzduirea unui site web.

Puteți instala Apache folosind managerul de pachete FreeBSD pkg,. Un manager de pachete vă permite să instalați cel mai mult software fără efort dintr-un depozit întreținut de FreeBSD. Puteți afla mai multe despre modul de utilizare pkgaici .

Pentru a instala Apache, emite următoarea comandă:

sudo pkg install -y apache24

Verificați versiunea:

httpd -v
# Server version: Apache/2.4.39 (FreeBSD)

Acum, activați și porniți Apache:

sudo sysrc apache24_enable=yes
sudo service apache24 start

Pentru a verifica dacă Apache a început, puteți rula următoarea comandă:

sudo service apache24 status

Drept urmare, veți vedea ceva similar cu:

# Output
apache24 is running as pid 17772.

Puteți verifica dacă Apache a fost instalat și funcționează fără erori vizitând adresa IP publică a serverului dvs. în browserul dvs. Web. Navigați la http://your_server_IP. Veți vedea pagina implicită „ Funcționează! ” Apache.

Pasul 2 - Instalarea MySQL 8.0

Acum că aveți serverul dvs. Web funcțional, este timpul să instalați MySQL, sistemul relațional de gestionare a bazelor de date. Serverul MySQL va organiza și va oferi acces la bazele de date în care serverul dvs. poate stoca informații.

Din nou, puteți utiliza pkgpentru a obține și instala software-ul.

Pentru a instala MySQL 8.0folosind pkgaceastă comandă:

sudo pkg install -y mysql80-client mysql80-server

Această comandă va instala cea mai recentă versiune a clientului și serverului MySQL, care este în prezent 8.x.x.

Verificați versiunea:

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

Acum, activați și porniți MySQL:

sudo sysrc mysql_enable=yes
sudo service mysql-server start

Pentru a verifica dacă MySQL a pornit, puteți rula următoarea comandă:

sudo service mysql-server status

Veți vedea ceva similar cu următoarele:

# Output
mysql is running as pid 19171.

Ca o bună practică, puteți rula mysql_secure_installationscriptul de securitate care va elimina unele implicite nesigure și va limita ușor accesul la sistemul dvs. de baze de date.

sudo mysql_secure_installation

Vi se va cere să setați o parolă, urmată de alte câteva întrebări. Introduceți o parolă puternică, apoi pentru restul întrebărilor apăsați ENTERpentru a selecta valorile implicite.

Pasul 3 - Instalarea PHP 7.3

PHP este un limbaj de script din partea serverului, conceput pentru dezvoltarea web. PHP este o componentă indispensabilă a stivei FAMP. De asemenea, Python sau Perl sunt utilizate frecvent în locul PHP. Cu toate acestea, PHP ca opțiune cea mai populară este folosită cel mai des. Împreună cu baza de date, va oferi site-urilor web sau aplicațiilor un comportament dinamic.

Încă o dată, folosiți pkgsistemul pentru a instala componentele PHP.

Pentru a instala PHP 7.3 cu pkg, executați această comandă:

sudo pkg install -y php73 php73-mysqli mod_php73

Aceasta instalează php73, mod_php73și php73-mysqlipachete.

Verificați versiunea.

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

Copiați fișierul de configurare PHP exemplar în loc cu această comandă:

sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Acum, activați și porniți PHP-FPM:

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Pentru a verifica dacă PHP-FPM a pornit, puteți rula următoarea comandă:

sudo service php-fpm status

Drept urmare, veți vedea ceva similar cu:

# Output
php_fpm is running as pid 23005.

Instalarea modulelor PHP (opțional)

Pentru a îmbunătăți funcționalitatea PHP, puteți instala opțional câteva module suplimentare.

Pentru a vedea compilate în mod curent în modulele PHP, puteți rula acest lucru:

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

# [Zend Modules]

Pentru a căuta modulele PHP disponibile, puteți utiliza această comandă:

pkg search ^php73-*

Rezultatele vor fi în mare parte module PHP 7.3 pe care le puteți instala:

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

Dacă, după cercetare, decideți că trebuie să instalați un pachet, puteți face acest lucru folosind pkg installcomanda. Majoritatea aplicațiilor web PHP vor necesita module suplimentare, așa că este bine să știți cum să le căutați.

Pasul 4 - Configurarea apache pentru a utiliza modulul PHP

Înainte de a utiliza PHP, trebuie să îl configurați pentru a funcționa cu Apache.

Rulați sudo vi /usr/local/etc/apache24/modules.d/001_mod-php.confși populați fișierul cu conținutul de mai jos:

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

Salvați fișierul și ieșiți cu :+ W+Q

Verificați configurația lui Apache.

sudo apachectl configtest

Deoarece ați făcut modificări de configurare în Apache, trebuie să reîncărcați serviciul pentru cele care vor fi aplicate. În caz contrar, Apache va funcționa în continuare cu configurația anterioară.

sudo apachectl restart

Pasul 5 - Testarea procesării PHP

Pentru a testa dacă sistemul dvs. este configurat corect pentru PHP, puteți crea un script PHP de bază. Vei numi acest script info.php. În mod implicit, tasta DocumentRooteste setată la /usr/local/www/apache24/data. Puteți crea info.phpfișierul în acea locație tastând:

sudo vim /usr/local/www/apache24/data/info.php

Adăugați acest cod la acel fișier:

<?php phpinfo(); ?>

Navigați la http://your_server_IP/info.phpși veți vedea următoarea pagină:

Cum se instalează Apache, MySQL și PHP (FAMP) Stack pe FreeBSD 12.0

După instalarea și configurarea stivei FAMP, ar trebui să eliminați info.phpfișierul pentru a evita dezvăluirea informațiilor despre server publicului.

sudo rm /usr/local/www/apache24/data/info.php

Concluzie

Felicitări, ați instalat cu succes un stivă FAMP pe VPS-ul dvs. FreeBSD 12.0. Acum aveți mai multe opțiuni pentru ce să faceți în continuare. Ați instalat o platformă care vă va permite să instalați cele mai multe tipuri de site-uri web și software web deasupra acesteia.



Leave a Comment

Cum se instalează forumul NodeBB pe FreeBSD 12

Cum se instalează forumul NodeBB pe FreeBSD 12

Folosind un sistem diferit? NodeBB este un software de forum bazat pe Node.js. Utilizează prize web pentru interacțiuni instantanee și notificări în timp real. Nodul B

Protejați rezolv.conf de la DHCP pe FreeBSD 10

Protejați rezolv.conf de la DHCP pe FreeBSD 10

Dacă executați propriul dvs. rezolvator sau doriți să utilizați unul de la un furnizor terț, puteți constata că fișierul dvs. /etc/resolv.conf este suprascris de DHCP

Cum se instalează Automad CMS pe FreeBSD 12

Cum se instalează Automad CMS pe FreeBSD 12

Folosind un sistem diferit? Automad este un sistem open source de conținut bazat pe fișiere (CMS) și motor de șabloane, scris în PHP. Codul sursă Automad i

Cum se instalează X-Cart 5 pe FreeBSD 12

Cum se instalează X-Cart 5 pe FreeBSD 12

Folosind un sistem diferit? X-Cart este o platformă eCommerce open-source extrem de flexibilă, cu tone de funcții și integrări. Codul sursă X-Cart este gazdă

Instalați WordPress pe OpenBSD 6.2

Instalați WordPress pe OpenBSD 6.2

Introducere WordPress este sistemul dominant de gestionare a conținutului pe internet. Acesta alimentează totul, de la bloguri la site-uri web complexe, cu conținut dinamic

Cum se instalează Anchor CMS pe un VPS FreeBSD 11 FAMP

Cum se instalează Anchor CMS pe un VPS FreeBSD 11 FAMP

Folosind un sistem diferit? Anchor CMS este un motor de blog de sistem de gestionare a conținutului (CMS) super-simplu și extrem de ușor, gratuit și deschis

Configurare și configurare Murmur (Mumble Server) pe FreeBSD 11

Configurare și configurare Murmur (Mumble Server) pe FreeBSD 11

Murmur este software-ul de server oficial pentru protocolul de comunicare vocală Mumble. Această implementare oficială este stabilă și eficientă. Acest ghid va fi

Cum se instalează WonderCMS pe FreeBSD 12

Cum se instalează WonderCMS pe FreeBSD 12

Folosind un sistem diferit? WonderCMS este un CMS cu fișier plat, de tip open source, rapid și mic, scris în PHP. Codul sursă WonderCMS este găzduit pe Github. Acest ghid va fi

Cum se instalează Pagekit 1.0 CMS pe un VPS FreeBSD 11 FAMP

Cum se instalează Pagekit 1.0 CMS pe un VPS FreeBSD 11 FAMP

Folosind un sistem diferit? Pagekit 1.0 CMS este un sistem frumos de gestionare a conținutului (CMS), modular, extensibil și ușor, gratuit și deschis, cu

Cum se activează TLS 1.3 în Apache pe FreeBSD 12

Cum se activează TLS 1.3 în Apache pe FreeBSD 12

Folosind un sistem diferit? TLS 1.3 este o versiune a protocolului Transport Layer Security (TLS) care a fost publicat în 2018 ca standard propus în RFC 8446

Instalarea iRedMail pe FreeBSD 10

Instalarea iRedMail pe FreeBSD 10

Acest tutorial vă va arăta cum să instalați iRedMail de grup în o nouă instalare a FreeBSD 10. Ar trebui să folosiți un server cu cel puțin o gigabyte o

Cum se instalează Dolibarr pe FreeBSD 12

Cum se instalează Dolibarr pe FreeBSD 12

Folosind un sistem diferit? Dolibarr este un plan de resurse pentru întreprinderi open source (ERP) și managementul relațiilor cu clienții (CRM) pentru companii. Dolibarr

Instalați TaskServer (taskd) pe FreeBSD 11

Instalați TaskServer (taskd) pe FreeBSD 11

Folosind un sistem diferit? TaskWarrior este un instrument de gestionare a timpului open source care este o îmbunătățire a aplicației Todo.txt și a clonelor sale. Datorită th

Cum se instalează DokuWiki pe FreeBSD 12

Cum se instalează DokuWiki pe FreeBSD 12

Folosind un sistem diferit? DokuWiki este un program wiki open source scris în PHP care nu necesită o bază de date. Stochează date în fișiere text. DokuWik

Configurarea platformei Ghost Professional Publishing pe OpenBSD 6

Configurarea platformei Ghost Professional Publishing pe OpenBSD 6

Ghost este cel mai recent și cel mai mare upstart pentru a rivaliza cu WordPress. Dezvoltarea tematică este rapidă și ușor de învățat, deoarece dezvoltatorii Ghost au decis să utilizeze ambele aplicații

Rularea WordPress pe OpenBSD 6.5 cu OpenBSDs HTTPD

Rularea WordPress pe OpenBSD 6.5 cu OpenBSDs HTTPD

Introducere Cu cât vă mențineți mai aproape instalarea OpenBSD la valoarea implicită și fără tot atâtea pachete adăugate, cu atât va fi mai sigur. În timp ce mai comun

Redimensionați ZFS Storage Pool pe FreeBSD / TrueOS

Redimensionați ZFS Storage Pool pe FreeBSD / TrueOS

La actualizarea unei instanțe VPS pe Vultr, un sistem de fișiere Linux este redimensionat automat. Când executați FreeBSD cu sistemul avansat de fișiere ZFS, unele manuale sunt uzate

Simple Mailserver cu Postfix, Dovecot și Sieve pe FreeBSD 10

Simple Mailserver cu Postfix, Dovecot și Sieve pe FreeBSD 10

Acest tutorial vă va arăta cum să obțineți un server de mail simplu pe FreeBSD 10, cu Postfix ca MTA, Dovecot ca MDA și Sieve pentru sortarea poștelor - peste un

Instalați eSpeak pe FreeBSD 12

Instalați eSpeak pe FreeBSD 12

Folosind un sistem diferit? ESpeak poate genera fișiere audio text-to-speech (TTS). Acestea pot fi utile din mai multe motive, cum ar fi crearea propriului dvs. Torino

Cum se instalează MODX Revolution pe un FreeBSD 11 FAMP VPS

Cum se instalează MODX Revolution pe un FreeBSD 11 FAMP VPS

Folosind un sistem diferit? MODX Revolution este un sistem de administrare a conținutului (CMS) rapid, flexibil, scalabil, open source, de calitate a întreprinderii, scris în PHP. Este

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

6 lucruri extrem de nebunești despre Nintendo Switch

6 lucruri extrem de nebunești despre Nintendo Switch

Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.

Promisiuni tehnologice care sunt încă nelivrate

Promisiuni tehnologice care sunt încă nelivrate

Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!

Te-ai întrebat vreodată cum câștigă hackerii bani?

Te-ai întrebat vreodată cum câștigă hackerii bani?

Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe