GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare Apache, MySQL e PHP (LAMP) su CentOS 8

LAMPADA è l'acronimo di Linux, Apache, MySQL e PHP . Apache è il server web per servire i file sul protocollo HTTP. MySQL è il popolare server di database. PHP è il linguaggio di programmazione utilizzato per lo sviluppo di applicazioni web. Utilizzando queste applicazioni, possiamo creare un server web completo. Il modo più comune per eseguire applicazioni PHP con Apache è l'uso del modulo mod_php. Anche la buona alternativa è usare PHP-FPM, che ha diversi vantaggi rispetto a questo. L'installazione predefinita su CentOS 8 utilizza PHP-FPM per elaborare i file php.

Questo tutorial ti aiuterà a installare e configurare LAMP (Linux, Apache, MySQL e PHP) su sistemi Linux CentOS 8 e RHEL 8.

Link utile:

  • Configura Let's Encrypt SSL con Apache su CentOS 8
  • Come configurare l'utente solo SFTP su CentOS 8

Prerequisiti

  • Macchina CentOS 8 appena installata.
  • Completa la configurazione iniziale del server
  • Accesso alla shell con privilegi sudo

Fase 1 – Installa Apache

I pacchetti del server Web Apache sono disponibili nel repository AppStream predefinito su CentOS 8. Devi solo aggiornare la cache DNF e installare i pacchetti utilizzando i seguenti comandi.

sudo dnf update 
sudo dnf install httpd httpd-tools

Il pacchetto mod_ssl fornisce la funzionalità per utilizzare un certificato SSL per HTTP sicuro. Dopo l'installazione, abilita il servizio httpd e avvia.

sudo systemctl enable httpd.service
sudo systemctl start httpd.service

Ora controlla lo stato del servizio Apache:

sudo systemctl status httpd.service

Risultato:

● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
  Drop-In: /usr/lib/systemd/system/httpd.service.d
           └─php-fpm.conf
   Active: active (running) since Sat 2020-03-22 04:27:24 EDT; 5s ago
     Docs: man:httpd.service(8)
 Main PID: 8644 (httpd)
   Status: "Started, listening on: port 80"
    Tasks: 213 (limit: 8918)
   Memory: 21.5M
   CGroup: /system.slice/httpd.service
           ├─8644 /usr/sbin/httpd -DFOREGROUND
           ├─8650 /usr/sbin/httpd -DFOREGROUND
           ├─8651 /usr/sbin/httpd -DFOREGROUND
           ├─8652 /usr/sbin/httpd -DFOREGROUND
           └─8653 /usr/sbin/httpd -DFOREGROUND

Mar 22 04:27:23 tecadmin systemd[1]: Starting The Apache HTTP Server...
Mar 22 04:27:24 tecadmin systemd[1]: Started The Apache HTTP Server.
Mar 22 04:27:24 tecadmin httpd[8644]: Server configured, listening on: port 80

Passaggio 2:installazione di MySQL Server

Gli ultimi pacchetti MySQL 8 sono disponibili nel repository AppStrem in CentOS 8. Usa il comando seguente per installare il server MySQL, inclusi i pacchetti richiesti sul tuo sistema.

sudo dnf -y install @mysql

Dopo aver completato l'installazione, abilitare l'avvio automatico del servizio MySQL all'avvio del sistema. Avvia anche il servizio manualmente per la prima volta.

sudo systemctl enable mysqld.service
sudo systemctl start mysqld.service

Quindi controlla lo stato corrente del servizio utilizzando il seguente comando:

sudo systemctl status mysqld.service
● mysqld.service - MySQL 8.0 database server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2020-03-22 02:49:33 EDT; 5min ago
  Process: 5841 ExecStartPost=/usr/libexec/mysql-check-upgrade (code=exited, status=0/SUCCESS)
  Process: 5706 ExecStartPre=/usr/libexec/mysql-prepare-db-dir mysqld.service (code=exited, status=0/SUCCESS)
  Process: 5682 ExecStartPre=/usr/libexec/mysql-check-socket (code=exited, status=0/SUCCESS)
 Main PID: 5798 (mysqld)
   Status: "Server is operational"
    Tasks: 38 (limit: 8918)
   Memory: 442.1M
   CGroup: /system.slice/mysqld.service
           └─5798 /usr/libexec/mysqld --basedir=/usr

Mar 22 02:48:42 tecadmin systemd[1]: Starting MySQL 8.0 database server...
Mar 22 02:48:45 tecadmin mysql-prepare-db-dir[5706]: Initializing MySQL database
Mar 22 02:49:33 tecadmin systemd[1]: Started MySQL 8.0 database server.

L'installazione di MySQL è stata completata. Ora puoi connettere il server MySQL senza alcuna password, ma ti consigliamo di proteggere l'installazione di MySQL. I pacchetti MySQL forniscono il comando mysql_secure_installation per applicare la sicurezza. Basta eseguire il comando seguente sul terminale:

sudo mysql_secure_installation

e segui le istruzioni sullo schermo. Di seguito sono riportati i dettagli che richiedono l'input dell'utente.

  • Premi y|Y per Sì, qualsiasi altro tasto per No:y
  • Inserisci 0 =BASSO, 1 =MEDIO e 2 =FORTE:2
  • Nuova password:[INSERIRE QUI LA PASSWORD FORTE]
  • Reinserire la nuova password:REinserire QUI LA PASSWORD
  • Vuoi continuare con la password fornita?(Premi y|Y per Sì, qualsiasi altro tasto per No) :y
  • Rimuovere utenti anonimi? (Premi y|Y per Sì, qualsiasi altro tasto per No) :y
  • Non consentire l'accesso root in remoto? (Premi y|Y per Sì, qualsiasi altro tasto per No) :y
  • Rimuovere il database dei test e accedervi? (Premi y|Y per Sì, qualsiasi altro tasto per No) :y
  • Ricaricare ora le tabelle dei privilegi? (Premi y|Y per Sì, qualsiasi altro tasto per No) :y

Fase 3 – Installa PHP

Il repository Remi contiene gli ultimi pacchetti PHP per il sistema Linux CentOS 8. Quindi, prima di tutto, devi aggiungere il repository REMI al tuo sistema. Basta eseguire il comando seguente per aggiungere il repository.

sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm

Quindi abilitare il modulo DNF richiesto per l'installazione di PHP. Qui stiamo abilitando il modulo per l'installazione di PHP 7.4. Puoi cambiarlo in PHP 7.3 o PHP 7.2 secondo i tuoi requisiti.

sudo dnf module reset php
sudo dnf module enable php:remi-7.4

Una volta che il repository è abilitato sul tuo sistema. Installa i pacchetti PHP insieme ai moduli PHP richiesti.

sudo dnf install php php-mysqlnd

Molti hanno anche bisogno di installare altri moduli php richiesti secondo i requisiti dell'applicazione. Il comando seguente installerà alcuni moduli php usati di frequente:

dnf install php-gd php-zip php-mcrypt php-json php-xml php-gettext php-curl php-intl 

Fase 4:crea Apache VirtualHost

Tutti i pacchetti necessari per l'ambiente LAMP sono installati. Ora crea l'host virtuale Apache. Per impostazione predefinita, Apache utilizza php-fpm per elaborare i file PHP sul sistema CentOS 8.

Crea e modifica il file di configurazione dell'host virtuale nell'editor di testo preferito:

sudo vim /etc/httpd/conf.d/tecadmin.example.net.conf

Aggiungi il seguente contenuto nel file di configurazione. Assicurati di modificare i parametri richiesti.

Apache
12345678910 ServerAdmin [email protected] DocumentRoot /var/www/html ServerName tecadmin.example.net ServerAlias ​​www.tecadmin.example.net ErrorLog logs/tecadmin.net-error. log CustomLog logs/tecadmin.net-access.log combinato

Salva il file di configurazione dell'host virtuale e ricarica Apache per applicare le modifiche.

sudo systemctl restart httpd.service

Link utile:

  • Configura Let's Encrypt SSL con Apache su CentOS 8

Passaggio 5 – Consenti porte in Firewalld

Il server CentOS 8 Linux è pronto per servire l'applicazione nell'ambiente LAMP. Se il tuo sistema ha un firewalld installato e attivo, devi consentire le porte Apache. Ciò consentirà agli utenti della rete di accedere all'applicazione Web da sistemi remoti.

I seguenti comandi ti apriranno le porte richieste.

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --reload

Link utile:

  • Cos'è FirewallD e come implementarlo su Linux

Fase 6 – Configurazione del test

Tutto fatto. Per testare l'ambiente, crea uno script PHP con phpinfo() funzione. Posiziona questo file nella radice del documento del tuo server. Usa il comando seguente per farlo.

echo "<?php phpinfo(); ?>" > /var/www/html/info.php

Quindi accedi a info.php utilizzando l'indirizzo IP del server (per VirtualHost predefinito) per il tuo dominio configurato in Apache VirtualHost.

http://tecadmin.example.net/info.php

Conclusione

Hai configurato correttamente l'ambiente LAMP sul tuo sistema Linux CentOS 8 o RHEL 8. Successivamente puoi installare phpMyAdmin sul tuo sistema.


Cent OS
  1. Come installare il server database MySQL 8 su CentOS 8

  2. Come installare Percona Server su CentOS 7

  3. Come installare Apache, MySQL, PHP (LAMP) su CentOS/RHEL 7

  4. Come installare MySQL Server su CentOS 7

  5. Come installare LAMP su CentOS 7

Come installare MySQL 8 su CentOS 8

Come installare il server LAMP su CentOS 8

Come installare LAMP (Linux Apache, MariaDB, PHP) su CentOS 7

Come installare Apache, MySQL, PHP (LAMP) su Fedora 21

Come installare LAMP su un server Ubuntu 15.04

Come installare LAMP (Apache, MariaDB, PHP) su un Cloud Server CentOS 7.2