بسیاری از مدیران وبسایتها برای امنیت و بالا بردن سایتشان از پروکتل ssl استفاده میکنند. همچنین مرورگر Chrome از سال 2018 شروع به علامتگذاری همه وبسایت برای نشان دادن امن بودن یا نبودن آنها کرده است. گاهیاوقات مدیران یک وبسایت برای فعالسازی ssl مشکل میشوند. در این مقاله به رفع خطای ssl میپردازیم.
ssl چیست و چرا باید از آن استفاده کنید؟
SSL یک روش رمزگذاری است که اتصال بین مرورگرهای کاربران و سرور میزبانی وردپرس شما را تأمین می کند. هر سایت فعالی یک گواهی SSL صادر میکند. اگر مرورگری ssl را فعال نکرده باشد، برچسب “Secure” میخورد.
برچسب “Secure” در نوار آدرس مرورگر، به مشتریان شما در مورد کسبوکار شما تاثیر بد میگذارد. همچنین اگر بخواهید یک فروشگاه آنلاین ایجاد کنید، باید SSL را فعال کنید. گاهیاوقات وبمستران در روند فعالسازی ssl مشکل میشوند. در ادامه، نگاهی به برخی از مشکلات رایج در SSL و نحوه رفع خطای ssl میاندازیم:
رفع خطاهای ssl
۱- رفع خطا “NET :: ERR_CERT_INVALID”
این پیام خطا در Google Chrome ظاهر میشود. اما مرورگرهای دیگر این خطا را کمی متفاوتتر نشان میدهند. این خطا هشدار میدهد که ارتباط آنها با وبسایت شما ناامن است. و مرورگر کاربران گواهی ارائه شده توسط وبسایت را قبول نمیکند. این به دلایل مختلف ممکن است رخ دهد:
- گواهی SSL به یک نام دامنه یا زیر دامنه صادر میشود.
- گواهی منقضی شده است.
- مرورگر شما گواهی صدور مجوز را به رسمیت نمیشناسد.
اگر یک گواهینامه SSL خریداری کردهاید، از میزبان وردپرس خود درخواست کنید که آن را حل کنند. اما اگر آن را به صورت دستی نصب کردید، پس از آن مجددا آن را نصب کنید یا برای پشتیبانی از ارائهدهنده گواهی SSL خود تماس بگیرید.
۲- رفع خطای محتوا پس ازاعمال شدن ssl بر روی وردپرس
خطاهای محتوا عبارتند از تصاویر،اسکریپتها و یا شیوهنامهها که هنوز هم با استفاده از پروتکل HTTP ناامن در URL بارگیری میشوند. بههمیندلیل شما نمیتوانید یک نماد قفل امن در نوار آدرس وبسایت خود مشاهده کنید.
دو راه برای حل مشکلات محتوای SSL در وردپرس وجود دارد:
– رفع خطاهای محتوا در وردپرس بااستفاده از پلاگین
این روش آسانتر است و برای مبتدیان توصیه میشود.به سادگی پلاگین Really Simple SSL رانصب و فعال کنید. پس از فعالسازی، شما باید از قسمت تنظیمات صفحه SSL برای بررسی تنظیمات پلاگین استفاده کنید. SSL بهطور خودکار از تنظیمات SSL مراقبت میکند و خطاهای محتوای را برطرف میکند.
– رفع خطاهای وردپرس به صورت دستی
این روش نیاز به عیبیابی دستی دارد. اما کارایی آن بسیار مؤثرتر است. ابتدا شما باید مطمئن شوید که از HTTPS در تنظیمات وردپرس استفاده میکنید. به تنظیمات صفحه عمومی بروید و مطمئن شوید که آدرس سایت وردپرس URLهای “HTTPS” دارند.
اگر URLهایی را که با HTTP شروع میشوند را ببینید، پس باید آنها را به HTTPS تغییر دهید. فراموش نکنید که دکمه Save Change را کلیک کنید تا تنظیمات ذخیره شود. بعد، شما نیاز به پیدا کردن URLهای قدیمی HTTP در پایگاه داده وردپرس خود و جایگزین آنها با URLهای جدید HTTPS دارید. شما میتوانید این کار را با نصب و فعال کردن افزونه جستجوی بهتر جایگزین کنید.
پس از فعالسازی، شما نیاز به بازدید از ابزار جستجو دارید و در قسمت «جستجو»، شما باید URL وبسایت خود را با HTTP اضافه کنید. پس از آن، URL وبسایت خود را با https در قسمت «جایگزین» اضافه کنید.
رفع مشکل ریدایرکت های بی شمار در SSL وردپرس
همانطور که در مقاله فعال سازی SSL/HTTPS در وردپرس توضیح داده شد، وردپرس به شما اجازه میدهد SSL/HTTPS را با وارد کردن خط زیر در فایل wp-config.php برای ناحیه مدیریت فعال سازی کنید.
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';
رفع مشکل ریدایرکت HTTP به HTTPS در SSL وردپرس
اگر فکر میکنید وردپرس به طور خودکار درخواست های HTTP را به 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 استفاده کنند. بنابراین قطعاً باید آنها را در سایت خود داشته باشید. اگر در استفاده از گواهینامه به مشکل برخوردید کافی است روشهای ذکر شده در این مقاله را دنبال کنید. به راحتی میتوانید مشکلات را رفع کرده و وب سایت خود را کاملاً فعال و پایدار نگه دارید.