GNU/Linux >> Znalost Linux >  >> Debian

Jak nainstalovat Drupal s Apache a nechat šifrovat SSL na Debian 11

Drupal je bezplatný a open-source systém pro správu obsahu založený na zásobníku LAMP. Drupal má skvělé standardní funkce, které vám umožní vytvářet výkonné webové stránky a blogy. Dodává se se spoustou témat, pluginů a widgetů, které vám pomohou vytvořit web bez jakýchkoli znalostí programování. Poskytuje mnoho funkcí, jako je podpora více stránek, podpora více jazyků, systém komentářů, RSS kanál, registrace uživatele a další.

V tomto příspěvku vám ukážeme, jak nainstalovat Drupal CMS s Apache a Let's Encrypt SSL na Debian 11.

Předpoklady

  • Server se systémem Debian 11.
  • Platný název domény s adresou IP vašeho serveru.
  • Na serveru je nakonfigurováno heslo uživatele root.

Instalovat sadu LAMP

Drupal je založen na zásobníku LAMP. Zásobník LAMP tedy musí být nainstalován na vašem serveru. Pokud není nainstalován, můžete jej nainstalovat spuštěním následujícího příkazu:

apt-get install apache2 mariadb-server mariadb-client php libapache2-mod-php php-cli php-mysql php-zip php-gd php-fpm php-json php-common php-intl php-mbstring php-curl php-xml php-pear php-tidy php-soap php-bcmath php-xmlrpc -y

Jakmile je zásobník LAMP nainstalován, upravte soubor php.ini a změňte některá výchozí nastavení:

nano /etc/php/7.4/apache2/php.ini

Změňte následující řádky:

memory_limit = 256M
upload_max_filesize = 32M
max_execution_time = 300
date.timezone = Asia/Kolkata

Po dokončení uložte a zavřete soubor.

Vytvoření databáze Drupal

Drupal používá MariaDB jako backend databáze. Takže budete muset vytvořit databázi a uživatele pro Drupal.

Nejprve se přihlaste do MariaDB pomocí následujícího příkazu:

mysql

Jakmile se přihlásíte, vytvořte databázi a uživatele pomocí následujícího příkazu:

MariaDB [(none)]> CREATE DATABASE drupaldb;
MariaDB [(none)]> CREATE USER 'drupaluser'@'localhost' IDENTIFIED BY "securepassword";

Dále udělte všechna oprávnění databázi Drupal pomocí následujícího příkazu:

MariaDB [(none)]> GRANT ALL ON drupaldb.* TO 'drupaluser'@'localhost' IDENTIFIED BY "securepassword";

Dále vyprázdněte oprávnění a ukončete MariaDB pomocí následujícího příkazu:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Stáhnout Drupal

Nejprve přejděte na web Drupal, vyberte nejnovější verzi Drupalu a stáhněte si ji pomocí následujícího příkazu:

wget https://www.drupal.org/download-latest/tar.gz -O drupal.tar.gz

Jakmile je Drupal stažen, extrahujte stažený soubor pomocí následujícího příkazu:

tar -xvf drupal.tar.gz

Dále přesuňte extrahovaný adresář do výchozího kořenového adresáře Apache:

mv drupal-* /var/www/html/drupal

Dále změňte vlastnictví a oprávnění adresáře Drupal pomocí následujícího příkazu:

chown -R www-data:www-data /var/www/html/drupal/
chmod -R 755 /var/www/html/drupal/

Vytvoření virtuálního hostitele Apache pro Drupal

Dále budete muset vytvořit konfigurační soubor virtuálního hostitele Apache pro hostování Drupalu. Můžete jej vytvořit pomocí následujícího příkazu:

nano /etc/apache2/sites-available/drupal.conf

Přidejte následující řádky:

<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot /var/www/html/drupal/
     ServerName  drupal.example.com  

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined

     <Directory /var/www/html/drupal/>
            Options FollowSymlinks
            AllowOverride All
            Require all granted
     </Directory>

     <Directory /var/www/html/>
            RewriteEngine on
            RewriteBase /
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteCond %{REQUEST_FILENAME} !-d
            RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
    </Directory>
</VirtualHost>

Uložte a zavřete soubor a poté povolte virtuální hostitele Drupal a modul pro přepis Apache pomocí následujícího příkazu:

a2ensite drupal.conf
a2enmod rewrite

Poté restartujte službu Apache, aby se změny projevily:

systemctl restart apache2

Chcete-li zkontrolovat stav Apache, spusťte následující příkaz:

systemctl status apache2

Měli byste získat následující výstup:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-09-18 14:59:40 UTC; 5s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 19698 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 19703 (apache2)
      Tasks: 6 (limit: 2341)
     Memory: 15.3M
        CPU: 78ms
     CGroup: /system.slice/apache2.service
             ??19703 /usr/sbin/apache2 -k start
             ??19704 /usr/sbin/apache2 -k start
             ??19705 /usr/sbin/apache2 -k start
             ??19706 /usr/sbin/apache2 -k start
             ??19707 /usr/sbin/apache2 -k start
             ??19708 /usr/sbin/apache2 -k start

V tomto okamžiku je webový server Apache nakonfigurován tak, aby obsluhoval Drupal. Nyní můžete přejít k dalšímu kroku.

Přístup k webu Drupal

Nyní otevřete webový prohlížeč a otevřete Drupal pomocí adresy URL http://drupal.example.com . Budete přesměrováni na následující stránku:

Vyberte anglický jazyk a klikněte na Uložit a pokračovat tlačítko, měli byste vidět následující obrázek:

Vyberte instalační profil a klikněte na tlačítko Uložit a pokračovat knoflík. Měli byste vidět následující stránku:

Na stránce Konfigurace databáze zadejte všechny požadované údaje o databázi, jako je název databáze, uživatelské jméno a heslo databáze, hostitel databáze a poté klikněte na Uložit a pokračovat tlačítko, měli byste vidět následující obrázek:

Na stránce Konfigurace webu Drupal zadejte název webu, uživatelské jméno správce a heslo a poté klikněte na Uložit a pokračovat tlačítko pro zahájení instalace Drupalu. Jakmile je Drupal nainstalován, měli byste vidět řídicí panel Drupal na následujícím obrázku:

Povolit podporu Let's Encrypt SSL na webu Drupal

Vždy je dobré zabezpečit svůj web pomocí Let's Encrypt SSL. Nejprve budete muset nainstalovat klienta Certbot, abyste mohli nainstalovat a spravovat SSL. Ve výchozím nastavení je balíček Certbot součástí výchozího úložiště Debian 11, takže jej můžete nainstalovat pomocí následujícího příkazu:

apt-get install python3-certbot-apache -y

Jakmile je Certbot nainstalován, spusťte následující příkaz k zabezpečení svého webu pomocí Let's Encrypt SSL:

certbot --apache -d drupal.example.com

Budete požádáni, abyste poskytli svůj e-mail a přijali podmínky služby, jak je uvedeno níže:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator standalone, Installer None
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Plugins selected: Authenticator apache, Installer apache
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for drupal.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/drupal-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/drupal-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/drupal-le-ssl.conf

Dále vyberte, zda chcete přesměrovat provoz HTTP na HTTPS, jak je uvedeno níže:

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Napište 2 a stiskněte Enter pro instalaci Let's Encrypt SSL pro váš web:

Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/drupal.conf to ssl vhost in /etc/apache2/sites-available/drupal-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://drupal.example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=drupal.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/drupal.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/drupal.example.com/privkey.pem
   Your cert will expire on 2021-04-20. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Závěr

To je prozatím vše. Úspěšně jste nainstalovali Drupal s Let's Encrypt SSL na Debian 11. Nyní můžete začít vytvářet svůj vlastní blog nebo web bez jakýchkoli znalostí programování. Pokud máte nějaké dotazy, neváhejte se mě zeptat.


Debian
  1. Jak nainstalovat a nakonfigurovat Drupal s Apache na Debian 9

  2. Jak nainstalovat Tiki Wiki s Apache a šifrovat SSL na Debian 10

  3. Jak nainstalovat Automad CMS s Apache a Lets encrypt na Debian 10

  1. Jak nainstalovat ElkArte Forum s Apache a Lets Encrypt na Debian 10

  2. Jak nainstalovat WonderCMS s Apache a nechat šifrovat SSL na CentOS 8

  3. Jak nainstalovat OpenCart s Nginx a Lets Encrypt na Debian 10

  1. Jak nainstalovat Drupal 9 s Nginx a nechat šifrovat SSL na Debian 10

  2. Jak nainstalovat ElkArte Forum s Apache a nechat šifrovat SSL na CentOS 8

  3. Jak nainstalovat PrestaShop s Apache a nechat šifrovat SSL na CentOS 8