Ubuntu 20.04'te PhpMyAdmin ile LEMP Yığını Nasıl Kurulur


LEMP'in ne olduğunu bilmeyenler için – bu, yazılım paketlerinin bir birleşimidir – Linux, Nginx (< olarak telaffuz edilir) Strong>EngineX), MariaDB ve PHP.

LEMP'i hem test amacıyla hem de gerçek bir üretim ortamında Laravel veya Yii gibi PHP çerçevelerini veya WordPress, Drupal gibi içerik yönetim sistemlerini kullanarak web uygulamalarını dağıtmak için kullanabilirsiniz. , veya Joomla

LAMP ve LEMP arasındaki farkın ne olduğunu merak edebilirsiniz. Tek fark, dahil edilen web sunucusudur: Apache (LAMP'ta) ve Nginx (LEMP 'de) ). Her iki web sunucusu da oldukça iyi ve Apache en sık kullanılanı olsa da Nginx hiçbir şekilde geri adım atmıyor.

Normalde LEMP yığınının yanında kurulan, yaygın olarak kullanılan bir diğer uygulama da PhpMyAdmin'dir; MySQL/MariaDB veritabanı sunucusunu yönetmek için kullanılan PHP web tabanlı bir araçtır. bir web tarayıcısından.

Ubuntu 20.04'ünüz için bir LAMP kurulumu arıyorsanız Ubuntu 20.04'teki LAMP kurulum kılavuzumuzu okumalısınız.

Önkoşullar:

  1. Ubuntu 20.04 Sunucu Kurulum Kılavuzu

Bu makalede, Ubuntu 20.04 sunucusunda LEMP yığınını PhpMyAdmin ile nasıl kurup yapılandıracağınızı öğreneceksiniz.

Adım 1: Nginx'i Ubuntu 20.04'e Yükleme

1. Nginx, çok fazla sunucu kaynağı tüketmeden birçok eşzamanlı bağlantının sunuculuğunu yapmak üzere tasarlanmış, hızlı ve modern bir web sunucusudur. Bu nedenle kurumsal ortamlarda sıklıkla tercih edilen seçimdir.

NGINX ayrıca yaygın olarak yük dengeleyici ve web içeriği önbelleği olarak da kullanılır. İsim tabanlı ve IP tabanlı sanal sunucuları destekler (Apache'deki sanal ana bilgisayarlara benzer).

Aşağıdaki komutu çalıştırarak Nginx'i Ubuntu 20.04 masaüstünüze veya sunucunuza yükleyebilirsiniz.

sudo apt update
sudo apt install nginx

Nginx yapılandırma dosyaları /etc/nginx dizini altında saklanır ve ana yapılandırma dosyası /etc/nginx/nginx.conf'dur. Daha da önemlisi, web dosyalarınızı depolamak için kullanılan varsayılan belge kökü /usr/share/nginx/html/'dir. Ancak web sitenizin veya uygulamanızın sunucu bloğu yapılandırma dosyasında yapılandırılması gereken standart /var/www/html'yi kullanabilirsiniz.

2. Ubuntu paket yükleyicisi, Nginx hizmetini başlatmak için systemd'yi tetikler ve sunucunun her yeniden başlatılışında hizmetin otomatik olarak başlatılmasını sağlar. Hizmetin çalıştığını ve etkinleştirildiğini doğrulamak için aşağıdaki systemctl komutlarını kullanın.

sudo systemctl status nginx 
sudo systemctl is-enabled nginx

3. Şimdi sunucu IP Adresini kullanarak tarayıcı aracılığıyla Nginx sayfasını çağırarak Nginx kurulumunun başarılı olup olmadığını kontrol etme zamanı.

http://SERVER_IP

Sunucunuzun IP adresini bilmiyorsanız gösterildiği gibi IP komutunu kullanarak bulabilirsiniz.

ip addr show

NGINX varsayılan web sayfası aşağıdaki ekran görüntüsünde gösterildiği gibi yüklenmeli ve doğru kurulum ve çalışma onaylanmalıdır.

Adım 2: MariaDB Veritabanının Ubuntu 20.04'e Kurulumu

4. MariaDB, Oracle'ın satın alınmasından sonra MySQL'in topluluk çatalı olarak tasarlanan nispeten yeni bir ilişkisel veritabanı yönetim sistemidir.

MariaDB'nin kurulumu basittir ve aşağıdaki komutla başlatılabilir:

sudo apt install mariadb-server mariadb-client

5. MariaDB hizmeti de otomatik olarak başlatılır ve her zaman sistem önyüklemesinde başlayacak şekilde etkinleştirilir; bunu aşağıdaki komutları kullanarak onaylayabilirsiniz.

sudo systemctl status mariadb
sudo systemctl is-enabled mariadb

6. MariaDB güvenliğini geliştirmek istiyorsanız, bazı temel ancak önemli yapılandırma seçenekleri sağlayacak olan mysql_secure_installation komutunu çalıştırabilirsiniz. :

sudo mysql_secure_installation

Ardından veritabanı kök (veya yönetici) kullanıcısının şifresini ayarlama seçeneğini seçin ve talimatları izleyin ve soruları dikkatlice okuyun. Veritabanı sunucunuzun güvenliğini sağlamak için soruları ekran görüntüsünde gösterildiği gibi yanıtlayın.

  • Kök için mevcut şifreyi girin (hiçbiri için girin): Enter
  • Kök şifresi ayarlansın mı? [E/h] y
  • Anonim kullanıcılar kaldırılsın mı? [E/h] y
  • Uzaktan root girişine izin verilsin mi? [E/h] y
  • Test veritabanı kaldırılsın ve ona erişim sağlansın mı? [E/h] y
  • Ayrıcalık tabloları şimdi yeniden yüklensin mi? [E/h] y

7. Veritabanı işlemlerini oluşturmak, yönetmek ve gerçekleştirmek için, mysql kabuk komutunu -u bayrağıyla birlikte kullanarak veritabanı kullanıcı adını ve adını belirtmeniz gerekir. Kullanıcının şifresini sağlamak için -p.

Root kullanıcı olarak bağlanmak için sudo komutunu kullanın (-p bayrağı olmasa bile), aksi halde aşağıdaki ekran görüntüsünde vurgulanan hatayı alırsınız.

mysql -u root -p
sudo mysql -u root

Adım 3: Ubuntu 20.04'te PHP Kurulumu

8. PHP, web siteleri ve web uygulamaları oluşturmaya yönelik popüler, açık kaynaklı, esnek ve dinamik bir kodlama dilidir. Çeşitli programlama tekniklerini destekler. Daha da önemlisi, PHP topluluğu geniş ve çeşitlidir; sayısız kitaplık, çerçeve ve diğer yararlı bileşenlerden oluşur.

NGINX, PHP komut dosyalarını işlemek için FPM (FastCGI Process Manager) veya PHP-FPM'yi kullanır. PHP-FPM, birçok ek özellikle birlikte gelen, yaygın olarak kullanılan bir alternatif PHP FastCGI uygulamasıdır ve yüksek trafikli siteleri/web uygulamalarını desteklemek için kullanılır.

PHP ve PHP-FPM'yi yüklemek için, gerekli bazı ek paketleri de kuracak olan aşağıdaki komutu çalıştırın.

sudo apt install php php-mysql php-fpm

PHP 7.4, Ubuntu 20.04'te PHP'nin varsayılan sürümü olduğundan, PHP yapılandırma dosyaları /etc/php/7.4 konumunda bulunur. / ve PHP-FPM yapılandırma dosyaları /etc/php/7.4/fpm altında saklanır.

9. Ardından, php7.4-fpm hizmetinin çalışır durumda olup olmadığını ve aşağıdaki komutla etkinleştirilip etkinleştirilmediğini kontrol edin.

sudo systemctl status php7.4-fpm
sudo systemctl is-enabled php7.4-fpm

Adım 4: Nginx'i PHP-FPM ile çalışacak şekilde yapılandırma

10. Şimdi NGINX'i istemci isteklerini proxy olarak kullanacak şekilde PHP-FPM'ye yapılandırmanız gerekiyor; bu, varsayılan olarak bir 'yi dinleyecek şekilde yapılandırılmıştır. /etc/php/7.4/fpm/pool.d/www.conf varsayılan havuz yapılandırma dosyasındaki listen parametresi tarafından tanımlandığı şekliyle UNIX soketi.

sudo vi /etc/php/7.4/fpm/pool.d/www.conf 

11. Varsayılan sunucu bloğu yapılandırma dosyasında (/etc/nginx/sites-available/default), PHP'nin işlenmesine ilişkin konum yönergesinin açıklamasını kaldırın. aşağıdaki ekran görüntüsünde gösterilene benzemesini ister.

sudo vi /etc/nginx/sites-available/default

Dosyayı kaydet ve çık.

12. Ardından NGINX yapılandırma sözdiziminin doğruluğunu test edin. Sorun yoksa yeni değişiklikleri uygulamak için Nginx hizmetini yeniden başlatın.

sudo nginx -t
sudo systemctl restart nginx

13. Şimdi NGINX'in PHP isteklerini işlemek için PHP-FPM ile birlikte çalışıp çalışmadığını test edin. Belge kök dizini altında basit bir info.php sayfası oluşturun.

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

14. Tarayıcınızda aşağıdaki adresi kullanarak gezinin. PHP yapılandırma sayfası aşağıdaki ekran görüntüsünde gösterildiği gibi yüklenmelidir.

http://SERVER_IP/info.php

Adım 5: PhpMyAdmin'in Ubuntu 20.04'e Kurulumu

15. PhpMyAdmin, MySQL/MariaDB veritabanı sunucularını bir web tarayıcısı aracılığıyla yönetmek için özel olarak oluşturulmuş ücretsiz ve açık kaynaklı web tabanlı bir PHP uygulamasıdır. Sezgisel bir grafik arayüz sağlar ve veritabanı yönetim görevleri için çok çeşitli ortak özellikleri destekler.

sudo apt install phpmyadmin

16. Paket kurulumu sırasında PhpMyAdmin paketinin çeşitli yönlerini yapılandırmanız istenecektir. İlk olarak, onu çalıştırmak için varsayılan web sunucusunu seçmeniz istenecektir. NGINX sağlanan listede olmadığından Esc tuşuna basın.

17. Daha sonra, PhpMyAdmin'in çalışacağı bir veritabanı gerekir. Bu paket yapılandırma isteminde, PhpMyAdmin için dbconfig-common paketi ile bir veritabanı yapılandırmak üzere Evet'i seçin.

18. Bir sonraki istemde, PhpMyAdmin'in MariaDB veritabanına kaydolması için bir şifre girmeniz gerekir. Güvenli bir şifre girin ve Enter'a tıklayın.

Adım 6: NGINX'i PhpMyAdmin Sitesine Hizmet Verecek Şekilde Yapılandırma

19. NGINX'in /usr/share/phpmyadmin adresinde bulunan PhpMyAdmin sitesine hizmet vermesini sağlamak için bir sembolik bağlantı oluşturun belge kökü altındaki bu dizin için, PHPMyAdmin dizininde doğru izinleri ve sahipliği aşağıdaki gibi ayarlayın.

sudo ln -s  /usr/share/phpmyadmin /var/www/html/phpmyadmin
sudo chmod 775 -R /usr/share/phpmyadmin/
sudo chown root:www-data -R /usr/share/phpmyadmin/

20. Ayrıca, varsayılan sunucu blok yapılandırması (/etc/nginx/sites-available/default) dosyasındaki index yönergesinin aşağıdakileri içerdiğinden emin olun: Aşağıdaki ekran görüntüsünde gösterildiği gibi index.php.

21. Ardından, yukarıdaki değişiklikleri uygulamak için Nginx hizmetini bir kez daha yeniden başlatın.

sudo systemctl restart nginx

22. Şimdi PhpMyAdmin sitesine aşağıdaki adresi kullanarak bir tarayıcıdan erişin.

http://SERVER_IP/phpmyadmin

Giriş sayfasında PHPMyAdmin kullanıcı adı ve şifresiyle kimlik doğrulaması yapın. MariaDB veritabanının kurulu olduğu localhost üzerinde PHPMyAdmin'e erişmiyorsanız, uzak kök kullanıcı girişinin devre dışı bırakıldığını unutmayın, kök erişimi çalışmayacaktır.

Son olarak, PhpMyAdmin kurulumunuzu güvenli hale getirmek için şu rehberimizi kullanın: PhpMyAdmin Web Arayüzünü Güvenli Hale Getirmek için 4 Yararlı İpucu.

Çözüm

LEMP kurulumunuz artık tamamlandı ve web uygulamalarınızı oluşturmaya başlayabilir veya yeni yüklediğiniz Nginx ve MariaDB hizmetleriyle oynayabilirsiniz. Bunlar yaygın olarak kullanılmaktadır ve sistem yöneticilerine bunlar hakkında daha fazla bilgi edinmeleri şiddetle tavsiye edilir.