Debian we Ubuntu-da Apache bilen Drupal nädip gurmaly


Web sahypaňyzy noldan ösdürmek gaty kyn mesele bolup biler. Bir işläp düzüjini işe aljak bolsaňyz, köp wagt talap edýär we gymmat. Blogyňyzy ýa-da web sahypaňyzy ýerden çykarmagyň aňsat usuly, Drupal ýaly CMS (mazmun dolandyryş ulgamy) ulanmakdyr.

Drupal, PHP-de ýazylan we GPL astynda goýberilen açyk çeşmeli mazmun dolandyryş ulgamy (CMS). Ilkinji gezek 2001-nji ýylyň ýanwar aýynda şahsy bloglary, korporatiw web sahypalaryny we adamlara zerur bolup biljek islendik web sahypasyny güýçlendirmek üçin çykdy. Häzirki wagtda Drupal dünýäde millionlarça web sahypasyny işleýän dünýäde iň meşhur CMS-leriň biridir.

Bu gollanmany ýazan wagty Drupalyň iň soňky wersiýasy Drupal 9.

  1. Mugt we açyk çeşme.
  2. postsazgylary, sahypalary we düşündiriş ulgamyny, RSS iýmitini, ulanyjylary hasaba almak ýaly esasy aýratynlyklar. şablonlary we goşmaçalary gurmak we üýtgetmek.
  3. Drupal dükanyndan mugt göçürip almak üçin 30000-den gowrak modul bar.
  4. Arap ýaly RTL dillerini goldaýan 110-dan gowrak dilde bar.
  5. Köp sahypaly goldaw we köp ulanyjy mazmuny redaktirlemek we döretmek goldawy.
  6. Adaty tertipde gurlan modullary ulanyp, bloglary, forumlary, pikir soraşmalary döretmek üçin goldaw.
  7. Howpsuzlyk täzelenmeleri barada size habar bermek üçin gaty gowy täzeleniş ulgamy.
  8. Beýleki köp aýratynlyklar.

Bu gollanmada Drupal-ny Debian 10/9 we Ubuntu 20.04/18.04-de gurarys.

Drupal, ulanyjylar tarapyndan öň tarapdan girip bolýan PHP bilen dolandyrylýan CMS bolany üçin, Debian/Ubuntu mysalyňyzda LAMP stakasy bolmaly. LAMP web sahypalaryny barlamak we ýerleşdirmek üçin ulanylýan programma üpjünçiligi bolup, 3 esasy komponentden ybarat:

  • Apache web serweri.
  • MariaDB maglumat bazasynyň serweri.
  • PHP (Drupal 9, PHP 7.3 we soňraky wersiýalary maslahat berilýär).

Talaplar ýerine ýetirilenden soň, başlalyň!

1-nji ädim: Apache, MariaDB we PHP guruň

1. Drupal gurmak üçin işleýän web serweri we maglumat bazasy serweri gerek bolar, bu makalada Apache, PHP we MariaDB bilen işleşeris, olary apt atly paket dolandyryjy guralynyň kömegi bilen aňsatlyk bilen gurup bilersiňiz.

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

2. Önümçilik serwerlerinde, MariaDB bukjasy bilen iberilýän aşakdaky howpsuzlyk skriptini işledip, MariaDB maglumat bazasyny gurmak üçin käbir esasy howpsuzlyk çärelerini işjeňleşdirmeli.

$ sudo mysql_secure_installation

Scriptazgy işledilenden soň, görkezilişi ýaly käbir esasy howpsuzlyk opsiýalaryny işletmek üçin hawa (y) jogap berip boljak birnäçe sorag ýüze çykar.

  • Kök üçin häzirki paroly giriziň (hiç birine girmäň): Enter
  • Kök parolyny düzüň? [Y/n] y
  • Anonim ulanyjylary aýyrýarsyňyzmy? [Y/n] y
  • Kök girişini uzakdan gadagan ediň? [Y/n] y
  • Synag maglumatlar bazasyny aýyryň we oňa girip bilersiňizmi? [Y/n] y
  • artykmaçlyk tablisalaryny täzeden ýükläňmi? [Y/n] y

Bu, ähli zerur paketleri üstünlikli gurnadyňyz we MySQL parolyny goşduňyz. Indi öňe gitmegiň we drupal gurnamak üçin maglumat bazasyny döretmegiň wagty geldi.

2-nji ädim: Drupal maglumat bazasyny dörediň

3. Drupal gurnamagymyz üçin maglumat bazasyny döretmeli, munuň üçin mysql gabygyna birikmek üçin aşakdaky buýrugy işletmeli.

$ sudo mysql -u root -p

Bellik: MySQL paketini üpjün edende kesgitlän MySQL kök parolyňyzy girizmegiňizi sorar, giriň we size mysql terminaly soralar.

4. Ondan soň, täze “drupal” ulanyjy, maglumat bazasy we grant artykmaçlyklaryny döretmek üçin MySQL terminalynda aşakdaky buýruklary işlediň.

## Creating New User for Drupal Database ##
MariaDB [(none)]> CREATE USER drupal@localhost IDENTIFIED BY "your_password_here";

## Create New Database ##
MariaDB [(none)]> create database drupal;

## Grant Privileges to Database ##
MariaDB [(none)]> GRANT ALL ON drupal.* TO drupal@localhost;

## FLUSH privileges ##
MariaDB [(none)]> FLUSH PRIVILEGES;

## Exit ##
MariaDB [(none)]> exit

Bellik: Isleseňiz, ulanyjy adyny we maglumat bazasynyň adyny başga at bilen çalşyp bilersiňiz.

3-nji ädim: Ubuntu-da Drupal-y göçürip alyň

5. Drupal-ny resmi Ubuntu/Debian ammaryndan paket hökmünde göçürip alyp bolýar, emma Drupal-dan köp howpsuzlyk gowşaklygy bolan köne wersiýa we häzirki Drupal wersiýasy 9.0.6), şonuň üçin göçürip alarys Resmi web sahypasyndan Drupal

Ativea-da bolmasa, iň soňky wersiýany göni almak üçin aşakdaky wget buýrugyny ulanyp bilersiňiz.

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

6. Ondan soň, tarbol faýlyny çykaryň we gysylmadyk drupal bukjany görkezilişi ýaly /var/www/html ýoluna geçiriň.

$ sudo tar -xvf drupal.tar.gz
$ sudo mv drupal-9.0.6 /var/www/html/drupal

7. Drupalyň elýeterli bolmagy üçin görkezilen rugsatlary belläň:

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

4-nji ädim: Apache Drupal Wirtual Host dörediň

8. Sazlamanyň soňky bölegi, Drupal web sahypamyz üçin Apache wirtual host faýly döretmegimizi talap edýär. Dowam ediň we görkezilişi ýaly wirtual host faýly dörediň:

$ sudo vim /etc/apache2/sites-available/drupal.conf

Mazmuny aşakda goýuň.

<VirtualHost *:80>
     ServerAdmin [email 
     DocumentRoot /var/www/html/drupal/
     ServerName  example.com  
     ServerAlias www.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>

Ondan soň konfigurasiýa faýly ýazdyryň we çykyň.

9. Wirtual hostyň ýerinde, aşakdaky buýruklary ulanyp, ony işletmeli:

$ sudo a2ensite drupal.conf
$ sudo a2enmod rewrite

10. Soňra üýtgeşmeler girizilmegi üçin Apache web serwerini täzeden açyň.

$ sudo systemctl restart apache2

6-njy ädim: Drupaly brauzerden guruň

11. Bu ädimde, Drupalyň gurnamasyny web brauzerine gurup gutarýarys. Şonuň üçin brauzeriňizi işe giriziň we görkezilişi ýaly serweriňiziň IP adresine geçiň:

http://www.server-ip/
OR
http://www.example.com/

12. Peýda bolan sahypada islän diliňizi saýlaň we Saklamak we dowam etmek düwmesine basyň.

13. Indiki ädim, ulanyp boljak 3 sany gurnama profilini berýär. Işleri aňsat we gönümel saklamak üçin “Standard” profilini saýlaň we “Saklamak we dowam etmek” düwmesine basyň.

14. Indiki ädimde maglumat bazasynyň jikme-jikliklerini dolduryň.

15. Az salymdan ähli zerur faýllary gurmak başlar. Bu takmynan 5 minut alýar we biraz sabyr eder.

16. Sahypaňyzyň ady, sahypanyň e-poçta salgysy, ýerleşýän ýeri we wagt guşaklygy ýaly zerur meýdanlary dolduryň.

17. Netijede, Drupal üçin görkezilişi ýaly deslapky dolandyryş paneli alarsyňyz:

Bu ýerden, elýeterli mowzuklary ulanyp ýa-da premium Drupal mowzuklaryny ulanyp, öz täsirli we ajaýyp web sahypaňyzy döredip bilersiňiz. Bu gün biziň üçin bar zat. Drupal-ny Debian 10/9 we Ubuntu 20.04/18.04-de rahat gurup bilersiňiz diýip umyt edýäris.