آموزش رفع خطاهای رایج SSL
خطاهای رایج SSL شامل چه خطاهایی هستند؟همانطور که می دانید ، گوگل در اواخر سال 2017 ،وب سایت هایی که گواهینامه SSL را بر روی سایت خود نصب نکرده بودند را نا امن یا insecure شناخت.
اگر مدیر یک وب سایت باشید،قطعا دوست ندارید کاربران پس از ورودشان به سایت شما با عبارت اتصال ایمن نیست مواجه شوند به همین دلیل گواهی SSL را در سایت خود فعال کرده اید. اما ممکن است با مشکلاتی مواجه شده باشید.
در این مقاله به شما آموزش خواهیم داد که چگونه خطاهای متداولی که پس از نصب SSL در سایت وردپرس خود با آنها مواجه میشوید را به راحت ترین روش ممکن رفع کنید.
اگر نمی دانید که SSL چیست شما را دعوت می کنیم که مقاله Https یا پروتکل انتقال امن Https را مطالعه نمایید.
رفع خطای NET :: ERR_CERT_INVALID
این ارور که یکی از خطاهای رایج SSL است ، درمورد هک و یا حملات و تهدیدات سایت به کاربران هشدار می دهد که اتصال آنها به وب سایت شما امن نیست که البته ظاهر این ارور در مرورگرهای مختلف،متفاوت است.
دلایل مختلفی که باعث بروز این خطا می شوند عبارتند از:
گواهی SSL منقضی شده است
گواهی SSL برای نام یا زیردامنه متفاوت صادر شده است
و یا مرجع صدور گواهی توسط مرورگر قابل تشخیص نیست
برای حل این مشکل با پشتیبانی ارائه دهنده خدمات SSL خود تماس بگیرید .
خطای Mixed Content
این خطا وقتی اتفاق می افتد که HTML از طریق HTTPS لود می شود اما برخی فایل های دیگر مثل تصاویر و اسکریپتها با پروتکل نا امن HTTP فراخوانی و یا خوانده می شوند که در این صورت معمولا علامت قفل در کنار نوار آدرس سایت شما ناپدید خواهد شد و اخطاری جای آن را می گیرد.
رفع خطای Mixed Content
به دو صورت دستی و یا استفاده از افزونه می توان این خطا را رفع کرد که در ادامه به توضیح هرکدام می پردازیم:
استفاده از افزونه
برای رفع خطای Mixed Content می توانید از افزونه Really Simple SSL استفاده کنید، کافی است این افزونه را از مخزن وردپرس دانلود کرده و آن را نصب و فعالسازی کنید.
پس از فعالسازی گزینه جدیدی به نام SSL به منوی سمت راست در قسمت تنظیمات پیشخوان وردپرس شما افزوده خواهد شد. این افزونه به طور خودکار تنظیمات سایت شما را شناسایی کرده و تمامی خطاهای موجود در HTTPS را برطرف می نماید.
استفاده از روش دستی
قبل از استفاده از روش دستی ابتدا باید مطمئن شوید که در تنظیمات وردپرس از HTTPS استفاده کرده اید سپس در منوی سمت راست پیشخوان وردپرس ،روی تنظیمات و سپس زیر منوی عمومی کلیک کنید.
در صورتی که آدرس های موجود با HTTP شروع می شوند باید آنها را اصلاح و به HTTPS تغییر دهید و در نهایت روی گزینه ذخیره تنظیمات کلیک کنید.
در قدم بعدی باید تمام سایت رابررسی کرده و تمامی آدرس ها در پایگاه داده سایت خود با HTTPS به صورت دستی جایگزین کنید برای انجام راحت تر این کار میتوانید از افزونه Better Search Replace نیز استفاده نمایید.
پس از نصب و فعالسازی افزونه یک منوی جدید گزینه جدیدی در منوی ابزار در پیشخوان وردپرس شما با نام Better Search Replace اضافه خواهد شد.
روی این بخش ان کلیک کنید، در قسمت Search for باید آدرس سایت خود را با HTTP و در قسمت Replace with آدرس سایت تان را با HTTPS وارد کنید. در نهایت روی گزینه Run Search/Replace کلیک کنید تا تمامی آدرس ها درون پایگاه داده شما بروزرسانی شوند.
اگر هنوز مشکل SSL سایت شما رفع نشده می توانید آدرس ها را به صورت دستی در افزونه ها و قالب ها تصحیح کنید که در ادامه برایتان شرح می دهیم:
روی صفحه مرورگر خود کلیک راست کرده و روی گزینه inspect کلیک کنید، شما می توانید از طریق مرورگر خود منابعی که باعث بروز این خطا می شوند را جستجو کنید. پس از یافتن منابع خطا و مکان آن ها باید آدرس ها در تمامی فایل های قالب خود پیدا کرده و HTTP را با HTTPS جایگزین کنید.
توجه داشته باشد که ممکن است انجام این کار برای مبتدیان کمی دشوار باشد ، به خصوص درمورد خطای ناشی از افزونه ها ، چرا که بهتر است فایل های افزونه ها را به صورت دستی ویرایش نکنید و از توسعه دهنده قالب و افزونه ها کمک بگیرید.
رفع خطای ریدایرکت بی شمار
با ویرایش فایل wp-config.php و اضافه کردن کد زیر به آن ، وردپرس به شما اجازه خواهد داد که تمامی آدرس ها به HTTPD ریدایرکت شوند:
define(‘FORCE_SSL_ADMIN’, true);
اما افزودن کد بالا، در بسیاری از موارد باعث ایجاد خطای ریدایرکت بی شمار می شود که برای حل این مشکل کافی ست قطعه کد زیر را در فایل wp-config.php قبل از خط “That’s all, stop editing! Happy blogging” وارد کنید.
define(‘FORCE_SSL_ADMIN’, true);
// in some setups HTTP_X_FORWARDED_PROTO might contain
// a comma-separated list e.g. http,https
// so check for https existence
if (strpos($_SERVER[‘HTTP_X_FORWARDED_PROTO’], ‘https’) !== false)
$_SERVER[‘HTTPS’]=’on’;
رفع مشکل ریدایرکت از HHTP به HTTPS
اگر از افزونه Really Simple SSL استفاده می کنید که مشکلی ندارید و این افزونه از ریدایرکت ها مراقبت خواهد کرد در غیر این صورت باید ریدایرکت ها را به صورت دستی تنظیم کنید.
برای این منظور و تنظیم ریدایرکت ها از HTTP به HTTPS می توانید کد زیر را به فایل htaccess. خود اضافه کنید.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
کلام آخر
امروزه داشتن گواهینامه SSL برای هر وب سایت امری ضروری است، بر خلاف گذشته که این گواهینامه فقط به وب سایتهای تجاری که حاوی اطلاعات محرمانه بود اختصاص داشت ،امروزه گوگل به ضرورت این امر اشاره کرده و وب سایت ها را برای داشتن امنیت بیشتر به استفاده از آن تشویق می کند.
خطاهای رایج SSL و راه حل های آن را در این مقاله آموزش دادیم، اگر در استفاده از این گواهینامه با خطا رو به رو شدید ،حتما راه حل های گرداوری شده در این مقاله را به دقت اجرا کنید.