WordPress · 12 min read · Jan 26, 2026

Distribuire WordPress su FAMP in FreeBSD 11.1

Questa guida mostrerà come installare e configurare il CMS open source più popolare utilizzato su Internet, WordPress, su FAMP in FreeBSD 11.x ultima versione. FAMP è un acronimo che descrive il seguente pacchetto software: F reeBSD 11.1 sistema operativo simile a Unix, A pache HTTP server, uno dei server web open-source più popolari su Internet, M ariaDB RDBMS (sistema di gestione di database relazionali), che è un fork del motore di database MySQL, e P HP linguaggio di programmazione lato server.

REQUISITI:

  • Installazione di FreeBSD 11.x eseguita da zero o nessun software FAMP precedentemente installato nel sistema.
  • La scheda di interfaccia di rete configurata con un indirizzo IP statico.
  • Server SSH installato e configurato per l’accesso remoto o accesso diretto alla console della riga di comando del server.
  • Preferibilmente un nome di dominio registrato (non assolutamente necessario in questo tutorial perché utilizzeremo l’indirizzo IP statico del server per visitare il sito web).
  • Un account sudo sul server configurato con privilegi di root o accesso diretto all’account root.

Passo 1 - Installare MariaDB

Prima di installare il pacchetto FAMP nel tuo server FreeBSD, accedi con un account con privilegi di root e assicurati che il tuo sistema sia completamente aggiornato emettendo i seguenti comandi.

freebsd-update fetch
freebsd-update install
pkg update
pkg upgrade

Per facilitare l’amministrazione del server dalla riga di comando assicurati di installare anche i seguenti pacchetti:

pkg install bash bash_completion nano

Nano è un popolare editor da riga di comando Linux. In FreeBSD, ee è l’editor di file predefinito. L’editor Vi è anche installato, per impostazione predefinita, in FreeBSD.

Per distribuire un sito web WordPress su un server, è assolutamente imperativo connettersi a un database relazionale. Uno dei RDBMS più utilizzati in congiunzione con WordPress è MySQL/MariaDB. Quindi, il primo componente da installare nel nostro stack FAMP sarebbe il server di database MySQL. Per cercare le versioni e i componenti del database MariaDB disponibili, che saranno utilizzati in questa configurazione a favore del database MySQL, emetti uno dei seguenti comandi nella console della tua macchina.

ls -al /usr/ports/databases/ | grep mariadb
pkg search -o mariadb

pkg search -o mariadb

pkg search -o mariadb result

Quindi, installa l’ultima versione del server di database MariaDB in FreeBSD, eseguendo il seguente comando:

pkg install mariadb102-client mariadb102-server

Nel passaggio successivo, assicurati di abilitare il demone MariaDB in FreeBSD e avviare il servizio del database eseguendo i seguenti comandi.

sysrc mysql_enable="YES"
service mysql-server start

Successivamente, inizia a proteggere il database MaraDB eseguendo lo script mysql_secure_installation. Usa il seguente esempio di installazione per proteggere il database MariaDB. Assicurati anche di scegliere una password forte per l’utente root di MySQL.

/usr/local/bin/mysql_secure_installation
*NOTA: È RACCOMANDATO ESEGUIRE TUTTE LE PARTI DI QUESTO SCRIPT PER TUTTI I SERVER MariaDB IN USO PRODUZIONE! PER FAVORE LEGGI OGNI PASSO ATTENTAMENTE!*
* *
*Per accedere a MariaDB per proteggerlo, avremo bisogno della password attuale per l'utente root. Se hai appena installato MariaDB e non hai ancora impostato la password di root, la password sarà vuota, quindi dovresti semplicemente premere invio qui.*
* *
*Inserisci la password attuale per root (premi invio per nessuna):*
*OK, password utilizzata con successo, procedendo...*
* *
*Impostare la password di root garantisce che nessuno possa accedere all'utente root di MariaDB senza la corretta autorizzazione.*
*Impostare la password di root? [Y/n] y*
*Nuova password:*
*Reinserisci la nuova password:*
*Password aggiornata con successo!*
*Ricaricamento delle tabelle di privilegio..*
* ... Successo!*
*Per impostazione predefinita, un'installazione di MariaDB ha un utente anonimo, che consente a chiunque di accedere a MariaDB senza dover avere un account utente creato per loro. Questo è destinato solo per test e per rendere l'installazione un po' più fluida. Dovresti rimuoverli prima di passare a un ambiente di produzione.*
*Rimuovere gli utenti anonimi? [Y/n] y*
* ... Successo!*
*Normalmente, l'utente root dovrebbe essere autorizzato a connettersi solo da 'localhost'. Questo garantisce che qualcuno non possa indovinare la password di root dalla rete.*
*Disabilitare l'accesso remoto per root? [Y/n] y*
* ... Successo!*
*Per impostazione predefinita, MariaDB viene fornito con un database chiamato 'test' a cui chiunque può accedere. Questo è anche destinato solo per test e dovrebbe essere rimosso prima di passare a un ambiente di produzione.*
*Rimuovere il database di test e l'accesso ad esso? [Y/n] y*
* - Eliminazione del database di test...*
* ... Successo!*
* - Rimozione dei privilegi sul database di test...*
* ... Successo!*
*Ricaricare le tabelle di privilegio garantirà che tutte le modifiche apportate finora abbiano effetto immediato.*
*Ricaricare le tabelle di privilegio ora? [Y/n] y*
* ... Successo!*
*Pulizia...*
*Tutto fatto! Se hai completato tutti i passaggi sopra, la tua installazione di MariaDB dovrebbe ora essere sicura.*
*Grazie per aver utilizzato MariaDB!*

Il servizio MariaDB è configurato, per impostazione predefinita, per legarsi e ascoltare le connessioni di rete su 0.0.0.0:3306/TCP socket di rete. Eseguendo il comando sockstat con i flag -4 -6 noterai lo stato del socket di MariaDB come illustrato nello screenshot qui sotto.

sockstat -4 -6


Questo comportamento del server MySQL è soggetto a problemi di sicurezza, quindi disabiliteremo completamente l’accesso remoto a MariaDB legando il demone solo all’interfaccia di loopback, emettendo il comando qui sotto. Dovrai riavviare il demone per riflettere le modifiche.

sysrc mysql_args="--bind-address=127.0.0.1".
service mysql-server restart

Tuttavia, emetti di nuovo il comando sockstat per determinare il nuovo stato del socket di rete di MariaDB. Ormai, MariaDB dovrebbe ascoltare le connessioni solo dall’interfaccia di loopback, come mostrato nello screenshot qui sotto.

sockstat -4

Infine, dopo aver protetto il demone del database MySQL, crea un database MariaDB per l’installazione di WordPress. Accedi a MariaDB dalla console del server ed emetti i seguenti comandi per creare il database e l’utente che verrà utilizzato per amministrare il database di WordPress. Inserisci la password di root di MySQL nel prompt e assicurati di sostituire il nome del database, l’utente del database e la password di conseguenza.

mysql –u root –p
*create database wordpress;*
*grant all privileges on wordpress.* to 'wpuser'@'localhost' identified by 'wppassword';*
*flush privileges;*
*exit*

mysql –u root –p

Passo 2 – Installare Apache Web Server

Il prossimo servizio che devi installare per completare lo stack FAMP è il server Apache HTTP. I repository PORTS di FreeBSD vengono forniti con due versioni precompilate del server web Apache. Per elencare tutte le versioni di runtime di Apache, emetti uno dei seguenti comandi nel terminale.

pkg search apache2
ls /usr/ports/www/ | grep apache

pkg search apache2

grep apache2

Per questa configurazione personalizzata con WordPress, installeremo la versione 2.4 del server Apache HTTP emettendo il seguente comando.

pkg install apache24

Dopo che il pacchetto del server web Apache con tutte le dipendenze è stato installato nel sistema, assicurati di abilitare e avviare il demone con i seguenti comandi.

sysrc apache24_enable="yes"
service apache24 start

Per testare la configurazione di Apache, apri un browser e visita la pagina web predefinita tramite il protocollo HTTP inserendo l’indirizzo IP del tuo server o il FQDN del sistema nel campo URL, come illustrato nell’immagine qui sotto. Un messaggio che dice “ Funziona! “ dovrebbe essere visualizzato nel tuo browser.

http://server_IP or_FQDN

It works page

La directory DocumentRoot del server HTTP Apache si trova nel percorso /usr/local/www/apache24/data/ in FreeBSD 11.x. Copiamo i file di installazione di WordPress in quella posizione più tardi. Inoltre, assicurati di rimuovere il file index.html predefinito emettendo il seguente comando.

rm /usr/local/www/apache24/data/index.html

Passo 3 – Installare PHP

Simile al server web Apache, FreeBSD 11.x PORTS fornisce più versioni binarie precompilate del linguaggio PHP: PHP 5.6, PHP 7.0 e PHP 7.1. Per visualizzare tutte le versioni di PHP emetti uno dei seguenti comandi.

ls /usr/ports/lang/ | grep php
pkg search –o php

pkg search –o php

pkg search –o php result

In questo tutorial personalizzato utilizzeremo la versione PHP 7.1 per l’installazione di WordPress. Emetti il comando qui sotto per installare PHP con tutti i moduli richiesti affinché WordPress funzioni correttamente.

pkg install php71 php71-mysqli mod_php71 php71-mbstring php71-mcrypt php71-zlib php71-curl php71-gd php71-json**

Nel passaggio successivo, utilizzando il tuo editor di testo preferito, crea un nuovo file di configurazione php.conf per il server web Apache nella directory /usr/local/etc/apache24/Includes/ e aggiungi il contenuto qui sotto.

nano /usr/local/etc/apache24/Includes/php.conf

estratto del file php.conf:

*  
    DirectoryIndex index.php index.html  
      
        SetHandler application/x-httpd-php  
      
      
        SetHandler application/x-httpd-php-source  
      
*

php.conf

Dopo aver terminato di modificare il file, assicurati di creare un nuovo file phpinfo.php nel percorso predefinito del webroot di Apache eseguendo il comando qui sotto per testare se il gateway PHP di Apache funziona come previsto.

echo '' | tee /usr/local/www/apache24/data/phpinfo.php

Infine, riavvia il servizio Apache per applicare le modifiche e naviga all’URL qui sotto per visualizzare la configurazione del server PHP lato server come illustrato nello screenshot seguente.

service apache24 restart

http://server_IP-or-FQDN/phpinfo.php

phpinfo

Inoltre, potresti voler creare il file di configurazione PHP ini per Apache e modificare l’istruzione timezone per riflettere la posizione geografica del tuo server. L’elenco dei fusi orari PHP supportati può essere trovato al seguente link: http://php.net/manual/en/timezones.php

Copia il file php.ini-production per creare il file di configurazione predefinito per PHP. Quindi, modifica il file php.ini per cambiare la configurazione del fuso orario di PHP.

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

estratto del file php.ini:

*date.timezone = Continente/Città*

date.timezone = Continente/Città

Per applicare la nuova impostazione PHP, è necessario riavviare il servizio Apache. Quindi, visita di nuovo la pagina phpinfo.php e scorri fino all’impostazione date per vedere se la modifica è stata applicata con successo, come illustrato nello screenshot qui sotto.

service apache24 restart

timezone set in php

Passo 4 – Installare WordPress

Per installare WordPress su FAMP in FreeBSD, prima scarica l’ultima versione dell’archivio di installazione tarball nel tuo sistema utilizzando l’utilità wget. Estrai l’archivio scaricato e copia tutti i file di installazione di WordPress nel percorso webroot di Apache emettendo i seguenti comandi.

wget https://wordpress.org/latest.tar.gz
tar xfz latest.tar.gz
cp –rf wordpress/* /usr/local/www/apache24/data/

download and unpack WordPress

Successivamente, regola i permessi appropriati per il percorso webroot del tuo server per l’account del gruppo di runtime di Apache, al fine di concedere al server web i permessi di scrittura nella directory di installazione di WordPress.

chown -R root:www /usr/local/www/apache24/data/
chmod -R 775 /usr/local/www/apache24/data/

Ora, il tuo server web è pronto per il processo di installazione di WordPress. Apri un browser e naviga all’indirizzo IP del tuo server o FQDN e dovrebbe apparire la prima schermata di installazione. Clicca sul pulsante Iniziamo! per avviare l’installazione.

WordPress install wizard

Nella schermata successiva inserisci il nome del database MariaDB, il nome utente del database di WordPress e la password e l’host del database. Poiché MariaDB e il server web Apache sono installati sullo stesso nodo, utilizza localhost per l’host del database. Lascia il valore predefinito del prefisso della tabella e premi il pulsante Invia per continuare.

database user and password

Dopo che il file di configurazione del database è stato creato, clicca sul pulsante Esegui l’installazione e, nella schermata successiva, aggiungi un titolo per il tuo sito web, un nome utente per amministrare il sito web e un indirizzo email. Assicurati di scegliere una password forte per il nome utente. Inoltre, dovresti evitare di utilizzare nomi utente semplici come admin, amministratore, root ecc., a causa delle implicazioni di sicurezza. Quando hai finito, clicca sul pulsante Installa WordPress per completare l’installazione.

run the install

set username and password

Dopo che WordPress è stato installato con successo, accedi al pannello di controllo dell’amministratore con le credenziali create nel passaggio precedente e inizia a gestire il tuo sito web.

Login to wordpress

Wordpress dashboard

Per aggiornare o installare plugin o temi o caricare immagini o modificare altri aspetti di WordPress che richiedono il download di file da Internet, aggiungi la seguente riga al file wp-config.php di WordPress emettendo il seguente comando con privilegi di root.

echo "define('FS_METHOD', 'direct');" | tee –a /usr/local/www/apache24/data/wp-config.php

Questa riga assicura che WordPress possa scaricare e installare file o aggiornamenti online senza eseguire un server FTP sull’host. Tuttavia, questo metodo potrebbe non essere la scelta migliore nel caso in cui WordPress sia installato su un piano di hosting condiviso. Nello screenshot qui sotto un aggiornamento per un plugin è stato applicato con successo utilizzando il FS_METHOD senza chiedere un account ftp.

Wordpress Plugins

Infine, per poter cambiare la struttura dei link interni permanenti di WordPress, devi abilitare rewrite per il server HTTP Apache . Per abilitare il modulo di riscrittura, prima apri il file di configurazione principale di Apache e aggiungi il seguente blocco di codice prima della dichiarazione come illustrato nello screenshot qui sotto.

nano /usr/local/etc/apache24/httpd.conf

estratto del file httpd.conf:

*  
                Require all granted           
                AllowOverride All  
***

Edit httpd.conf file

Quindi, chiudi il file e decommenta la riga LoadModule di riscrittura emettendo il comando qui sotto che rimuove il segno di cancelletto precedente. Usa il filtro grep per visualizzare la riga LoadModule di riscrittura . Infine, controlla il file di configurazione di Apache per potenziali errori di sintassi e riavvia il servizio per applicare le modifiche.

grep rewrite /usr/local/etc/apache24/httpd.conf
sed -i.bak '/rewrite/s/^#//g' /usr/local/etc/apache24/httpd.conf
grep rewrite /usr/local/etc/apache24/httpd.conf
apachectl -t
service apache24 restart

Restart apache

Ora, puoi cambiare la struttura dei link permanenti di WordPress navigando su Dashboard ->Impostazioni -> Permalink. Scegli la tua opzione di permalink preferita per la struttura dell’URL dalle opzioni dello schermo e premi il pulsante Salva modifiche per applicare le modifiche. Un’ottima opzione per la SEO è il permalink Nome del post.

Dashboard ->Impostazioni -> Permalink

Nel caso in cui l’opzione di permalink non venga applicata, apri e indaga il contenuto del file .htaccess dal percorso webroot del tuo server. Il contenuto qui sotto dovrebbe essere inserito automaticamente in questo file. Se non lo è, aggiorna manualmente il contenuto qui sotto nel file .htaccess o controlla i permessi del file. L’utente o il gruppo di runtime di Apache dovrebbe avere i permessi di scrittura su questo file.

RewriteEngine On  
RewriteBase /  
RewriteRule ^index\.php$ - [L]  
RewriteCond %{REQUEST_FILENAME} !-f  
RewriteCond %{REQUEST_FILENAME} !-d  
RewriteRule . /index.php [L]  

Questo è tutto! Hai distribuito con successo un sito web WordPress su un server web Apache, un database MariaDB e un linguaggio di programmazione PHP in FreeBSD 11.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.