Come installare WordPress con LAMP e Lets Encrypt SSL gratuito su Rocky Linux
Su questa pagina
- Prerequisiti
- Installazione del server web Apache/Httpd
- Installazione dei pacchetti PHP
- Installazione e configurazione del server MariaDB
- Crea database e utente per WordPress
- Scarica WordPress
- Impostazione di WordPress
- Abilita httpd mod_ssl su Rocky Linux
- Genera SSL Letsencrypt su Rocky Linux
- Impostazione dell'host virtuale per WordPress
- Installazione di WordPress
- Conclusione
WordPress è uno dei sistemi di gestione dei contenuti (CMS) più popolari in questo momento, utilizzato da milioni di persone. Il progetto WordPress è iniziato nel 2003 come fork del CMS \b2/cafelog\, viene fornito con una licenza GPLv2 e diventa un software gratuito e open-source.
Per ora, oltre il 34% dei siti Web su Internet utilizza WordPress. Uno dei motivi per cui WordPress è così popolare è perché è semplice, facile da usare e flessibile. Con centinaia/migliaia di plug-in, WordPress può essere utilizzato in diversi modi, come semplice motore di blog, siti Web di e-commerce, semplice profilo aziendale, community di forum online, ecc.
In questa guida imparerai come installare WordPress CMS su Rocky Linux 8.4. Installerai WordPress sotto lo stack LAMP (Linux, Apache2/httpd, MySQL/MariaDB e PHP).
Prerequisiti
- Un server Rocky Linux. Assicurarsi che tutti i pacchetti siano aggiornati all'ultima versione.
- Un utente con privilegi di root. Questo utente otterrà i privilegi di root tramite il comando sudo.
Installazione del server web Apache/Httpd
Inizialmente, installerai il server Web Apache o httpd sul server Rocky Linux.
1. Eseguire il comando dnf di seguito per installare il server web httpd.
sudo dnf install httpd
Digita \y\ e premi \Invio\ per confermare e installare i pacchetti httpd.
2. Se l'installazione è completa, abilitare e avviare il servizio httpd utilizzando il seguente comando.
sudo systemctl enable httpd
sudo systemctl start httpd
Il comando \systemctl enable\ abiliterà l'avvio del servizio ad ogni avvio.
3. Successivamente, eseguire il comando seguente per verificare il servizio httpd.
sudo systemctl status httpd
E otterrai un risultato simile come di seguito.
Come si vede nello screenshot in alto, httpd è attivo e in esecuzione.
Installazione di pacchetti PHP
Per ora, il CMS WordPress necessita di PHP 7.4 o superiore per l'installazione. Ora installerai PHP 7.4 dal repository remi.
1. Eseguire il seguente comando per aggiungere epel e remi Repository
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
Digita \y\ e premi \Invio\ per aggiungere il repository epel e remi.
Al termine dell'installazione, verificare il repository epel e Remi utilizzando il seguente comando.
sudo dnf repolist
Vedrai il repository epel e remi nell'elenco dei repository.
2. Successivamente, reimpostare il modulo di repository predefinito PHP. Quindi abilitare il modulo per PHP 7.4 dal repository remi.
Esegui il seguente comando per reimpostare il repository del modulo php predefinito.
sudo dnf module reset php
Nel processo, digita \y\ e premi \Invio\ per aggiungere il repository remi della chiave gpg.
Successivamente, esegui il comando seguente per abilitare il modulo php dal repository remi.
sudo dnf module enable php:remi-7.4
Digita \y\ per confermare e premi \Invio\ per continuare. Ora sei pronto per installare PHP e tutte le estensioni per l'installazione di WordPress.
3. Esegui il seguente comando per installare php con alcune estensioni necessarie.
sudo dnf install php php-common php-mysqlnd php-gd php-imagick php-bcmath
Una volta completata l'installazione, vai al passaggio successivo.
Installazione e configurazione del server MariaDB
Per questa fase, installerai il server del database MariaDB, proteggerai la distribuzione di MariaDB e creerai un nuovo database e utente per WordPress.
1. Per installare il server del database MariaDB, eseguire il comando seguente.
sudo dnf install mariadb mariadb-server
Attendere l'installazione di mariadb.
2. Una volta completata l'installazione, abilitare e avviare il servizio MariaDB utilizzando il seguente comando.
sudo systemctl enable mariadb
sudo systemctl start mariadb
4. Il mariadb sarà attivo e in esecuzione, esegui il seguente comando per verificare il servizio MariaDB.
sudo systemctl status mariadb
Se il servizio mariadb è in esecuzione, otterrai un output simile al seguente.
5. Successivamente, è necessario proteggere la distribuzione di MariaDB impostando la password di root per MariaDB e rimuovendo alcune configurazioni predefinite. Per fare ciò, puoi utilizzare lo strumento da riga di comando mysql_secure_installation, che è incluso nell'installazione predefinita di MariaDB.
Eseguire il comando \mysql_secure_installation\ di seguito.
mysql_secure_installation
Al primo, ti verrà chiesto di impostare la password di root mariadb.
Digita la tua forte password di root mariadb e ripeti, quindi premi \Invio\ per continuare.
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
Ora digita \Y\ e premi \Invio\ per rimuovere l'utente anonimo predefinito dal server mariadb.
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] Y
... Success!
Successivamente, disabilita l'accesso remoto per l'utente root predefinito. Digita \Y\ e premi \Invio\ per continuare.
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y
... Success!
Digita nuovamente \Y\ per rimuovere il database predefinito \test\ e premi \Invio\.
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
E l'ultimo, digitare di nuovo \Y\ per ricaricare tutti i privilegi delle tabelle per applicare una nuova configurazione.
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
... Success!
Ora il processo è completo e vedrai il seguente output.
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
Crea database e utente per WordPress
1. accedere alla shell mariadb utilizzando il comando mysql di seguito.
mysql -u root -p
2. Ora esegui la seguente query mysql per creare un nuovo database \wordpress_db\.
CREATE DATABASE wordpress_db;
3. Eseguire la seguente query per creare un nuovo utente del database \wpuser\. Cambia la \strongpassword\ con la tua password sicura.
CREATE USER IDENTIFIED BY 'strongpassword';
4. Consentire all'utente \wpuser\ di accedere e scrivere il \wordpress_db\ utilizzando la seguente query.
GRANT ALL PRIVILEGES ON wordpress_db.* to ;
5. Ora ricarica tutti i privilegi delle tabelle per applicare la nuova configurazione del database.
FLUSH PRIVILEGES;
Quindi puoi digitare \esci\ e premere \Invio\ per uscire dalla shell mariadb.
Scarica wordpress
1. Modificare la directory di lavoro in \/var/www\ e scaricare il codice sorgente di WordPress utilizzando il comando wget come di seguito.
cd /var/www/
wget https://wordpress.org/latest.tar.gz
2. Estrai il codice sorgente di WordPress \latest.tar.gz\ e otterrai una nuova directory \wordpress\, quindi cambia il proprietario della directory \wordpress\ in \apache\ user.
tar -xzvf latest.tar.gz
sudo chown -R apache:apache wordpress/
Ora sei pronto per configurare l'installazione di WordPress.
Impostazione WordPress
A questo punto, modificherai la configurazione di WordPress \wp-config.php\, imposterai i dettagli del database e aggiungerai la chiave di autenticazione e i salt (per una maggiore protezione di sicurezza).
1. Per prima cosa, cambia la directory di lavoro in \/var/www/wordpress\.
cd /var/www/wordpress/
2. Copiare la configurazione di esempio \wp-config-sample.php\ in \wp-config.php\, quindi modificare il file di configurazione utilizzando l'editor nano.
cp wp-config-sample.php wp-config.php
nano wp-config.php
3. Modificare i dettagli del database (DB_NAME, DB_USER e DB_PASSWORD) con le informazioni del database.
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'wordpress_db' );
/** MySQL database username */
define( 'DB_USER', 'wpuser' );
/** MySQL database password */
define( 'DB_PASSWORD', 'strongpassword' );
/** MySQL hostname */
define( 'DB_HOST', 'localhost' );
/** Database charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8' );
/** The database collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );
4. Visita questo link per generare le chiavi di autenticazione e i salt, quindi incolla la configurazione nel file \wp-config.php\ come di seguito.
/**#@+
* Authentication unique keys and salts.
*
* Change these to different unique phrases! You can generate these using
* the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}.
*
* You can change these at any point in time to invalidate all existing cookies.
* This will force all users to have to log in again.
*
* @since 2.6.0
*/
define('AUTH_KEY', 'v$4/xyGF7t!^(-Xr~lUKT,1oBxOpxzXPAs)kPE_C%Oc^~^%JN]C-y(k>~Wj+JZRM');
define('SECURE_AUTH_KEY', 'y<|#/jfYs,Y_l;{[`2uNp9SMNH8zNGK[eb&RYqb-+bd<a,Fi<9z9rj2_#=R(5O&s');
define('LOGGED_IN_KEY', '&U8Z{I~,xV%D>FDq+Qx{@hmv:~G/<+_8fPvQ(m%oR.A)%ZPtp``sZWK! !G6C%UYPrKU{xQJD.<bd45');
/**#@-*/
Premi \Ctrl+x\ e digita \y\ per salvare e uscire.
Abilita httpd mod_ssl su Rocky Linux
Per questo tutorial, installerai WordPress e proteggerai con SSL da Letsencrypt. Quindi è necessario abilitare mod_ssl per il server httpd su Rocky Linux.
1. Installa il pacchetto \mod_ssl\ usando il comando dnf qui sotto.
sudo dnf install mod_ssl mod_http2
2. Successivamente, genera l'SSL predefinito per localhost utilizzando il comando openssl di seguito.
openssl req -newkey rsa:2048 -nodes -keyout /etc/pki/tls/private/localhost.key -x509 -days 365 -out /etc/pki/tls/certs/localhost.crt
Puoi semplicemente premere invio per tutte le domande perché questo certificato verrà utilizzato solo per localhost, non per il nome di dominio WordPress.
3. Ora esegui il seguente comando per assicurarti che mod_ssl sia disponibile sul server web httpd.
apachectl -M | grep ssl
Se hai l'output come \ssl\, allora il mod_ssl è abilitato. Altrimenti, otterrai un output vuoto.
Genera SSL Letsencrypt su Rocky Linux
In questa fase, installerai lo strumento cerbot e genererai i certificati SSL per l'installazione di WordPress. Genererai SSL Letsencrypts con il plugin webroot.
1. Eseguire il seguente comando per installare lo strumento certbot per la generazione di SSL Letsencrypt.
sudo dnf install certbot
Attendere il processo di installazione.
2. Una volta completata l'installazione, creare una nuova directory per l'autorizzazione letsencrypt utilizzando i seguenti comandi.
sudo mkdir -p /var/lib/letsencrypt/.well-known
sudo chgrp apache /var/lib/letsencrypt
sudo chmod g+s /var/lib/letsencrypt
3. Successivamente, modificare la directory di lavoro in \/etc/httpd/conf.d/\ e creare una nuova configurazione \well-known.conf\ utilizzando l'editor nano.
cd /etc/httpd/conf.d/
nano well-known.conf
Aggiungere le seguenti configurazioni.
Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/"
<Directory "/var/lib/letsencrypt/">
AllowOverride None
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
Require method GET POST OPTIONS
</Directory>
Premi \Ctrl+x\ e digita \y\ per salvare e uscire.
4. Ora eseguire i seguenti comandi per verificare la configurazione httpd e riavviare il servizio httpd.
apachectl configtest
sudo systemctl restart httpd
Se non hai errori, sei pronto per generare SSL Letsencrypt con il plugin webroot.
5. Prima di generare SSL Letsencrypt, assicurati che il tuo nome di dominio sia risolto nell'indirizzo IP del server. Successivamente, puoi generare SSL Letsencrypt con il plug-in webroot eseguendo il comando certbot di seguito. Inoltre, cambia l'indirizzo e-mail e il nome di dominio con il tuo.
sudo certbot certonly --agree-tos --email www.domain.com
Al termine del processo, i certificati SSL saranno disponibili nella directory \/etc/letsencrypt/live/domain.com/\.
Configurazione dell'host virtuale per WordPress
In questo passaggio, aggiungerai una nuova configurazione host virtuale apache/httpd per WordPress.
1. Modificare la directory di lavoro in \/etc/httpd/conf.d\ e creare una nuova configurazione \wordpress.conf\ utilizzando nano editor.
cd /etc/httpd/conf.d/
nano wordpress.conf
Modifica il nome di dominio dettagliato e la directory del percorso SSL con i tuoi e incolla la configurazione nel file \wordpress.conf\.
# httpd port 80
<VirtualHost *:80>
ServerName domain.com
ServerAlias www.domain.com
# automatic redirect http to https
Redirect permanent / https://domain.com/
</VirtualHost>
# httpd port 443/ssl
<VirtualHost *:443>
ServerName domain.com
ServerAlias www.domain.com
# WordPress path directory
DocumentRoot /var/www/wordpress
Protocols h2 http:/1.1
<If "%{HTTP_HOST} == 'www.domain.com'">
Redirect permanent / https://domain.com/
</If>
ErrorLog /var/log/httpd/domain.com-error.log
CustomLog /var/log/httpd/domain.com-access.log combined
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/domain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/domain.com/privkey.pem
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
SSLCompression off
<Directory /var/www/wordpress/>
Options FollowSymlinks
AllowOverride All
Require all granted
</Directory>
<Directory /var/www/wordpress/>
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*) index.php [PT,L]
</Directory>
</VirtualHost>
Premere \Ctrl+x\ e digitare \Y\ per salvare la configurazione ed uscire.
3. Successivamente, eseguire il seguente comando per verificare la configurazione httpd.
sudo apachectl configtest
Se non ricevi errori, riavvia il servizio httpd utilizzando il comando seguente.
sudo systemctl restart httpd
Ora sei pronto per l'installazione di WordPress tramite il browser web.
Installazione di WordPress
Se tutta la relativa configurazione del server è completa, puoi accedere alla tua installazione di WordPress con il browser web.
1. Apri il tuo browser web e digita l'indirizzo URL della tua installazione di WordPress.
Ora verrai reindirizzato alla connessione HTTPS sicura e otterrai la pagina come segue.
Seleziona la lingua per l'installazione di WordPress, quella predefinita è \Inglese (stati uniti)\, quindi fai clic su \Continua\.
2. Ora digita il tuo \Titolo del sito\ e digita un nuovo nome utente, e-mail e password per l'installazione di WordPress.
Quindi fare clic sul pulsante \Installa WordPress\ per avviare l'installazione.
3. Al termine dell'installazione, verrà visualizzata la pagina seguente.
Fare clic sul pulsante Accedi per continuare.
4. Ora verrai reindirizzato alla pagina di accesso di WordPress.
Digita il nome utente e la password, quindi fai clic su \Accedi\.
5. E otterrai la pagina indice predefinita di WordPress.
6. Sposta il cursore sul menu \Il mio blog\ e fai clic su \Dashboard\ o \Temi\, e otterrai la dashboard di amministrazione di WordPress come di seguito.
7. Per installare il plug-in di WordPress, sposta il cursore sul menu \Plugin\ e fai clic su Aggiungi nuovo, quindi verrai reindirizzato alla pagina del plug-in.
Scegli il plug-in che desideri installare e fai clic su \Installa ora\, quindi puoi fare clic sul pulsante \Attiva\ per attivare il plug-in.
Conclusione
Congratulazioni! hai installato correttamente WordPress CMS con LAMP Stack sul server Rocky Linux. Di seguito sono riportate le cose che hai imparato in questo tutorial:
- Installazione di LAMP Stack
- Protezione dell'implementazione di MariaDB
- Crea un database e un utente mysql dalla shell mysql/mariadb
- Impostazione del server web apache/httpd per il plug-in webroot di certbot
- Genera SSL Letsencrypt
- E l'ultima è un'installazione di WordPress
Per il passaggio successivo, puoi scegliere o acquistare temi e installarli sul tuo WordPress.