Oxygen Chrome Ubuntu 24.04 Üzerinde Linux, Apache, MySQL, PHP (LAMP) Kurulumu - SONMEZZ

Konuyu Sesli Okuma

Manşet

En Yeniler
⏳ Manşetler yükleniyor...

Duyuru Alanı

Kutsal Bilgi
Kutsal Bilgi Tapınağı
Hoş Geldiniz Bilge Yolcu

Story

Yönetici
Admin
SVIP Member
Verified
Puanlar
10429
Başarılar
8

Ubuntu 24.04 Üzerinde Linux, Apache, MySQL, PHP (LAMP) Kurulumu

LAMP, bir sunucunun dinamik web sitelerini ve web uygulamalarını barındırmasını sağlayan açık kaynaklı yazılım grubudur. Ubuntu 24.04 (Noble Numbat) ile tam uyumlu güncel sürümleri içerir.


Ön Şartlar

  • root ya da sudo yetkilerine sahip kullanıcı
  • Ubuntu 24.04 sunucusu (veya masaüstü)
  • UFW güvenlik duvarı
  • İnternet bağlantısı
Ubuntu 24.04, PHP 8.3, MySQL 8.0 ve Apache 2.4 ile gelmektedir. PHP 7.x artık desteklenmemektedir.

Adım 1 - Apache Kurulumu

sudo apt update
sudo apt upgrade -y
sudo apt install apache2 -y
sudo apt install ufw -y
sudo ufw allow OpenSSH
sudo ufw enable

Apache Güvenlik Duvarı Kontrolü

sudo ufw app list
sudo ufw app info "Apache Full"

Apache profillerini kontrol edin ve aktifleştirin:

sudo ufw allow in "Apache Full"
sudo ufw allow in "Apache Secure"  # HTTPS için
sudo ufw status

Apache Testi

Tarayıcıdan aşağıdaki adresi açın:

http://sunucuipadresiniz

Ubuntu 24.04'ün varsayılan Apache hoşgeldin sayfasını görmelisiniz.


Sunucu IP Adresini Öğrenme

ip addr show | grep inet | awk '{ print $2; }' | grep -v '^::' | sed 's/\/.*$//'

Alternatif yöntem (dış IP):

curl http://icanhazip.com

Adım 2 - MySQL Kurulumu

sudo apt install mysql-server -y
Ubuntu 24.04, MySQL 8.0'ı kurar. MySQL 8.0'da kimlik doğrulama varsayılanı caching_sha2_password'dır, ancak PHP ile uyumluluk için mysql_native_password kullanabilirsiniz.

MySQL Güvenlik Ayarları

sudo mysql_secure_installation
VALIDATE PASSWORD için EVET seçin ve güçlü parola belirleyin. Güvenlik sorularına 'Y' (Evet) yanıtı verin.

MySQL Konsoluna Giriş

sudo mysql

Kullanıcı Doğrulama Kontrolü

SELECT user, authentication_string, plugin, host FROM mysql.user;

Root Kullanıcısını Şifreli Girişe Çevirme (MySQL 8.0)

ALTER USER 'root'@'localhost'
IDENTIFIED WITH mysql_native_password
BY 'GucluSifreniz2024*!';

FLUSH PRIVILEGES;

Test Veritabanı ve Kullanıcı Oluşturma (Opsiyonel)

CREATE DATABASE testdb;
CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'KullaniciSifresi123!';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@'localhost';
FLUSH PRIVILEGES;

Adım 3 - PHP Kurulumu (PHP 8.3)

sudo apt install php libapache2-mod-php php-mysql -y

Yaygın PHP Eklentileri

sudo apt install php-cli php-curl php-gd php-mbstring php-xml php-zip php-intl php-bcmath -y

PHP Önceliğini Ayarlama

sudo nano /etc/apache2/mods-enabled/dir.conf

Eski yapı:

<IfModule mod_dir.c>
    DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
</IfModule>

Yeni yapı (index.php önce gelsin):

<IfModule mod_dir.c>
    DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
</IfModule>

Apache Yeniden Başlatma

sudo systemctl restart apache2

PHP Sürümünü Kontrol Etme

php --version

PHP Modülleri

Yüklü Modülleri Listeleme

php -m

Tüm PHP Modüllerini Görüntüleme

apt search php- | grep "^php" | less

Modül Detayı

apt show php-cli

Ek Modül Kurulumu

sudo apt install php-redis php-imagick php-xdebug

Adım 4 - Sanal Host Ayarları

Dizin Oluşturma

sudo mkdir -p /var/www/sizinalanadiniz.com/public_html

Yetkileri Ayarlama

sudo chown -R $USER:$USER /var/www/sizinalanadiniz.com
sudo chmod -R 755 /var/www/sizinalanadiniz.com

Örnek HTML Sayfası

nano /var/www/sizinalanadiniz.com/public_html/index.html
<!DOCTYPE html>
<html lang="tr">
<head>
    <meta charset="utf-8">
    <title>Ubuntu 24.04 LAMP</title>
</head>
<body>
    <h1>LAMP Başarıyla Kuruldu!</h1>
    <p>Ubuntu 24.04 üzerinde Apache, MySQL ve PHP çalışıyor.</p>
</body>
</html>

Apache VirtualHost Dosyası

sudo nano /etc/apache2/sites-available/sizinalanadiniz.com.conf
<VirtualHost *:80>
    ServerName sizinalanadiniz.com
    ServerAlias www.sizinalanadiniz.com
    ServerAdmin [email protected]
    DocumentRoot /var/www/sizinalanadiniz.com/public_html

    <Directory /var/www/sizinalanadiniz.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Ubuntu 24.04'te Apache yapılandırmasında 'Require all granted' direktifi 'AllowOverride All' ile birlikte kullanılmalıdır.

Siteyi Etkinleştirme

sudo a2ensite sizinalanadiniz.com
sudo a2dissite 000-default.conf

Apache Yapılandırma Testi

sudo apache2ctl configtest

Çıktı: "Syntax OK" görmelisiniz.

Apache Yeniden Başlat

sudo systemctl restart apache2

Adım 5 - PHP Testi

nano /var/www/sizinalanadiniz.com/public_html/bilgi.php
<?php
phpinfo();
?>

Tarayıcıdan açın:

http://sizinalanadiniz.com/bilgi.php

PHP 8.3 bilgilerini gösteren bir sayfa görmelisiniz.

Test Dosyasını Silme

sudo rm /var/www/sizinalanadiniz.com/public_html/bilgi.php
Güvenlik nedeniyle phpinfo() dosyasını üretim ortamında mutlaka silin!

Adım 6 - Ek Yapılandırmalar

PHP Ayarlarını Düzenleme

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

Önerilen değişiklikler:

upload_max_filesize = 32M
post_max_size = 32M
memory_limit = 256M
max_execution_time = 300
date.timezone = Europe/Istanbul

Apache Modüllerini Yönetme

sudo a2enmod rewrite   # URL yeniden yazma
sudo a2enmod headers   # HTTP header yönetimi
sudo systemctl restart apache2

MySQL Servisini Yönetme

sudo systemctl status mysql
sudo systemctl restart mysql
sudo systemctl enable mysql  # Otomatik başlatma

Adım 7 - Güvenlik İpuçları

UFW Kurallarını Kontrol Etme

sudo ufw status numbered

SSH Portunu Değiştirme (Opsiyonel)

sudo nano /etc/ssh/sshd_config
# Port 22 yerine Port 2222 yazın
sudo systemctl restart sshd

Apache'de .htaccess Kullanımı

Sanal host dosyasında AllowOverride All olduğundan emin olun.

Otomatik Güvenlik Güncellemeleri

sudo apt install unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades

Sorun Giderme

Apache Hatalarını Görüntüleme

sudo tail -f /var/log/apache2/error.log

MySQL Hatalarını Görüntüleme

sudo tail -f /var/log/mysql/error.log

Port Dinleme Kontrolü

sudo netstat -tulpn | grep -E '(80|443|3306)'

SELinux/AppArmor Durumu

sudo aa-status

Sonuç

Ubuntu 24.04 üzerinde LAMP kurulumu başarıyla tamamlandı. Artık modern PHP 8.3 uygulamaları, MySQL 8.0 ve Apache 2.4 ile web projelerinizi çalıştırabilirsiniz.

Kurulan bileşenler:

  • Linux (Ubuntu 24.04 LTS - Noble Numbat)
  • Apache 2.4
  • MySQL 8.0
  • PHP 8.3

Önemli Notlar:

  • Ubuntu 24.04, 2029 yılına kadar desteklenecektir (LTS)
  • PHP 7.x kullanmak istiyorsanız Ubuntu 20.04 veya 22.04 tercih edin
  • MySQL 8.0'da varsayılan kimlik doğrulama eklentisi caching_sha2_password'dır
  • Üretim ortamında HTTPS kullanmak için Let's Encrypt ile SSL sertifikası kurun

Başarılı bir LAMP deneyimi için düzenli güncelleme yapmayı ve güvenlik duvarı kurallarını kontrol etmeyi unutmayın.

Yanıtlamak için burayı tıklayın.
comment url
Giriş Yap