Ինչպես տեղադրել Drupal CMS-ը Apache-ով և անվճար Եկեք ծածկագրենք SSL-ը Ubuntu 24.04-ում


Այս ձեռնարկը գոյություն ունի ՕՀ-ի այս տարբերակների համար

  • Ubuntu 24.04 (Noble Numbat)
  • Ubuntu 22.04 (Jammy Jellyfish)

Այս էջում

  1. Նախադրյալներ
  2. Կախվածությունների տեղադրում
  3. PHP-ի կարգավորում
  4. MariaDB սերվերի կարգավորում
  5. Drupal-ի սկզբնական կոդը ներբեռնվում է
  6. Apache վիրտուալ հոսթի կարգավորում
  7. Drupal-ի ապահովում HTTPS-ով
  8. Drupal-ի տեղադրում
  9. Եզրակացություն

Drupal-ը PHP-ով գրված բովանդակության կառավարման հանրաճանաչ համակարգ է: Այն օգտագործվում է ինտերնետի լավագույն 10,000 կայքերի առնվազն 14%-ի կողմից՝ համաշխարհային ձեռնարկությունների ոլորտներից, կառավարություններից, կրթության և հաստատությունների կայքերից: Drupal-ը տրամադրում է բարձր մասշտաբային համակարգ՝ ինտեգրված թվային հավելվածների հետ և կարող է օգտագործվել բազմալեզու աջակցությամբ տարբեր կազմակերպությունների համար մուլտիկայք ստեղծելու համար:

Այս ուղեցույցը ցույց կտա ձեզ, թե ինչպես տեղադրել Drupal-ը Ubuntu 24.04 սերվերի վրա: Մենք կտեղադրենք Drupal-ը LAMP Stack-ով (Linux, Apache, MariaDB և PHP) և կապահովենք Drupal-ը HTTPS-ով Letsencrypt-ից:

Նախադրյալներ

Նախքան սկսելը, համոզվեք, որ ունեք.

  • Ubuntu 24.04 սերվեր
  • Ոչ արմատական օգտվող, ադմինիստրատորի արտոնություններով
  • Դոմենի անուն, որը մատնանշված է սերվերի IP հասցեին

Կախվածությունների տեղադրում

Drupal-ը CMS է, որը հիմնված է MySQL/MariaDB-ի և PHP-ի վրա: Այն տեղադրելու համար դուք պետք է համոզվեք, որ և՛ MySQL/MariaDB, և՛ PHP տեղադրված են ձեր համակարգում: Վեբ սերվերի համար կարող եք օգտագործել Apache կամ Nginx:

Այս բաժնում դուք կտեղադրեք կախվածություններ Drupal-ի համար: Սա ներառում է LAMP Stack-ը (Linux, Apache, MariaDB և PHP) և Composer-ը:

Նախ, թարմացրեք ձեր Ubuntu փաթեթի ինդեքսը հետևյալ հրամանով.

sudo apt update

Այժմ տեղադրեք LAMP Stack-ը (Linux, Apache, MariaDB և PHP) և Կոմպոզիտորի կախվածությունները ձեր Ubuntu համակարգում հետևյալ կերպ.

sudo apt install apache2 mariadb-server composer php php-apcu php-dev libapache2-mod-php libcurl4-openssl-dev 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-uploadprogress php-soap php-bcmath php-xmlrpc

Տեղադրումը հաստատելու համար մուտքագրեք Y:

Տեղադրումից հետո ստուգեք և՛ Apache, և՛ MariaDB կարգավիճակը, այնուհետև ստուգեք PHP և Composer տարբերակները։

Ստուգեք Apache ծառայությունը ստորև նշված հրամանով: Սա կապահովի, որ Apache-ն աշխատում է և միացված է ձեր սերվերի վրա:

sudo systemctl is-enabled apache2
sudo systemctl status apache2

Միացված լինելը ցույց է տալիս, որ Apache վեբ սերվերը կսկսվի բեռնման պահին: Իսկ ակտիվը (վազում) ցույց է տալիս, որ Apache-ն աշխատում է:

Այժմ ստուգեք MariaDB ծառայության կարգավիճակը հետևյալով.

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb

Apache-ի պես, դուք կտեսնեք միացված ելքը և «ակտիվ (աշխատող)» կարգավիճակը, որը հաստատում է, որ MariaDB-ն կսկսվի բեռնման պահին, և կարգավիճակն աշխատում է:

Ի վերջո, ստուգեք PHP-ի և Composer-ի տարբերակները՝ օգտագործելով ստորև նշված հրամանը: Այս պահին Ubuntu 24.04 լռելյայն պահոցն ապահովում է PHP 8.3 և Composer 2.7.1:

sudo php -v
sudo -u www-data composer -v

PHP-ի կարգավորում

Կախվածությունները տեղադրելուց հետո դուք պետք է կարգավորեք PHP Drupal-ի համար: Դուք պետք է խմբագրեք լռելյայն «php.ini» ֆայլը և փոխեք որոշ կանխադրված կոնֆիգուրացիաներ, ինչպես դա անհրաժեշտ է Drupal-ի համար:

Բացեք php.ini կոնֆիգուրացիան հետևյալ նանո խմբագրիչ հրամանով.

sudo nano /etc/php/8.3/apache2/php.ini

Փոխեք լռելյայն կոնֆիգուրացիան հետևյալով և համոզվեք, որ հարմարեցնեք memory_limit և date.timezone ընտրանքները ձեր սերվերի միջավայրերում:

memory_limit = 512M
upload_max_filesize = 60M
max_execution_time = 300
date.timezone = Europe/Amsterdam

Ավարտելուց հետո պահեք և դուրս եկեք ֆայլից:

Այժմ վերագործարկեք Apache վեբ սերվերը՝ PHP-ի նոր կոնֆիգուրացիան կիրառելու համար:

sudo systemctl restart apache2

MariaDB սերվերի կարգավորում

Այժմ, երբ դուք կարգավորել եք PHP-ն, եկեք կարգավորենք MariaDB սերվերը՝ այն ապահովելով «mariadb-secure-installation» ծրագրի միջոցով և ստեղծենք նոր տվյալների բազա և օգտվող Drupal-ի համար:

Ապահովեք ձեր MariaDB սերվերի տեղադրումը հետևյալ հրամանով. Այս հրամանը կառաջարկվի MariaDB սերվերի կոնֆիգուրացիաների մասին:

sudo mariadb-secure-installation

Այժմ մուտքագրեք Y՝ փոփոխությունները MariaDB-ում կիրառելու համար, կամ մուտքագրեք n՝ այն մերժելու համար.

  • MariaDB-ի լռելյայն տեղադրումն իրականացվում է առանց գաղտնաբառի, սեղմեք ENTER, երբ գաղտնաբառը պահանջվում է:
    Այժմ մուտքագրեք Y՝ MariaDB արմատային գաղտնաբառը կարգավորելու համար: Այնուհետև մուտքագրեք նոր գաղտնաբառը MariaDB-ի համար և կրկնեք գաղտնաբառը:
    Մուտքագրեք Y՝ անանուն օգտվողին MariaDB-ի տեղադրումից հեռացնելու համար:
    Նորից մուտքագրեք Y, երբ ձեզ հուշում են անջատել MariaDB արմատային օգտվողի հեռավոր մուտքը:
    Մուտքագրեք Y՝ ձեր MariaDB տվյալների բազայի լռելյայն թեստը հեռացնելու համար:
    Վերջապես, մուտքագրեք Y՝ աղյուսակի արտոնությունները վերաբեռնելու և նոր փոփոխություններ կիրառելու համար:

Երբ MariaDB սերվերն ապահովված է, դուք պետք է ստեղծեք նոր տվյալների բազա և օգտագործող Drupal-ի համար: Դա կարելի է անել՝ օգտագործելով «mariadb» հաճախորդի հրամանը:

Մուտք գործեք MariaDB սերվեր հետևյալով. Մուտքագրեք ձեր MariaDB արմատային գաղտնաբառը, երբ ձեզ հուշեն:

sudo mariadb -u root -p

Գործարկեք հետևյալ հարցումները՝ Drupal-ի համար նոր տվյալների բազա և օգտվող ստեղծելու համար: Այս օրինակում դուք կստեղծեք նոր օգտվող «drupal», տվյալների բազա «drupaldb», «DrupalSecurePassword» գաղտնաբառով: Համոզվեք, որ փոխեք տեղեկատվությունը ձեր մանրամասներով:

CREATE DATABASE drupaldb;
CREATE USER drupal@localhost IDENTIFIED BY 'DrupalSecurePassword';
GRANT ALL ON drupaldb.* TO drupal@localhost WITH GRANT OPTION;
FLUSH PRIVILEGES;

Այժմ գործարկեք ստորև ներկայացված հարցումը՝ «drupal» օգտվողին ստուգելու համար: Համոզվեք, որ «drupal» օգտվողը կարող է մուտք գործել «drupaldb» տվյալների բազա:

SHOW GRANTS FOR drupal@localhost;

Հետևյալ ելքը ցույց է տալիս, որ «drupal» օգտվողը կարող է մուտք գործել «drupaldb» տվյալների բազա:

Վերջապես, մուտքագրեք quit MariaDB սերվերից դուրս գալու համար:

Drupal-ի սկզբնական կոդը ներբեռնվում է

Այս քայլում դուք կներբեռնեք Drupal-ի սկզբնական կոդը և կստեղծեք վեբ արմատային գրացուցակը պատշաճ սեփականության և թույլտվությամբ: Այս օրինակում դուք կներբեռնեք և կտեղադրեք Drupal-ի վերջին տարբերակը:

Գնացեք /var/www գրացուցակ և ներբեռնեք Drupal-ի սկզբնական կոդը՝ օգտագործելով ստորև նշված wget հրամանը:

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

Երբ ներբեռնումն ավարտվի, հանեք Drupal-ի սկզբնական կոդը և վերանվանեք արդյունահանված գրացուցակը «դրուպալ»: Դրանով /var/www/drupal-ը կդառնա ձեր վեբ արմատը կամ փաստաթղթերի արմատային գրացուցակը Drupal-ի տեղադրման համար:

tar -xvf drupal.tar.gz
mv drupal-* /var/www/drupal

Այժմ գործարկեք ստորև հրամանը՝ /var/www/drupal-ի սեփականությունը www-data-ի և 755-ի թույլտվությունը փոխելու համար:

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

Apache վիրտուալ հոսթի կարգավորում

Drupal-ը ներբեռնելուց հետո դուք պետք է ստեղծեք Apache վիրտուալ հոսթ ձեր տեղադրման համար: Այսպիսով, համոզվեք, որ պատրաստել եք ձեր տիրույթի անունը Drupal-ի տեղադրման համար:

Նախ գործարկեք ստորև նշված հրամանը՝ «ssl» և «վերագրել» Apache մոդուլները միացնելու համար։

sudo a2enmod ssl rewrite

Այժմ ստեղծեք նոր Apache վիրտուալ հոսթի կոնֆիգուրացիա հետևյալ հրամանով.

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

Պատճենեք և տեղադրեք ստորև նշված կոնֆիգուրացիան և համոզվեք, որ փոխեք ServerName տարբերակը ձեր Drupal-ի տեղադրման տիրույթի անունով:

<VirtualHost *:80>
 ServerName howtoforge.local
 ServerAdmin [email 
 DocumentRoot /var/www/drupal
 # Add security
 php_flag register_globals off
 ErrorLog ${APACHE_LOG_DIR}/howtoforge.local.error.log
 CustomLog ${APACHE_LOG_DIR}/howtoforge.local.access.log combined
 <FilesMatch "\.(cgi|shtml|phtml|php)$">
 SSLOptions +StdEnvVars
 </FilesMatch>
 <Directory /var/www/drupal>
 Options FollowSymlinks
 #Allow .htaccess
 AllowOverride All
 Require all granted
 <IfModule security2_module>
 SecRuleEngine Off
 # or disable only problematic rules
 </IfModule>
 </Directory>
 <Directory /var/www/drupal/>
 RewriteEngine on
 RewriteBase /
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
 </Directory>
</VirtualHost>

Ավարտելուց հետո պահեք և դուրս եկեք ֆայլից:

Այժմ գործարկեք ստորև նշված հրամանը՝ «drupal.conf» վիրտուալ հոսթ ֆայլը ակտիվացնելու համար, այնուհետև ստուգեք ձեր Apache-ի շարահյուսությունը: Եթե ունեք Apache-ի պատշաճ շարահյուսություն, դուք պետք է ստանաք «Սինտաքսը լավ է»:

sudo a2ensite drupal.conf
sudo apachectl configtest

Վերջապես, վերագործարկեք Apache-ն հետևյալով` ձեր նոր վիրտուալ հոսթի կազմաձևումը կիրառելու համար: Դրանով ձեր Drupal-ը պետք է հասանելի լինի:

sudo systemctl restart apache2

Drupal-ի ապահովում HTTPS-ով

Drupal-ը HTTPS-ով ապահովելու համար կարող եք օգտագործել Letsencrypt-ից անվճար SSL վկայագրեր: Եթե դուք տեղադրում եք հանրային տիրույթի անվան վրա, հետևեք այս քայլին՝ ձեր Drupal-ի տեղադրման վրա HTTPS-ն ակտիվացնելու համար: Եթե դուք օգտագործում եք տեղական տիրույթի անունը, կարող եք օգտագործել ինքնաստորագրված SSL վկայագրեր:

Տեղադրեք Certbot և Certbot Apache plugin-ը հետևյալով. Տեղադրումը հաստատելու համար մուտքագրեք Y:

sudo apt install certbot python3-certbot-apache

Տեղադրման ավարտից հետո գործարկեք ստորև բերված certbot հրամանը՝ ձեր Drupal-ի տեղադրման համար SSL/TLS վկայագրեր ստեղծելու համար: Համոզվեք, որ փոխեք էլփոստի հասցեն և տիրույթի անունը ձեր տեղեկություններով:

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email  -d howtoforge.local

Ավարտելուց հետո ձեր SSL/TLS վկայականները պետք է ստեղծվեն /etc/letsencrypt/live/example.com գրացուցակում, և ձեր Drupal-ի տեղադրումը պետք է ավտոմատ կերպով ապահովվի HTTPS-ով:

Drupal-ի տեղադրում

Այցելեք ձեր Drupal տիրույթի անունը, օրինակ՝ https://howtoforge.local ձեր նախընտրած վեբ բրաուզերից: Եթե ձեր տեղադրումը հաջող է, դուք պետք է ստանաք Drupal-ի տեղադրման հրաշագործը:

Ընտրեք Drupal-ի լռելյայն լեզուն, այնուհետև սեղմեք Պահել և շարունակել:

Ընտրեք ձեր նախընտրած Drupal տեղադրման պրոֆիլը, սեղմեք Պահել և շարունակել: Սկսնակների համար օգտագործեք Ստանդարտ կամ Դեմո պրոֆիլը: Եթե դուք փորձառու եք Drupal-ի հետ, կարող եք ընտրել Նվազագույն պրոֆիլը:

Այժմ համոզվեք, որ անցել եք Drupal միջավայրի ստուգումը, որն ապահովում է, որ ձեր սերվերը պատրաստ է Drupal-ի տեղադրմանը:

Եթե պատրաստ եք, դուք կվերահղվեք Drupal-ի տվյալների բազայի կազմաձևին: Մուտքագրեք ձեր MariaDB սերվերի տվյալները, տվյալների բազայի անունը, օգտվողի անունը և գաղտնաբառը, այնուհետև սեղմեք Պահպանել և շարունակել:

Drupal-ի տեղադրումը պետք է սկսվի.

Drupal-ի տեղադրումն ավարտվելուց հետո դուք պետք է կազմաձևեք ձեր Drupal կայքը: Մուտքագրեք կայքի անունը, էլ. փոստի հասցեն, ադմինիստրատորի օգտանունը, գաղտնաբառը, լռելյայն երկիրը և ժամային գոտին:

Հաստատելու համար սեղմեք Պահպանել և շարունակել:

Այժմ, եթե տեղադրումը հաջող է, դուք պետք է ստանաք հաղորդագրություն «Շնորհավորում եմ, դուք տեղադրել եք Drupal!»:

Այստեղ սեղմեք Կառավարում > Կազմաձևում ընտրացանկը՝ Drupal-ի կառավարման վահանակին մուտք գործելու համար: Դուք կտեսնեք հետևյալը.

Եզրակացություն

Շնորհավորում եմ: Դուք ավարտել եք Drupal CMS-ի տեղադրումը Ubuntu 24.04 սերվերի վրա: Դուք ունեք Drupal-ն աշխատում է LAMP Stack-ով (Linux, Apache, MariaDB և PHP) և ապահովված է HTTPS-ով Letsencrypt-ից: Այժմ դուք կարող եք կառավարել ձեր Drupal կայքը՝ տեղադրելով թեմաներ կամ ավելացնելով ընդլայնումներ: