PHP ile SSL ve www’Lu adrese 301 Yönlendirmesi

php programlama dili

Web sitelerine erişim için domain başında www olması zorunlu değil. Fakat arama motorları www olan ve olmayan aynı domaini iki farklı domain olarak görüp ayrı indexliyor. Aynı sorun ssl sertifikası yüklü sunucunuzda da geçerli. Web siteniz hem https ile açılabilir, hemde http ile. http ile açıldığında siteniz güvensiz duruma düşecek ve güvenilirliği azaltacaktır. En uygun yöntem PHP ile SSL ve www’Lu adrese 301 Yönlendirmesi olacaktır.

Bu işlemi gerçekleştirebilmek için 2 yöntem var, birincisi PHP ile gelen http ve www’suz istekleri https://www olan adrese yönlendirmek, ikincisi ise htaccess ile doğrudan istekleri ssl ve www’lu adrese yönlendirmek. Ben bu yazıda htaccess ile yönlendirmeye değineceğim.

Hali hazırda varolan htaccess dosyamızı herhangi bir text editör ile açıp şu satırları giriyoruz:

RewriteCond %{HTTPS} off
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Kısaca mantıkla, http olarak ve www olmadan gelen tüm bağlantıları https://www. olarak site adresine yönlendirdik.

Eğer wordpress kullanıyorsanız, doğrudan tüm istekleri https://www … /index.php dosyasına yönlendirebilirsiniz.

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /


RewriteCond %{HTTPS} off

RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]


RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

iyi çalışmalar.

Bir cevap yazın

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