Mehmet

WFN Üye
Konular
1,851
Mesajlar
1,852
Çözüm
0
Ticaret Puanı
0
Üyelik
1 Ay 6 Gün
Konum
YurtDışı
Web Sitesi
Var
Alanı
Google Adsense
1/1
Konu sahibi

OpenCart .htaccess dosyası​


OpenCart’ta .htaccess dosyası, Apache sunucusunda SEO dostu URL’lerin çalışmasını ve isteklerin index.php dosyasına yönlendirilmesini sağlar. OpenCart paketinde sürüme göre htaccess.txt veya .htaccess.txt adıyla gelen örnek dosya, mağazanın ana dizininde .htaccess adıyla kullanılmalıdır. Dosya çalışmıyorsa ilk kontrol edilmesi gerekenler dosyanın doğru dizinde olması, Apache’nin mod_rewrite modülünün açık olması ve sunucunun .htaccess kullanımına izin vermesidir.

Dosya nereye konur ve nasıl hazırlanır?​


OpenCart dosyalarının bulunduğu ana dizini bulun. Bu dizinde index.php, config.php ve çoğu kurulumda admin klasörü yer alır. kullandığınız sürümün örnek htaccess dosyasını kopyalayıp yeni dosyanın adını yalnızca .htaccess yapın. Dosya adı .htaccess.txt olarak kalırsa Apache bunu kullanmaz.

Kurulu sürümün paketindeki tam şablonu kullanın; yalnız birkaç satırlık genel rewrite örneğiyle bütün dosyayı değiştirmeyin. Şablonda RewriteBase satırı varsa kök kurulum için şu biçimi kontrol edebilirsiniz:

Kod:
RewriteBase /

Mağaza example.com/magaza/ gibi bir alt klasördeyse RewriteBase /magaza/ kullanın. OpenCart sürümünüzün paketinde bulunan htaccess.txt dosyasında ek kurallar varsa onları silmek yerine aynı dosyanın temel alınması daha doğrudur; çünkü sürüme veya eklentilere ait özel yönlendirmeler bulunabilir.

Uygulama ve test adımları​

  1. Mevcut çalışan .htaccess dosyasını yedekleyin. Kurulu sürümün paketinden gelen örnek dosyayı esas alın; güncel geliştirme dalının dosyasını eski mağazaya taşımayın.
  2. Kopyanın adını tam olarak .htaccess yapın. Linux sunucularda dosya adının başındaki nokta önemlidir.
  3. Dosyada RewriteBase / satırını mağazanın kurulu olduğu konuma göre düzenleyin. Kök dizin için /, alt klasör için örneğin /magaza/ kullanın.
  4. OpenCart yönetim panelinde sürümünüzdeki SEO URL seçeneğini etkinleştirin ve test edeceğiniz ürün/kategori için uygun, çakışmayan SEO anahtarını kaydedin.
  5. Gizli sekmede bir SEO URL’sini açın. Sayfa açılıyor ve adres çubuğunda index.php?route=... görünmüyorsa kural çalışıyor demektir.
  6. Yalnız ilgili test URL’sinin önbellekten gelmediğini doğrulayın. Ana sayfa yanında ürün, kategori, mevcut görsel/CSS kaynağı ve yönetim girişini de kontrol edin.
Başarılı sonuç, ürün veya kategori sayfasının temiz URL üzerinden açılmasıdır. Sayfa 404 veriyorsa kural dosyaya ulaşmıyor, yanlış dizinde bulunuyor veya OpenCart’taki SEO URL ayarıyla eşleşmiyor olabilir. Sayfa 500 veriyorsa .htaccess içinde desteklenmeyen bir yönerge, yazım hatası veya sunucuda kapalı bir modül ihtimali vardır. Bu durumda geçici olarak son eklediğiniz kuralı kaldırıp Apache hata günlüğünü kontrol edin.

Sunucu ayarının etkisi​


.htaccess dosyasındaki kuralların okunabilmesi için Apache yapılandırmasında ilgili dizin için override izni verilmelidir. Rewrite kuralları için FileInfo yetkisi gerekir; fakat paket şablonundaki Options, erişim veya başlık yönergelerinin izinleri ayrıca değerlendirilir. Yalnız FileInfo verilmesi tüm şablonun sorunsuz çalışacağını kanıtlamaz. Paylaşımlı hostingde bu ayarı genellikle yalnızca hosting yöneticisi değiştirebilir.

Karşılaşılan belirtiye göre kontrol noktası şöyledir:
BelirtiMuhtemel nedenİlk kontrolSonraki adım
SEO URL 404 veriyorKural okunmuyor veya yol yanlışDosya adı ve ana dizinRewriteBase ve hosting desteğini kontrol edin
500 Internal Server ErrorSözdizimi veya izin sorunuApache hata günlüğüSon eklenen satırı kaldırıp yeniden deneyin
URL’de index.php?route= görünüyorSEO URL ayarı kapalı veya rewrite devre dışıOpenCart ayarı ve mod_rewriteSunucu yöneticisinden override iznini doğrulatın
Ana sayfa çalışıyor, alt sayfalar çalışmıyorAlt klasör yolu veya mevcut özel kuralRewriteBase ve dosya sırasıPaketin özgün htaccess.txt içeriğini kullanın
Tablodaki sorunların ortak noktası, .htaccess dosyasının tek başına OpenCart SEO ayarını etkinleştirmemesidir. OpenCart panel ayarı, Apache modülü ve dosya konumu birlikte doğru olmalıdır.

Sık yapılan hatalar​

  • htaccess.txt dosyasını yeniden adlandırmadan kullanmak: Apache’nin varsayılan erişim dosyası adı .htaccess’tir; sunucu bu adı değiştirmişse yöneticinin yapılandırması esas alınır.
  • Dosyayı admin klasörüne koymak: Mağazanın genel URL kuralları için dosya genellikle index.php dosyasının bulunduğu ana dizinde olmalıdır.
  • Alt klasör kurulumunda RewriteBase / bırakmak: Bu, kuralların yanlış yola göre değerlendirilmesine neden olabilir.
  • Farklı OpenCart sürümlerine ait .htaccess içeriklerini rastgele birleştirmek: Eklenti ve sürüm kuralları çakışarak 404 veya 500 hatası oluşturabilir.
  • Çalışan dosyanın tamamını değiştirmek: Önce yedek alınmalı, yalnızca gerekli satır değiştirilmelidir.

Sık sorulan sorular​


.htaccess dosyası görünmüyorsa ne yapmalıyım?​


FTP veya dosya yöneticisinde gizli dosyaları gösterme seçeneğini açın. Dosya yine görünmüyorsa, sunucunun dosyayı oluşturmayı engelleyip engellemediğini hosting desteğine sorun.

Nginx kullanıyorsam bu dosya çalışır mı?​


Hayır. .htaccess Apache’ye özgüdür ve Nginx tarafından okunmaz. Nginx kullanılan sunucuda aynı yönlendirme mantığı sunucu yapılandırmasına ayrıca yazılmalıdır.

Dosyayı silersem mağaza tamamen kapanır mı?​


Ana sayfa ve doğrudan dosya çağrıları çalışabilir; ancak SEO URL’leri bozulabilir. Silmeden önce yedek alın ve değişiklikten sonra ürün, kategori ve yönetim paneli girişini ayrı ayrı test edin.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Konuyu görüntüleyenler

Bu konuyu şu anda görüntüleyen üye bulunmuyor.
Robotlar:
  • Anthropic