Hoe Apache, MySQL en PHP (FAMP) Stack op FreeBSD 12.0 te installeren

Invoering

Een FAMP-stack, vergelijkbaar met een LAMP-stack op Linux, is een verzameling open-source software die doorgaans samen wordt geïnstalleerd om een ​​FreeBSD-server in staat te stellen dynamische websites en webapplicaties te hosten. FAMP is een acroniem dat staat voor F reeBSD (besturingssysteem), A pache (HTTP-server), M ySQL (databaseserver) en P HP (programmeertaal om dynamische PHP-inhoud te verwerken).

In deze handleiding zullen we elementen van een FAMP-stack implementeren op een FreeBSD 12.0 Vultr-instantie met behulp van pkgde FreeBSD-pakketbeheerder.

Vereisten

Voordat je aan deze handleiding begint, heb je het volgende nodig:

  • Een FreeBSD 12.0 VPS.
  • Een gebruiker met rootrechten of sudogebruiker om configuratiewijzigingen aan te brengen.
  • Basiskennis van het FreeBSD-systeem en de opdrachtregelinterface wordt aanbevolen.

Voordat je begint

Controleer de FreeBSD-versie.

uname -ro
# FreeBSD 12.0-RELEASE-p6

Zorg ervoor dat uw FreeBSD-systeem up-to-date is.

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

Installeer de benodigde pakketten.

pkg install -y sudo vim bash curl

Maak een nieuw gebruikersaccount aan met uw favoriete gebruikersnaam. We gebruiken 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!

Voer de visudoopdracht uit en maak een commentaar op de %wheel ALL=(ALL) ALLregel, zodat leden van de wheelgroep elke opdracht kunnen uitvoeren.

visudo

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

Schakel nu over naar uw nieuw aangemaakte gebruiker met su:

su - johndoe

OPMERKING: vervang johndoedoor uw gebruikersnaam.

Stel de tijdzone in:

sudo tzsetup

Stap 1 - Apache installeren

De Apache-webserver is momenteel een van de meest populaire webservers ter wereld. Het is een uitstekende keuze voor het hosten van een website.

U kunt Apache installeren met behulp van FreeBSD package manager, pkg. Met een pakketbeheerder kunt u de meeste software moeiteloos installeren vanuit een repository die wordt beheerd door FreeBSD. U kunt meer te leren over hoe te gebruiken pkghier .

Voer de volgende opdracht uit om Apache te installeren:

sudo pkg install -y apache24

Controleer de versie:

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

Schakel nu Apache in en start het:

sudo sysrc apache24_enable=yes
sudo service apache24 start

Om te controleren of Apache is gestart, kunt u de volgende opdracht uitvoeren:

sudo service apache24 status

Als resultaat zie je iets dat lijkt op:

# Output
apache24 is running as pid 17772.

U kunt controleren of Apache is geïnstalleerd en zonder fouten werkt door naar het openbare IP-adres van uw server in uw webbrowser te gaan. Navigeer naar http://your_server_IP. U zult de standaard Apache-pagina " Het werkt! "

Stap 2 - MySQL 8.0 installeren

Nu u uw webserver in gebruik heeft, is het tijd om MySQL, het relationele databasebeheersysteem, te installeren. De MySQL-server organiseert en biedt toegang tot databases waar uw server informatie kan opslaan.

Nogmaals, u kunt gebruiken pkgom uw software te verkrijgen en te installeren.

Gebruik deze opdracht om MySQL te installeren 8.0met pkg:

sudo pkg install -y mysql80-client mysql80-server

Met deze opdracht wordt de nieuwste versie van de MySQL-client en -server geïnstalleerd, die momenteel is 8.x.x.

Controleer de versie:

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

Schakel nu MySQL in en start het:

sudo sysrc mysql_enable=yes
sudo service mysql-server start

Om te controleren of MySQL is gestart, kunt u de volgende opdracht uitvoeren:

sudo service mysql-server status

Je ziet iets dat lijkt op het volgende:

# Output
mysql is running as pid 19171.

Als een goede gewoonte kunt u het mysql_secure_installationbeveiligingsscript uitvoeren dat enkele onveilige standaardwaarden verwijdert en de toegang tot uw databasesysteem enigszins beperkt.

sudo mysql_secure_installation

U wordt gevraagd om een ​​wachtwoord in te stellen, gevolgd door enkele andere vragen. Voer een sterk wachtwoord in en druk voor de rest van de vragen op ENTERom de standaardinstellingen te selecteren.

Stap 3 - PHP 7.3 installeren

PHP is een scripttaal aan de serverzijde die is ontworpen voor webontwikkeling. PHP is een onmisbaar onderdeel van de FAMP-stack. Python of Perl worden ook vaak gebruikt in plaats van PHP. PHP wordt echter het meest gebruikt. Samen met de database geeft het uw websites of apps dynamisch gedrag.

Gebruik het pkgsysteem opnieuw om PHP-componenten te installeren.

pkgVoer deze opdracht uit om PHP 7.3 te installeren met :

sudo pkg install -y php73 php73-mysqli mod_php73

Dit installeert het php73, mod_php73en php73-mysqlipakketten.

Controleer de versie.

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

Kopieer het voorbeeld van het PHP-configuratiebestand met deze opdracht:

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

Schakel nu PHP-FPM in en start het:

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Om te controleren of PHP-FPM is gestart, kunt u de volgende opdracht uitvoeren:

sudo service php-fpm status

Als resultaat zie je iets dat lijkt op:

# Output
php_fpm is running as pid 23005.

PHP-modules installeren (optioneel)

Om de functionaliteit van PHP te verbeteren, kunt u optioneel enkele extra modules installeren.

Om te zien wat momenteel in PHP-modules is gecompileerd, kunt u dit uitvoeren:

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

# [Zend Modules]

Om naar beschikbare PHP-modules te zoeken, kunt u deze opdracht gebruiken:

pkg search ^php73-*

De resultaten zijn meestal PHP 7.3-modules die u kunt installeren:

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

Als u na onderzoek besluit dat u een pakket moet installeren, kunt u dit doen met de pkg installopdracht. De meeste PHP-webapplicaties hebben extra modules nodig, dus het is goed om te weten hoe u ernaar moet zoeken.

Stap 4 - Apache configureren om PHP-module te gebruiken

Voordat u PHP gebruikt, moet u het configureren om met Apache te werken.

Voer sudo vi /usr/local/etc/apache24/modules.d/001_mod-php.confhet bestand uit en vul het met de onderstaande inhoud:

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

Sla het bestand op en sluit af met :+ W+Q

Controleer de configuratie van Apache.

sudo apachectl configtest

Omdat u configuratiewijzigingen in Apache heeft aangebracht, moet u de service opnieuw laden om deze toe te passen. Anders werkt Apache nog steeds met de eerdere configuratie.

sudo apachectl restart

Stap 5 - PHP-verwerking testen

Om te testen of uw systeem correct is geconfigureerd voor PHP, kunt u een zeer eenvoudig PHP-script maken. Je noemt dit script info.php. Standaard is de DocumentRootingesteld op /usr/local/www/apache24/data. U kunt het info.phpbestand onder die locatie maken door te typen:

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

Voeg deze code toe aan dat bestand:

<?php phpinfo(); ?>

Navigeer naar http://your_server_IP/info.phpen je ziet de volgende pagina:

Hoe Apache, MySQL en PHP (FAMP) Stack op FreeBSD 12.0 te installeren

Na de installatie en configuratie van de FAMP-stapel moet u het info.phpbestand verwijderen om te voorkomen dat de informatie over de server openbaar wordt gemaakt.

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

Gevolgtrekking

Gefeliciteerd, je hebt met succes een FAMP-stack op je FreeBSD 12.0 VPS geïnstalleerd. Je hebt nu meerdere keuzes voor wat je vervolgens moet doen. Je hebt een platform geïnstalleerd waarmee je de meeste soorten websites en websoftware erop kunt installeren.



Leave a Comment

Hoe Blacklistd op FreeBSD 11.1 te installeren

Hoe Blacklistd op FreeBSD 11.1 te installeren

Inleiding Elke service die is verbonden met internet is een potentieel doelwit voor brute-force-aanvallen of ongerechtvaardigde toegang. Er zijn tools zoals fail2ba

Hoe Neos CMS op FreeBSD 12 te installeren

Hoe Neos CMS op FreeBSD 12 te installeren

Gebruikt u een ander systeem? Neos is een Content Application Platform met een CMS en een applicatieframework als kern. Deze gids laat u zien hoe u kunt installeren

Stel OpenBSD 5.6 in met volledige schijfversleuteling

Stel OpenBSD 5.6 in met volledige schijfversleuteling

Deze tutorial laat je zien hoe je OpenBSD 5.6 instelt met een volledig gecodeerde schijf op je Vultr VPS. Een opmerking over het versleutelingsgedeelte: de meeste datacenters rond th

Sudo gebruiken op Debian, CentOS en FreeBSD

Sudo gebruiken op Debian, CentOS en FreeBSD

Het gebruik van een sudo-gebruiker om toegang te krijgen tot een server en opdrachten uit te voeren op rootniveau is een veel voorkomende praktijk onder Linux en Unix-systeembeheerder. Het gebruik van een sud

OsTicket installeren op FreeBSD 12

OsTicket installeren op FreeBSD 12

Gebruikt u een ander systeem? osTicket is een open source ticketingsysteem voor klantenondersteuning. De broncode van osTicket wordt openbaar gehost op Github. In deze tutorial

Installeer Varnish 5 With Nginx op FreeBSD 11

Installeer Varnish 5 With Nginx op FreeBSD 11

Varnish is een open source cacheserver die inhoud van een webserver opslaat. Het wordt geïnstalleerd voor een webserver zoals Apache of Nginx. De cachin

Osclass installeren op FreeBSD 12

Osclass installeren op FreeBSD 12

Gebruikt u een ander systeem? Osclass is een open source-project waarmee u eenvoudig een geclassificeerde site kunt maken zonder enige technische kennis. Het is sourc

Hoe X-Cart 5 op FreeBSD 12 te installeren

Hoe X-Cart 5 op FreeBSD 12 te installeren

Gebruikt u een ander systeem? X-Cart is een uiterst flexibel open-source e-commerceplatform met tal van functies en integraties. X-Cart broncode is hoste

Hoe Omeka Classic 2.4 CMS op een FreeBSD 11 FAMP VPS te installeren

Hoe Omeka Classic 2.4 CMS op een FreeBSD 11 FAMP VPS te installeren

Gebruikt u een ander systeem? Omeka Classic 2.4 CMS is een gratis en open source digitaal publicatieplatform en Content Management System (CMS) voor het delen van digita

Wiki.js installeren op FreeBSD 11

Wiki.js installeren op FreeBSD 11

Gebruikt u een ander systeem? Wiki.js is een gratis en open source, moderne wiki-app gebouwd op Node.js, MongoDB, Git en Markdown. De broncode van Wiki.js is openbaar

Directus 6.4 CMS installeren op een FreeBSD 11 FAMP VPS

Directus 6.4 CMS installeren op een FreeBSD 11 FAMP VPS

Gebruikt u een ander systeem? Directus 6.4 CMS is een krachtig en flexibel, gratis en open source Headless Content Management System (CMS) dat ontwikkelaars voorziet

Eenvoudige mailserver met Postfix, Dovecot en Sieve op FreeBSD 10

Eenvoudige mailserver met Postfix, Dovecot en Sieve op FreeBSD 10

Deze tutorial laat je zien hoe je een eenvoudige mailserver op FreeBSD 10 kunt krijgen, met Postfix als MTA, Dovecot als MDA en Sieve voor het sorteren van mail - over een hele

Uw eigen mailserver bouwen met FreeBSD 11

Uw eigen mailserver bouwen met FreeBSD 11

Het runnen van uw eigen e-mailserver kan behoorlijk lonend zijn. U bent de baas over uw gegevens. Het geeft u ook meer flexibiliteit met uw bezorgopties. Echter

Creëer een wisselbestand op FreeBSD 10

Creëer een wisselbestand op FreeBSD 10

Standaard zijn Vultr FreeBSD-servers niet geconfigureerd om swapruimte op te nemen. Als u van plan bent een wegwerp-cloudinstantie te gebruiken, hoeft u dat waarschijnlijk niet te doen

Het formaat van een schijf wijzigen in FreeBSD

Het formaat van een schijf wijzigen in FreeBSD

Het FreeBSD-besturingssysteem gebruikt UFS (Unix File System) als bestandssysteem voor rootpartities; ook wel bekend als freebsd-ufs in het geval van een upgrade

Hoe Flarum Forum op FreeBSD 12 te installeren

Hoe Flarum Forum op FreeBSD 12 te installeren

Gebruikt u een ander systeem? Flarum is een gratis en open source forumsoftware van de volgende generatie die online discussies leuk maakt. De broncode van Flarum wordt gehost o

Configureer MariaDB op OpenBSD 6

Configureer MariaDB op OpenBSD 6

In dit artikel laat Ill zien hoe je MariaDB op OpenBSD 6 installeert en configureert om toegankelijk te zijn voor een gechrooted webserver (Apache of Nginx). Je zult ook

Hoe Craft CMS op FreeBSD 12 te installeren

Hoe Craft CMS op FreeBSD 12 te installeren

Gebruikt u een ander systeem? Introductie Craft CMS is een open source CMS geschreven in PHP. De broncode van Craft CMS wordt gehost op GitHub. Deze gids zal je laten zien

Een eenvoudige website maken op Vultr met OpenBSD en httpd

Een eenvoudige website maken op Vultr met OpenBSD en httpd

Inleiding Het doel van deze gids is om u te laten zien hoe gemakkelijk het is om een ​​homepage voor uw website op Vultr te maken met OpenBSD en httpd. Th creëren

Resize ZFS Storage Pool op FreeBSD / TrueOS

Resize ZFS Storage Pool op FreeBSD / TrueOS

Bij het upgraden van een VPS-exemplaar op Vultr wordt het formaat van een Linux-bestandssysteem automatisch aangepast. Bij het uitvoeren van FreeBSD met het geavanceerde ZFS-bestandssysteem, enige handmatige wor

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek

ReactOS: is dit de toekomst van Windows?

ReactOS: is dit de toekomst van Windows?

ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.

Blijf verbonden via WhatsApp Desktop-app 24 * 7

Blijf verbonden via WhatsApp Desktop-app 24 * 7

WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

Wat is een logboekbestandssysteem en hoe werkt het?

Wat is een logboekbestandssysteem en hoe werkt het?

Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.