SSL چیست؟
روشهای زیادی وجود دارد که به وسیله آنها میتوان یک داده را رمزگذاری کرد و آن را به صورتی تبدیل کرد که برای کسانی که ما نمیخواهیم آن را درک کنند قابل فهم باشد. اما عموم این روشها قابل شکسته شدن هستند و مشکلات زیادی را ایجاد میکنند. ولی روشهایی هم وجود دارد که تقریبا میتوان آنها را غیر قابل نفوذ دانست و گفت که این روشها قابل هک شدن نیستند و نمیتوان این رمزنگاریها را باز کرد. یکی از این روشها SSL یا همان Secure Socket Layer به معنی لایه انتقال امن میباشد.
SSL یک پروتکل دو طرفه است که با استفاده از کلیدهای خیلی بزرگ دادهها را رمزنگاری میکند و باز کردن این رمزنگاری صرفا با کلیدهای خصوصی که امن نگهداری میشوند قابل انجام است. باز کردن SSL تقریبا غیرممکن است و مدت زمانی که طول میکشد این رمزنگاری حتی با استفاده از سوپر کامپیوترها شکسته شود، به طور قطع حتما از مدت زمان اعتبار داده بیشتر خواهد بود.
عملکرد SSL به این صورت است که در این ارتباط هر فرستنده و گیرنده دو کلید دارد، کلید عمومی و کلید خصوصی، دادهها با استفاده از کلید عمومی طرف مقابل رمزگذاری میشود، و باز کردن آنها صرفا با کلید خصوصی وی امکانپذیر خواهد بود. ازینرو وقتی دو طرف با رمزنگاری که برای یکدیگر انجام میدهند، پیامی را ردوبدل میکنند، مطمئنا نفر سومی قادر به دریافت و ترجمهی آن نیست.
وقتی میگوییم پروتکل HTTPS یک HTTP است که امن شده است منظور ما این است که برای امنیت دادهها و اینکه این خط ارتباطی بین کاربر و سایت، توسط شخص سومی شنود نشود، از پروتکل SSL استفاده میکند. همین توضیحات کوتاه در مورد این پروتکل برای آموزش ریدایرکت HTTP به HTTPS کفایت میکند و اگر علاقه دارید تا بیشتر در مورد SSLها و پروتکلهای مربوط به آنها مطالعه کنید، میتوانید به مقاله SSL چیست مراجعه کنید. در ادامه به بررسی ریدایرکت HTTP به HTTPS خواهیم پرداخت.
چرا ریدایرکت HTTP به HTTPS مورد نیاز است؟
شاید این سوال برای شما هم پیش آمده باشد که خوب ما تا دیروز از SSL استفاده نمیکردیم و از امروز این ماژول امنیتی را فعال کردهایم، حالا چه نیازی دارد که ریدایرکت HTTP به HTTPS را نیز فعال کنیم و اگر این کار را نکنیم چه میشود. برای ریدایرکت HTTP به HTTPS دو دلیل اساسی وجود دارد که به شما اثبات خواهد کرد این کار بسیار مهم است:
ارائه نسخهی امن از سایت
اولین دلیل موارد امنیتی است. اگر سایت شما ریدایرکت HTTP به HTTPS را به صورت فعال شده نداشته باشد، تمام کسانی که با استفاده از HTTP به سایت شما متصل شوند را بدون اینکه از SSL استفاده بکند سرویسدهی میکند. به این صورت که انگار SSL روی آن فعال نشده است و شما از پروتکل امنیتی استفاده نمیکنید. پس برای برقراری امنیت هم که شده است باید ریدایرکت HTTP به HTTPS را انجام دهید تا تمامی کسانی که بر طبق عادت از آدرسی با بخش ابتدایی HTTP از سایت شما بازدید میکنند بتوانند از رمزنگاریهای SSL استفاده کرده و یک ارتباط امن داشته باشند.
پس در صورتی که میخواهید تمامی کاربران شما از تمامی امکاناتی که روی سایت خود دارید استفاده کنند و امنیت ارتباطات را تضمین کنید، باید ریدایرکت HTTP به HTTPS را پس از فعالسازی SSL انجام دهید.
فهرست شدن در موتورهای جستوجو
دومین دلیلی که باید نسبت به ریدایرکت HTTP به HTTPS اقدام کنید، این است که موتورهای جستوجو پروتکل را نیز بخشی از آدرس سایت شما در نظر میگیرند و سایت شما با HTTPS را، با سایت بدون HTTPS دو نسخه جدا از هم در نظر میگیرند. وقتی این اتفاق بیافتد موتور جستوجو تمامی مطالبی که در هر دو سایت شما وجود دارد را به صورت Duplicate یا کپی در نظر میگیرد و فکر میکند که دو سایت کاملا مشابه وجود دارند.
در چنین حالتی سایت شما برای یک موتور جستوجو بهعنوان دو سایت بیارزش و کپی از هم تلقی میشود و از نتایج جستوجو یا به طور کامل حذف خواهید شد و یا یک رتبه تصادفی به شما داده میشود. این فاجعهبارترین اتفاقی است که میتواند برای یک سایت اینترنتی بیفتد و تقریبا بخش عظیمی از ترافیک خود را از دست خواهید داد. با ریدایرکت HTTP به HTTPS میتوانید از این اتفاق جلوگیری کنید و در واقع به موتورهای جستوجو بگویید که در اینجا با یک سایت اصلی که آن هم از پروتکل SSL استفاده میکند طرف است. لازم به ذکر است استفاده از SSL خود در رتبهبندی موتورهای جستوجو تاثیر ویژهای دارد و سایتهایی که از HTTPS در آدرس خود استفاده میکنند، رشد خیلی بیشتر و قابل لمسی دارند.
اما سوال اساسی اینجاست که ریدایرکت HTTP به HTTPS چگونه انجام میگیرد و برای این کار باید چه کار کنیم!؟
ریدایرکت HTTP به HTTPS
برای ریدایرکت HTTP به HTTPS شما میتوانید از روشهای مختلفی استفاده کنید. در ادامه به معرفی و بررسی چهار مورد از کاربردیترین این روشها خواهیم پرداخت.
ریدایرکت HTTP به HTTPS در وردپرس
وردپرس یکی از معروفترین و کاربردیترین سیستمهای مدیریت محتوا است که طرفداران زیادی دارد و با اختلاف بسیار بالایی نسبت به رقیبان خود در مقام اولین سیستم مدیریت محتوای پر استفاده قرار گرفته است. اگر با این سیستم آشنایی داشته باشید، قطعا میدانید که وردپرس برای هر دردی افزونهای دارد که حکم نوشدارو را داشته باشد. بهترین برنامه صفحهآرایی نیز از این قضیه مستثنی نیست و افزونههای وردپرس زیادی وجود دارند که میتوانند این کار را برای شما انجام دهند.
برای این کار گزینههای مختلف زیادی وجود دارد که میتواند به سادگی ریدایرکت HTTP به HTTPS را برای شما پیادهسازی کنند. اما یکی از سادهترین مواردی که میتوانید برای این کار از آن استفاده کنید یک افزونهی واقعا ساده به همین نام است. SSL واقعا ساده (Really Easy SSL) که کافی است آن را نصب کرده و یک تیک را بزنید. برای ریدایرکت HTTP به HTTPS با استفاده از این افزونه به صورت زیر عمل کنید:
افزونه را در بخش افزودن افزونههای جدید جستوجو کنید و آن را نصب نمایید:
بعد از نصب افزونه نوبت به آن رسیده است که از منوی تنظیمات گزینه SSL که در آخر اضافه شده است را انتخاب کنید.
بعد از انتخاب این گزینه شما به صفحهی تنظیمات افزونه خود منتقل خواهید شد و این امکان را خواهید داشت که با استفاده از آن تنظیمات مربوط به ریدایرکت HTTP به HTTPS سایت خود را فعال کنید.
در بین گزینههایی که مشاهده میکنید یک گزینه به نام فعال کردن تغییر مسیر 301 توسط htaccess وجود دارد که با فعالسازی آن کار ریدایرکت HTTP به HTTPS به صورت خودکار برای شما انجام خواهد شد.
ریدایرکت HTTP به HTTPS با استفاده از کنترل پنل Cpanel
یکی دیگر از مواردی که با کمک آن میتوانید ریدایرکت HTTP به HTTPS را انجام دهید از طریق کنترل پنل Cpanel است. این کنترل پنل به شما این امکان را خواهد داد تا با یک کلیک ساده، ریدایرکت HTTP به HTTPS را روی دامنهی خود فعال کرده و دیگر نگران هیچ چیز نباشید.
برای این کار باید از طریق منوی 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 با استفاده از تغییرات در 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 را دستکاری کنید حتما از آن بکاپ تهیه نمایید.
2 دیدگاه. Leave new
سلام من ssl فعال داشتم و افزونه رو نصب کردم و دیگه دسترسی از پنل قطع شد و ارور 403 اومد این چی بود
درود محمد عزیزم چه افزونهای نصب کردید؟ آیا از داخل وردپرس افزونهای را نصب کردهاید و امکان غیرفعال کردن آن نیست؟