.htaccess ile http’den https’e yönlendirme nasıl yapılır?

Bu yazımızda, yeni bir SSL kurduğunuz web sitenizin tüm URL’lerini .htaccess aracılığıyla “http” protokolünden “https” protokolüne nasıl yönlendireceğinize değineceğiz. Benzer bir uygulamayı Egonomik.com’da da görebilirsiniz. Örneğin “http://egonomik.com/web-tasarim/” bağlantısını açmak istediğinizde sunucumuzun sizi otomatik olarak “https://egonomik.com/web-tasarim/” bağlantısına yönlendirdiğini görebilirsiniz. Aşağıda anlatacağımız yönergeleri takip ettiğinizde siz de sitenizde aynı özelliğe sahip olacaksınız.

Önemli: .htaccess dosyanız web sitenizin çalışmasını etkileyecek tanımlamalar içerir. Bu dosyada yapacağınız hatalı değişiklikler ciddi sorunlar yaşamanıza neden olabilir. Ne yaptığınızdan emin değilseniz anlatacağımız düzenlemeleri yaparken hosting servis sağlayıcınızdan veya konu hakkında bilgi sahibi birinden yardım almanızı öneririz.

Bu makalede aşağıdaki başlıklar yer almaktadır:

  1. SSL Nedir?
  2. Sitenizde neden SSL kullanmalısınız?
  3. FTP veya cPanel kullanarak .htaccess dosyası nasıl düzenlenir?
  4. Apache sunucularında https yönlendirmesi nasıl yapılır?
  5. NGINX sunucularında https yönlendirmesi nasıl yapılır?
  6. Cloudflare ile https yönlendirmesi nasıl yapılır?

Yazımıza öncelikle SSL’in tanımı ile başlayalım.

SSL Nedir?

SSL yani açılımı Secure Socket Layer olan, web tarayıcı ve sunucu arasındaki bağlantıyı şifreleyen bir standart güvenlik protokolüdür. Kredi kartı bilgileri, parolalar, kullanıcı bilgileri gibi hassas verileri korur.

Sitenizde neden SSL kullanmalısınız?

Şu nedenlerden dolayı SSL kullanmalısınız:

  • Alım satım işlemlerinin güvenliği için
  • SEO’ya pozitif etkisi vardır
  • Web sitenizi phishing ve hackerlardan korur
  • PCI (Kredi Kartı) uyumluluğu için
  • Müşteri verilerini korur
  • HTTPS tarayıcı güven belirteci görüntülenir
  • Adres çubuğu yeşil olur

https

.htaccess dosyasını düzenleyerek http bağlantıları https’e nasıl yönlendirilir?

NOT: .htaccess ile https yönlendirmesi ekleyebilmeniz için bir SSL sertifikası kurmuş olmanız gerekmektedir. .htaccess dosyanızı FTP veya cPanel aracılığı ile düzenleyebilirsiniz.

Aşağıdaki kodu .htaccess dosyanıza ekleyerek tüm trafiği HTTPS kullanmaya zorlayabilirsiniz:

1
2
3
RewriteEngine On
RewriteCond %{SERVER_PORT}80
RewriteRule ^(.*)$ https://www.alanadiniz.com/$1 [R,L]

.htaccess dosyanıza nasıl ulaşacağınızı bilmiyorsanız telaşlanmayın, yazıyı okumaya devam edin.

cPanel Dosya Yöneticisi ile .htaccess Düzenleme

NOT: Değişiklik yapmadan önce site dosyalarınızın yedeğini alın

cPanel dosya yöneticisi ile .htaccess dosyanızı düzenlemek için şu adımları izleyin:

  1. cPanele giriş yapın
  2. Dosyalar > Dosya Yöneticisine gidin

    cpanel1

  3. Sağ en üstte bulunan Ayarlar butonuna tıklayın ve “Gizli Dosyaları Göster (dotfiles)” seçeneğini işaretleyin ve SAVE butonuna tıklayarak değişiklikleri kaydedin

    cpanel2

  4. public_html klasörü altında .htaccess dosyanızı görüntüleyebilirsiniz.

    cpanel3

  5. .htaccess dosyasına sağ tıklayın ve EDIT seçeneğine tıklayın.
  6. Kodlama ile ilgili bir diyalog görüntülenecektir. EDIT‘e tıklayarak devam edin.
  7. Dosyayı düzenleyin.
  8. Save Changes” seçeneğine tıklayarak değişiklikleri kaydedin.
  9. Doğrulama için web sitenizi test edin.

Apache Sunucusu ile HTTPS Yönlendirmesi

Tüm Trafiği Yönlendirme

.htaccess dosyanıza şu kodu girin:

1
2
3
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.alanadiniz.com/$1 [R,L]

Sadece belirli bir domaini https’e yönlendirmek için şu kodu girin:

1
2
3
4
RewriteEngine On
RewriteCond %{HTTP_HOST} ^alanadiniz\\.com [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.alanadiniz.com/$1 [R,L]

Sadece belirli bir klasör için https yönlendirmesi eklemek için ise şu kodu girin:

1
2
3
4
Services we offer:RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} klasor
RewriteRule ^(.*)$ https://www.alanadiniz.com/klasor/$1 [R,L]

NOT: “alanadiniz” ve “klasor” kısımlarını kendi alan adınız veya klasörünüzün adı ile değiştirin, aksi takdirde kodlar işe yaramayacaktır.

NGINX ile HTTPS Yönlendirmesi

  1. NGINX sunucunuza giriş yapın
  2. Sunucu direktifine şunu girin “return 301 https://$server_name$request_uri
  3. Dosyayı kaydedin
  4. NGINX web sunucusunu yeniden başlatın

NOT: nginx.conf veya default.conf dosyasının yedeğini alın.

Cloudflare ile HTTPS Yönlendirmesi Ekleme

  1. Cloudflare hesabınıza giriş yapın
  2. Web sitenizi seçin
  3. Crypto sekmesine gidin
  4. “Always Use HTTPS section” seçeneğini işaretleyin
  5. Cloudflare’in etkin olduğundan emin olun.

Umarım yazımız hoşunuza gitmiştir. Kafanıza takılan soruları bizimle yorum kısmından paylaşabilirsiniz. SSL sertifikası kurulumu ile ilgili detaylı yardım için hosting sağlayıcınız ile görüşebilirsiniz.

İlginizi Çekebilecek Diğer İçerikler

Facebook Yorumları

2 Yorum

  1. Murat Aslan

    Peki bu değişikliği yaptıktan sonra site adreslerinin değiştiğini Google’a bildirmemiz gerekirmi yoksa kendisi otomatik olarak tanırmı?

    • Mert Öncel
      Yazar

      Google Search Console üzerinden sitenizi https’li şekilde Google’a bildirmenizi tavsiye ederiz.

Uyarı: Yorumlarda link kullanmayınız. Link içeren yorumlar otomatik olarak spam kabul edilmektedir.

Murat Aslan için bir cevap yazın Cevabı iptal et

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir