GNU/Linux >> Linux Esercitazione >  >> Rocky Linux

Come installare WordPress con LAMP e Lets Encrypt SSL gratuito su Rocky Linux

WordPress è uno dei sistemi di gestione dei contenuti (CMS) più popolari in questo momento, è utilizzato da milioni di persone. Il progetto WordPress nato 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 plugin, WordPress può essere utilizzato in diversi modi, come un semplice motore di blogging, 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. Assicurati 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

All'inizio, 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 comando seguente.

sudo systemctl enable httpd
sudo systemctl start httpd

"abilita systemctl Il comando " abiliterà l'avvio del servizio ad ogni avvio.

3. Successivamente, esegui il comando seguente per verificare il servizio httpd.

sudo systemctl status httpd

E otterrai un risultato simile come di seguito.

Come si vede nella schermata 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 comando seguente 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, verifica il repository epel e Remi utilizzando il comando seguente.

sudo dnf repolist

Vedrai il repository epel e remi nell'elenco dei repository.

2. Quindi, ripristina il modulo di repository predefinito PHP. Quindi abilita il modulo per PHP 7.4 dal repository remi.

Esegui il comando seguente per ripristinare 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 premere "Invio " per continuare. Ora sei pronto per installare PHP e tutte le estensioni per l'installazione di WordPress.

3. Esegui il comando seguente 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 un nuovo utente per WordPress.

1. Per installare il server del database MariaDB, eseguire il comando seguente.

sudo dnf install mariadb mariadb-server

Attendi 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, eseguire il comando seguente per verificare il servizio MariaDB.

sudo systemctl status mariadb

Se il servizio mariadb è in esecuzione, otterrai un output simile a quello di seguito.

5. Successivamente, è necessario proteggere la distribuzione di MariaDB impostando la password di root per MariaDB e rimuovendo alcune configurazioni predefinite. Per farlo, puoi utilizzare lo strumento da riga di comando 'mysql_secure_installation ', che è incluso nell'installazione predefinita di MariaDB.

Esegui "mysql_secure_installation " comando sotto.

mysql_secure_installation

All'inizio, ti verrà chiesto di impostare la password di root di mariadb.

Digita la tua password root di mariadb forte 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 predefinito 'root '. Digita "S " 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 "S " di nuovo 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, digita "Y " di nuovo 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. accedi alla shell mariadb usando il comando mysql qui sotto.

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 query seguente per creare un nuovo utente del database "wpuser ". Modifica la "password " con la tua password complessa.

CREATE USER [email protected] IDENTIFIED BY 'strongpassword';

4. Consenti all'utente "wpuser" di accedere e scrivere "wordpress_db " utilizzando la query seguente.

GRANT ALL PRIVILEGES ON wordpress_db.* to [email protected];

5. Ora ricarica tutti i privilegi delle tabelle per applicare la nuova configurazione del database.

FLUSH PRIVILEGES;

Quindi puoi digitare "chiudi " e premi "Invio " per uscire dalla shell mariadb.

Scarica WordPress

1. Cambia la directory di lavoro in "/var/www" e scarica il codice sorgente di WordPress usando 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 utente "apache".

tar -xzvf latest.tar.gz
sudo chown -R apache:apache wordpress/

Ora sei pronto per configurare l'installazione di WordPress.

Impostazione di WordPress

A questo punto, modificherai la configurazione di WordPress "wp-config.php" , imposta i dettagli del database e aggiungi la chiave di autenticazione e i salt (per una protezione di sicurezza aggiuntiva).

1. Innanzitutto, cambia la directory di lavoro in "/var/www/wordpress ".

cd /var/www/wordpress/

2. Copia la configurazione di esempio "wp-config-sample.php " a "wp-config.php ", quindi modifica il file di configurazione utilizzando nano editor.

cp wp-config-sample.php wp-config.php
nano wp-config.php

3. Modifica 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 tuo "wp-config.php " file 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{[email protected]?ZD|_GgYby)z,l5jZDVqLC#&#+]#/6zh1-JQf6n6+X');
define('NONCE_KEY',        'pQv#Z_;q$4E: `AV.0eu-L7JA_BN-dvHV#W|;#s7>PTA<Vfs13S|-pE7RYV8+LX)');
define('AUTH_SALT',        '?;-?bWr%zTbx7lphp&]=IQ-P8D?ItOzs?4rGtaNI,kypb4xj$&X|ueIDA}5v?sj|');
define('SECURE_AUTH_SALT', 'mn<t0DVAfMX*SpqKC7NE}xFNZ|4c_N{s7|s-iKR4Jvc#GPc.9H:aW9%k2r?nAe;Z');
define('LOGGED_IN_SALT',   'ni D0H;5wrM3NQLWe<R-Y$j-_{)4{v*abQ(kAbhNrmi&+EXFMW-Gv7SQb6ya[)!s');
define('NONCE_SALT',       '[email protected]@hmv:~G/<+_8fPvQ(m%oR.A)%ZPtp``sZWK! !G6C%UYPrKU{xQJD.<bd45');
/**#@-*/

Premi "Ctrl+x " e digita "y" per salvare ed 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. dopodiché, 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 di WordPress.

3. Ora esegui il seguente comando per assicurarti che mod_ssl sia disponibile sul server web httpd.

apachectl -M | grep ssl

Se hai un output come "ssl ", quindi 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 comando seguente per installare lo strumento certbot per la generazione di SSL Letsencrypt.

sudo dnf install certbot

Attendi il processo di installazione.

2. Una volta completata l'installazione, creare una nuova directory per l'autorizzazione Letencrypt 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. Quindi, cambia la directory di lavoro in "/etc/httpd/conf.d/" e crea una nuova configurazione "well-known.conf" usando nano editor.

cd /etc/httpd/conf.d/
nano well-known.conf

Aggiungi 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 ed uscire.

4. Ora esegui i seguenti comandi per verificare la configurazione di 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 email e il nome di dominio con il tuo.

sudo certbot certonly --agree-tos --email [email protected] --webroot -w /var/lib/letsencrypt/ -d domain.com -d www.domain.com

Al termine del processo, i tuoi certificati SSL saranno disponibili in "/etc/letsencrypt/live/domain.com/ " directory.

Configurazione dell'host virtuale per WordPress

In questo passaggio, aggiungerai una nuova configurazione di host virtuale apache/httpd per WordPress.

1. Modificare la directory di lavoro in "/etc/httpd/conf.d " e crea una nuova configurazione "wordpress.conf " usando l'editor nano.

cd /etc/httpd/conf.d/
nano wordpress.conf

Modificare il nome di dominio dettagliato e la directory del percorso SSL con la propria e incollare 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>

Premi "Ctrl+x " e digita "Y " per salvare la configurazione ed uscire.

3. Quindi, eseguire il comando seguente per verificare la configurazione httpd.

sudo apachectl configtest

Se non hai riscontrato alcun errore, 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.

http://dominio.com

Ora verrai reindirizzato alla connessione HTTPS sicura e otterrai la pagina come segue.

Seleziona la lingua per l'installazione di WordPress, l'impostazione 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 la tua installazione di WordPress.

Quindi fare clic sul pulsante "Installa WordPress " per avviare l'installazione.

3. Al termine dell'installazione, verrà visualizzata la seguente pagina.

Fai clic su "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 dell'indice di WordPress predefinita.

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 plugin di WordPress, sposta il cursore su "Plugin " e fai clic su 'Aggiungi nuovo ', verrai reindirizzato alla pagina Plugin.

Scegli il plug-in che desideri installare e fai clic su "Installa ora ", quindi puoi fare clic su "Attiva pulsante " per attivare il plugin.

Conclusione

Congratulazioni! hai installato con successo WordPress CMS con LAMP Stack sul server Rocky Linux. Di seguito sono riportate le cose che hai imparato in questo tutorial:

  • Installazione dello stack LAMP
  • Protezione dell'implementazione di MariaDB
  • Crea database e utente mysql dalla shell mysql/mariadb
  • Configurazione del server web apache/httpd per il plugin webroot di certbot
  • Genera SSL Letsencrypt
  • E l'ultima è un'installazione di WordPress

Per il passaggio successivo, puoi scegliere o acquistare temi e installarlo sul tuo WordPress.


Rocky Linux
  1. Come installare Let's Encrypt SSL per NGINX su Rocky Linux 8

  2. Come installare WordPress con Apache, MariaDB e PHP 7 su Arch Linux

  3. Come installare Shopware con NGINX e Lets Encrypt su CentOS 7

  4. Come installare Shopware con NGINX e Lets Encrypt su Fedora 30

  5. Come installare WordPress con LEMP (Nginx, MariaDB e PHP) su Rocky Linux 8?

Come installare Joomla con Nginx su Rocky Linux

Come installare Gitea con Nginx e Lets Encrypt SSL gratuito su Ubuntu 20.04

Come installare Lighttpd con PHP, MariaDB e Lets Encrypt SSL su Debian 10

Come installare FTP con SSL in Rocky Linux e AlmaLinux

Come installare LAMP su Rocky Linux 8 Server

Come installare WordPress su AlmaLinux 8 | Linux roccioso 8