پارس دیتا
کد: KB-SW-C2-FA-49
زمان انتشار: سه‌شنبه 16 شهریور 1395

تغییر مسیر HTTP به HTTPS به طور خودکار

در صورتی که وب سایت دارای SSL باشد، میتوانید با استفاده از کد های Rewrite بازدید کنندگان سایت را از پروتکل HTTP به HTTPS به طور خودکار تغییر مسیر دهید. در این راهنما نمونه از این کد ها ارائه شده است.

تغییر مسیر HTTP به HTTPS به طور خودکار

در میزبانی های لینوکسی با استفاده از فایل htaccess. تغییر مسیر را انجام دهید؛ به طوری که میبایست کد زیر را در فایل htaccess. در شاخه اصلی میزبانی خود قرار دهید.

RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

در میزبانی های ویندوزی با استفاده از فایل web.config تغییر مسیر را انجام دهید؛ به طوری که میبایست کد زیر را در فایل web.config در شاخه اصلی میزبانی خود قرار دهید.

<configuration> <system.webServer> <rewrite> <rules> <rule name="HTTP to HTTPS redirect" stopProcessing="true"> <match url="(.*)" /> <conditions> <add input="{HTTPS}" pattern="off" ignoreCase="true" /> </conditions> <action type="Redirect" redirectType="Permanent" url="https://{HTTP_HOST}/{R:1}" /> </rule> </rules> </rewrite> </system.webServer> </configuration>

و در صورتی که این تغییر مسیر در Sub domain باشد می بایست کد را بصورت زیر تغییر دهید.

<configuration> <system.webServer> <rewrite> <rules> <rule name="HTTP to HTTPS redirect" stopProcessing="true"> <match url="(.*)" /> <conditions> <add input="{HTTPS}" pattern="off" /> <add input="{HTTP_HOST}" pattern="(.+)\.Domainmame\.com" > </conditions> <action type="Redirect" redirectType="Permanent" url="https://{HTTP_HOST}/{R:1}" /> </rule> </rules> </rewrite> </system.webServer> </configuration>

در صورتیکه در کنترل پنل ویندوزی از زبان php استفاده می نمایید کد زیر را در انتهای کدهای index.php کپی نمایید.

if (!(isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || 
   $_SERVER['HTTPS'] == 1) ||  
   isset($_SERVER['HTTP_X_FORWARDED_PROTO']) &&   
   $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https'))
{
   $redirect = 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
   header('HTTP/1.1 301 Moved Permanently');
   header('Location: ' . $redirect);
   exit();
}
?>
آخرین بروزرسانی: چهارشنبه 2 بهمن 1398 11:14:43