Drupal URL Optimizasyonu: SEO Dostu URL Yapılandırması

Drupal CMS'de URL alias, Pathauto modülü ve Clean URL ayarlarını öğrenin. SEO dostu URL yapısı için Drupal yapılandırma rehberi.

Drupal, kurumsal düzeyde web siteleri için tercih edilen güçlü bir içerik yönetim sistemidir. Bu rehberde, Drupal'da SEO dostu URL yapılandırmasını detaylı olarak inceleyeceğiz.

Drupal URL Yapısı

Varsayılan URL Formatı

Drupal varsayılan olarak node ID tabanlı URL'ler oluşturur:

// Varsayılan Drupal URL'leri
/node/1
/node/123
/taxonomy/term/5
/user/1

// SEO dostu URL'ler (alias ile)
/hakkimizda
/urunler/laptop-bilgisayar
/blog/drupal-seo-rehberi

Clean URLs Aktivasyonu

Apache için .htaccess Ayarları

# Drupal .htaccess dosyası
<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteBase /
  
  # Clean URLs için rewrite kuralları
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
</IfModule>

Nginx Yapılandırması

# Drupal için Nginx config
server {
    location / {
        try_files $uri /index.php?$query_string;
    }
    
    location ~ \.php$ {
        fastcgi_pass unix:/var/run/php-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

URL Alias Sistemi

Manuel URL Alias Oluşturma

Admin > Configuration > URL aliases menüsünden:

// URL Alias yapılandırması
System path: /node/123
URL alias: /urunler/samsung-galaxy-s24
Language: Turkish

// Taxonomy için
System path: /taxonomy/term/5
URL alias: /kategori/teknoloji

Pathauto Modülü

Kurulum

# Composer ile kurulum
composer require drupal/pathauto

# Drush ile aktifleştirme
drush en pathauto -y

Pattern Yapılandırması

// İçerik türü için pattern
Content type: Article
Path pattern: blog/[node:title]

// Taxonomy term için pattern
Vocabulary: Categories
Path pattern: kategori/[term:name]

// User için pattern
User accounts
Path pattern: kullanici/[user:name]

Token Kullanımı

// Drupal Pathauto token örnekleri
[node:title]           // İçerik başlığı
[node:created:custom:Y/m] // Tarih (2024/01)
[node:author:name]     // Yazar adı
[term:vocabulary]      // Terim sözlüğü
[term:parents:join-path] // Üst kategoriler

// Örnek pattern
blog/[node:created:custom:Y]/[node:title]
// Sonuç: blog/2024/drupal-seo-rehberi

Çoklu Dil URL Yapısı

Language Prefix Ayarları

// URL dil prefix yapılandırması
https://example.com/tr/hakkimizda
https://example.com/en/about-us
https://example.com/de/uber-uns

// Language negotiation ayarları
1. URL prefix: /tr, /en, /de
2. Domain: tr.example.com, en.example.com
3. Browser language detection

Hreflang Uygulaması

// Drupal hreflang modülü çıktısı
<link rel="alternate" hreflang="tr" href="https://example.com/tr/sayfa" />
<link rel="alternate" hreflang="en" href="https://example.com/en/page" />
<link rel="alternate" hreflang="x-default" href="https://example.com/en/page" />

Redirect Modülü

301 Redirect Yönetimi

# Redirect modülü kurulumu
composer require drupal/redirect
drush en redirect -y

// Redirect yapılandırması
Source path: /eski-sayfa
Redirect to: /yeni-sayfa
Status code: 301 (Moved Permanently)

Global Redirect Ayarları

// Global redirect seçenekleri
- Trailing slash redirect: /sayfa/ → /sayfa
- Non-clean to clean URL redirect
- Case-insensitive URL redirect
- Remove query parameters

Metatag Modülü

Canonical URL Ayarları

# Metatag modülü
composer require drupal/metatag
drush en metatag -y

// Canonical URL yapılandırması
<link rel="canonical" href="[current-page:url:absolute]" />

// Pagination için
<link rel="prev" href="[current-page:url:absolute]?page=1" />
<link rel="next" href="[current-page:url:absolute]?page=3" />

XML Sitemap

Simple Sitemap Modülü

# Kurulum
composer require drupal/simple_sitemap
drush en simple_sitemap -y

// Sitemap yapılandırması
- İçerik türlerini seçin
- Öncelik (priority) ayarlayın
- Değişim sıklığı (changefreq) belirleyin

// Sitemap URL
https://example.com/sitemap.xml

URL Alias için Best Practices

Drupal 10 URL Yenilikleri

// Drupal 10 yeni özellikler
- Path alias entity API geliştirmeleri
- Daha iyi cache invalidation
- JSON:API URL desteği
- Decoupled frontend URL yönetimi

Sonuç

Drupal'ın güçlü URL yönetim sistemi, Pathauto ve Redirect modülleriyle birlikte kapsamlı SEO optimizasyonu sağlar. Doğru yapılandırma ile kurumsal düzeyde SEO dostu URL yapısı oluşturabilirsiniz.