Ana içeriğe geç

Apache Web Root Taşıma Rehberi

Bu rehberde Apache’nin varsayılan web kök dizinini yeni bir depolama birimine nasıl taşıyacağınızı öğreneceksiniz.


Bu Rehberde Ne Öğreneceksiniz?

  • Mevcut DocumentRoot konumunu nasıl bulacağınızı
  • Dosyaları yeni dizine doğru biçimde nasıl aktaracağınızı
  • Apache VirtualHost yapılandırmalarını nasıl güncelleyeceğinizi
  • Apache’yi test edip yeniden başlatmayı
  • Eski dizini güvenle kaldırmayı

1. Mevcut Web Root Konumunu Bulma

Önce aktif VirtualHost dosyalarında DocumentRoot satırlarının nerede olduğunu bulalım.

grep -R "DocumentRoot" /etc/apache2/sites-enabled

Bu komut, etkin sitelerde kullanılan tüm DocumentRoot yollarını listeler.

2. Dosyaları Yeni Konuma Kopyalama

Örnek dizinler:

Eski konum

/var/www/rabisu.cloud

Yeni hedef konum

/mnt/harici_depolama

Dosyaları yeni konuma aktaralım:

sudo rsync -av /var/www/rabisu.cloud/ /mnt/harici_depolama

Açıklama:

-a → izinleri ve sahiplik bilgilerini korur. -v → ayrıntılı çıktı gösterir. Kaynak dizinin sonundaki / karakteri dizin içeriğinin taşınmasını sağlar.

3. Apache HTTP VirtualHost Dosyasını Güncelleme

HTTP yapılandırmasını açın:

sudo nano /etc/apache2/sites-enabled/rabisu.cloud.conf

Ardından aşağıdaki gibi düzenleyin:

<VirtualHost *:80>
ServerAdmin admin@rabisu.cloud
ServerName rabisu.cloud
ServerAlias www.rabisu.cloud

DocumentRoot /mnt/harici_depolama

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

<Directory /mnt/harici_depolama>
Options FollowSymLinks
AllowOverride None
Require all granted
</Directory>

Directory bloğu, Apache’nin yeni dizine erişebilmesi için gereklidir.

4. SSL (HTTPS) VirtualHost Dosyasını Güncelleme

HTTPS yapılandırmasını açın:

sudo nano /etc/apache2/sites-enabled/rabisu.cloud-le-ssl.conf

DocumentRoot satırını güncelleyin:

<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin admin@rabisu.cloud
ServerName rabisu.cloud
ServerAlias www.rabisu.cloud

DocumentRoot /mnt/harici_depolama

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
</IfModule>

5. Apache Yapılandırmasını Test Etme ve Yeniden Başlatma

Önce yapılandırmayı kontrol edelim:

sudo apachectl configtest

Beklenen çıktı:

Syntax OK

Ardından Apache’yi yeniden yükleyin:

sudo systemctl reload apache2

6. Eski Web Root Dizinini Silme

Yeni dizin doğru şekilde çalışıyorsa eski dosyaları silebilirsiniz:

sudo rm -Rf /var/www/rabisu.cloud

Bu işlem geri alınamaz.

Sıkça Sorulan Sorular (SSS)

rsync yerine cp kullanabilir miyim?

Kullanabilirsiniz ancak cp tüm izin ve sahiplik bilgilerini her zaman doğru taşımaz. Bu nedenle rsync -a önerilir.

Directory bloğu zorunlu mu?

Evet. Apache varsayılan olarak /var/www dizinine izin verir. Farklı bir konum için erişim tanımlamak gerekir.

İşlem sırasında site yayını kesilir mi?

Genellikle yalnızca Apache reload sırasında çok kısa bir kesinti yaşanır.

Yeni kök dizin olarak harici disk kullanmak güvenli mi?

Doğru izinler verildiği sürece güvenlidir ve depolama kapasitesini artırır.

SSL yapılandırmasını düzenlemezsem ne olur?

HTTP çalışabilir ancak HTTPS eski dizine bakacağı için 404 veya bozuk içerik hatası oluşabilir.

Sonuç

Bu rehber ile Apache web kök dizinini yeni bir depolama birimine taşıyarak sisteminizi daha esnek, düzenli ve ölçeklenebilir hale getirdiniz.

Bu tarz sunucu yönetim işlemlerini daha hızlı gerçekleştirmek için Rabisu Bulut platformunu kullanabilirsiniz.