PHP ile HTTPS Adres Yönlendirmesi
Merhabalar. Para verdiniz hostunuza SSL kurdunuz. Ancak insanlar hala SSL olmadan sitenize erişiyor. Bu tabii Google-Bot içinde geçerli. Google Chrome kullananlarda siteniz “Güvenli Değil” olarak işaretleniyor ve sitenize giren çıkıyor. Tabii sizde sinir oluyorsunuz. Ben olsam bende sinir olurdum. 🙂 PHP ile SSL olmadan erişmeyen kişilere ne gibi önlemler alabiliriz? Aslına bakarsanız bu sorunu PHP ile kolayca yapabilirsiniz. Bunun için PHP dosyanızın (genelde index.php dosyasıdır) en başına <?php satırından sonra aşağıdaki komutları ekleyebilirsiniz.
if(empty($_SERVER['HTTPS']) || $_SERVER['HTTPS'] == "off"){ $httpsgit = 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; header('HTTP/1.1 301 Moved Permanently'); header('Location: ' . $httpsgit); exit(); }
Hepsi bu kadar. Site adresinizi otomatik aldığından kodda bir değişiklik gerekmiyor. Sorularınızı yorum olarak ekleyebilirsiniz.
Hala Açıkmış ya netopsiyon 🙂
Bunu WordPress ile kurulan sitede nasıl yapacağız?
Bu yazdığım düz PHP çalışmaları içindir. WordPress gibi hazır yazılımlarda işlem için .htaccess dosyası kullanılmalıdır. Örnek olarak aşağıdaki kodu .htaccess dosyasına ekleyerek kullanabilirsiniz.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
#Alt tarafta www ile yönlendirme yapacaksak eklenecek.
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]