چگونه HTTP را به HTTPS ریدایرکت کنیم؟
ما در این آموزش قصد داریم که این دو پروتکل رو بررسی کنیم و در نهایت نحوه ریدایرکت کردن HTTP به HTTPS با روش های مختلف روانجام بدیم.
HTTP چیست؟
HTTP مخفف عبارت Hyper Text Transfer Protocol است که به معني پروتکلي براي انتقال ابرمتن ها ميباشد. بر اساس اين پروتکل، امکان ايجاد صفحات وب و سايتهاي اينترنتي فراهم شد. اين پروتکل وظيفه برقراري ارتباط ميان سرور و کلاينت را در يک شبکه کامپيوتري برعهده دارد. به عبارتي ديگر اين پروتکل مسئوليت برقراري ارتباط بين سرويس دهندگان و سرويس گيرندگان وب را برعهده دارد.
در نتیجه HTTP به منظور ارسال درخواست و دریافت آن از سرور طراحی شده که قابلیت یافتن یک وب سایت را در فضای اینترنت در اختیار ما قرار میدهد.
HTTPS چیست؟
پروتکل امن انتقال ابر متن (Hyper Text Transfer Protocol Secure) که به اختصار تحت عنوان Https شناخته میشود، در حقیقت نسخه امنیتی پروتکل HTTP است.در پروتکل HTTPS اطلاعات رد و بدل شده بین وبسایت و کاربر، به صورت رمزنگاری شده منتقل میشوند. یعنی حتی اگر کسانی بتوانند به اطلاعات رد و بدل شده در سایت دسترسی پیدا کنند، نمیتوانند از محتوای آن سو استفاده کنند. زیرا این اطلاعات به صورت رمزنگاری شده هستند و فقط توسط کسی قابل مشاهده خواهند بود که کلید رمزگشایی آنها را داشته باشد.
HTTPS از یکی از دو پروتکل SSL یا TLS برای رمزگذاری ارتباطات استفاده می کند. این پروتکل ها، از روش رمزنگاری نامتقارن استفاده میکنند. در این روش از دو کلید عمومی و خصوصی برای رمزنگاری اطلاعات استفاده میشود.
حالا که با این دو پروتکل مهم آشنا شدیم و متوجه تفاوت آنها شدیم ،نحوه ریدایرکت کردن http به https رو نیز بررسی کنیم:
چرا باید HTTP را به HTTPS ریدایرکت کنیم؟
این سوال 2 پاسخ مهم دارد :
استفاده کاربران از نسخه امن سایت
یکی از مهم ترین موارد استفاده از سایت امنیت آن است. اگر سایت شما ریدایرکت HTTP به HTTPS را به صورت خودکار نداشته باشد، تمام کسانی که با استفاده از HTTP به سایت شما متصل شوند را بدون اینکه از SSL استفاده بکند سرویسدهی میکند. به این صورت که انگار SSL روی آن فعال نشده است و شما از پروتکل امنیتی استفاده نمیکنید. پس برای برقراری امنیت هم که شده است باید ریدایرکت HTTP به HTTPS را انجام دهید تا تمامی کسانی که بر طبق عادت از آدرسی با بخش ابتدایی HTTP از سایت شما بازدید میکنند بتوانند از رمزنگاریهای SSL استفاده کرده و یک ارتباط امن داشته باشند.
فهرست شدن سایت در مرورگرها
به این صورت هست مرورگر ها این دو پروتکل رو از یکدیگر به صورت جدا در نظر میگیرند و اگر شما این ریدایرکت رو انجام بدید ،بنظر میاد که 2 سایت دارید و در مرورگر به صورت فهرستی سایت شما را نمایش میدهد.این برای سایت شما یک مسئله فاجعه بار است چون بنظر 2 سایت کاملا مشابه هست و رتبه های تصادفی به شما نمایش داده میشود و بخش بزرگی از بازدید های سایت خود را از دست میدهید.
با ریدایرکت HTTP به HTTPS میتوانید از این اتفاق جلوگیری کنید و در واقع به موتورهای جستوجو بگویید که در اینجا با یک سایت اصلی که آن هم از پروتکل SSL استفاده میکند طرف است. لازم به ذکر است استفاده از SSL خود در رتبهبندی موتورهای جستوجو تاثیر ویژهای دارد و سایتهایی که از HTTPS در آدرس خود استفاده میکنند، رشد خیلی بیشتر و قابل لمسی دارند.
اما سوال اصلی اینجاست که این قابلیت هارا چگونه برای سایت خود فعال کنیم؟
آموزش ریدایرکت کردن HTTP به HTTPS
برای ریدایرکت کردن سایت، شما میتوانید از روش ها مختلفی استفاده کنید که در ادامه به آن روش ها میپردازیم.
آموزش ریدایرکت کردن HTTP به HTTPS در Cpanel
از مواردی که با کمک آن میتوانید ریدایرکت HTTP به HTTPS را انجام دهید از طریق کنترل پنل Cpanel است. این کنترل پنل به شما این امکان را خواهد داد تا با یک کلیک ساده، ریدایرکت HTTP به HTTPS را روی دامنهی خود فعال کنید و نگران این نباشید که سایت شما از طریق پروتکل HTTP نمایش داده میشود.
برای این کار باید از طریق منوی Cpanel به قسمت Domains بروید. در این صفحه شما فهرست تمامی دامنههای فعال روی هاست خود را مشاهده میکنید. در این فهرست شما به اطلاعاتی مانند، نام دامنه، پوشه Root ریدایرکتهای دامنه و گزینههایی برای مدیریت و تغییرات دامنه و همینطور یک کلید سوئیچ on و off برای ریدایرکت HTTP به HTTPS در اختیار شما قرار خواهد داشت.
زمانی که شما این گزینه را فعال کنید ریدایرکت HTTP به HTTPS به صورت خودکار در سایت شما انجام میشود.
آموزش ریدایرکت کردن HTTP به HTTPS در دایرکت ادمین
یکی دیگر از کنترل پنلهای پر طرفدار که به شما این امکان را میدهد که ریدایرکت HTTP به HTTPS را روی سایت خود با یک کلیک ساده فعال کنید، دایرکت ادمین میباشد. البته زمانی که باید این کار را انجام دهید در دایرکت ادمین کمی متفاوت خواهد بود. به این صورت که تا اینجا دیدیم که ابتدا شما SSL خود را فعال میکردید و سپس نسبت به ریدایرکت HTTP به HTTPS و فعالسازی گزینههای مربوطه اقدام میکردید.
اما دایرکت ادمین به این صورت عمل نمیکند و میتوان گفت که این کنترل پنل لینوکسی حرفهای و اپن سورس، در رفع این نیاز پیش دستی کرده است و در همان زمانی که قصد فعال سازی SSL خود را دارید، ریدایرکت HTTP به HTTPS را تحت عنوان گزینهای به نام Force Redirect برای شما پیادهسازی میکند.
برای استفاده از این گزینه باید مطابق تصویر زیر از بخش Account manager وارد صفحه SSL Certificate بشوید.
در این صفحه شما قادر خواهید بود تا ه تنظیمات SSL خود را تغییر داده و آن را فعال یا غیرفعال کنید و یا گواهینامهی خود را تغییر دهید. در پایینترین قسمت این صفحه یک سوال از شما پرسیده شده است که میتوانید پاسخ آن را با زدن تیک چک باکس موردنظر بدهید.
و پس از کلیک کردن روی دکمهی Save یک پیغام مبنی بر موفقیتآمیز بودن تغییرات و فعال شدن ریدایرکت HTTP به HTTPS دریافت خواهید کرد و ریدایرکت پروتکل سایت شما به دررستی انجام شده.
آموزش ریدایرکت کردن HTTP به HTTPS در وردپرس
وردپرس یکی از معروفترین و کاربردیترین cms هایی هست که طرفداران زیادی دارد و با اختلاف بسیار بالایی نسبت به رقیبان خود در حال رفع نیاز علاقه مندان این حوزه است. اگر با این cms آشنایی داشته باشید، قطعا میدانید که وردپرس برای هر مسئله و یا مشکلی که برای کاربران خود بوجود می آید افزونه را دارد که به راحتی آن مسئله را میتوان پشت سر گذاشت.
برای این کار گزینههای مختلف زیادی وجود دارد که میتواند به سادگی ریدایرکت HTTP به HTTPS را برای شما پیادهسازی کنند. اما یکی از سادهترین مواردی که میتوانید برای این کار از آن استفاده کنید یک افزونهی واقعا ساده به همین نام است. SSL واقعا ساده (Really Easy SSL) که کافی است آن را نصب کرده و یک تیک را بزنید. برای ریدایرکت HTTP به HTTPS با استفاده از این افزونه به صورت زیر عمل کنید:
افزونه را در بخش افزودن افزونههای جدید جستوجو کنید و آن را نصب نمایید:
بعد از نصب افزونه باید از منوی تنظیمات گزینه SSL که در آخر اضافه شده است را انتخاب کنید.
بعد از انتخاب این گزینه شما به صفحهی تنظیمات افزونه خود منتقل خواهید شد و می توانید ریدایرکت HTTP به HTTPS سایت خود را فعال کنید.
در بین گزینههایی که مشاهده میکنید یک گزینه به نام فعال کردن تغییر مسیر 301 توسط htaccess وجود دارد که با فعالسازی آن کار ریدایرکت HTTP به HTTPS به صورت خودکار برای شما انجام خواهد شد.
آموزش ریدایرکت کردن HTTP به HTTPS با استفاده از فایل htaccess
در صورتی که شما از هیچ یک از این روشها نمیتوانید به تنظیمات سایت خود دسترسی داشته باشید، هنوز هم راهی برای ریدایرکت HTTP به HTTPS وجود دارد. از طریق ایجاد تغییرات مستقیم در فایل htaccess استفاده کنید. در نظر داشته باشید که حتما از این فایل بکاپ تهیه نمایید و قبل از این کار بههیچوجه برای تغییر این فایل اقدام نکنید.
برای این کار لازم است تا کدهای زیر را به فایل htaccess خود اضافه کنید:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
با اضافه کردن این کدها سرور شما ریدایرکت HTTP به HTTPS را برای تمامی دامنههایی را که روی هاست خود داشته باشید اعمال میکند. البته این روش پیشنهاد نمیشود و معمولا تغییر فایل htaccess آخرین گزینهای است که باید برای اعمال این تنظیمات سراغ آن برویم. به شما توصیه میکنیم که ابتدا سعی کنید از سایر روشها این کار را انجام دهید.
نتیجه نهایی
ریدایرکت کردن HTTP به HTTPS یکی از کارهایی است که میتواند هم برای یک ارتباط امن با کاربران شما و هم برای یک سئوی خوب و بهینه مورد استفاده قرار بگیرد. در نظر داشته باشید که با استفاده از قابلیتهایی که کنترل پنلها برای شما فراهم میکند میتوانید این کار را در سریعترین زمان ممکن انجام دهید. همینطور این امکان برای شما وجود دارد که از طریق افزونههای وردپرس نیز این کار را انجام دهید. توجه داشته باشید که اگر برای ریدایرکت HTTP به HTTPS لازم شد که فایل htaccess را دستکاری کنید حتما از آن بکاپ تهیه نمایید.
امیدوارم این آموزش مورد استفاده شما قرار بگیره و حتما تجربه خودتون رو با ما به اشتراک بزارید
اولین نفر باشید که نظر ارسال میکنید