راه حل‌های ساده برای رفع مشکل SSL و HTTPS در وردپرس

رفع مشکل SSL در وردپرس

علت مراجعه شما به این صفحه چیزی نیست غیر از اینکه گواهینامه SSL را در سایت وردپرس خود نصب کرده اید و اکنون با مشکل مواجه شده اید. در این مقاله به شما نشان می‌دهیم که چگونه مشکلات و خطاهای رایج و متداولی که پس از نصب SSL در سایت وردپرس خود با آنها مواجه می‌شوید را به راحت ترین روش ممکن رفع کنید.

در اواخر سال 2017 میلادی، گوگل وب سایت هایی که گواهینامه ssl را بر روی سایت خود نصب نکرده بودند به صورت insecure یا ناامن نشانه گذاری کرد. این کار باعث شد بسیاری از وب سایت های وردپرس ssl را روی سایت خود نصب کرده و یک گام اساسی برای افزایش امنیت وردپرس بردارند. اما در عین حال کاربران وردپرس با مشکلاتی مواجه شدند که لازم بود آنها را برطرف کنند.

اگر هنوز گواهینامه SSL را در سایت خود نصب و راه اندازی نکرده اید، ابتدا مقاله آموزش نصب و فعال سازی SSL در وردپرس را بخوانید.

در ادامه متداول ترین خطاهایی که پس از فعال سازی ssl با آنها مواجه می‌شوید و نحوه رفع آنها را بیان می‌کنیم.

آموزش رفع مشکل SSL و HTTPS در وردپرس

متداول ترین خطاهایی که پس از نصب و فعال سازی SSL در وردپرس با آن مواجه می‌شوید عبارتند از:

خطای NET :: ERR_CERT_INVALID

این پیام خطا در گوگل کروم ظاهر می‌شود و در سایر مرورگرها مانند فایرفاکس ممکن است اندکی متفاوت باشد. خطای NET :: ERR_CERT_INVALID به شما در مورد هک های احتمالی، حملات یا تهدیدهای وب سایت هشدار می‌دهد. در واقع کاربران را از عدم امنیت اتصالشان به وب سایت شما آگاه می‌کند.

رفع مشکل SSL در وردپرس

این پیام خطا نشان می‌دهد که مرورگر گواهینامه SSL وب سایت شما را قبول نکرده است. این خطا ممکن است به دلایل مختلفی رخ دهد:

  •      گواهینامه SSL به نام دامنه یا زیر دامنه دیگری صادر شده است.
  •      گواهینامه SSL منقضی شده است.
  •      مرورگر شما مرجع صدور گواهینامه را تشخیص نمی‌دهد.

اگر گواهینامه SSL را به صورت دستی نصب کرده اید، دوباره آن را نصب کنید. اگر مشکل شما برطرف نشد در اسرع وقت با ارائه دهنده گواهینامه SSL تماس گرفته و از آنها راهنمایی بخواهید.

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

در ادامه آموزش به یکی از متداول ترین خطاهای SSL وردپرس و راه های رفع مشکل می پردازیم.

خطای Mixed Content و عدم نمایش قفل سبز ssl

خطای Mixed Content یا محتوای مخلوط وقتی اتفاق می‌افتد که HTML از طریق HTTPS بارگیری شود اما سایر المان ها شامل تصاویر، اسکریپت ها یا استایل شیت ها همچنان از طریق پروتکل ناامن HTTP لود شوند. در چنین حالتی دو اتفاق ممکن است در سایت شما رخ دهد:

  • آیکون قفل در نوار آدرس وب سایت شما ناپدید شده و یک اخطار به جای آن نمایش داده می‌شود.
  • آیکون قفل نمایش داده شود اما تصاویر و منابع ناامن نشان داده نشوند.
رفع مشکل SSL در وردپرس

شما به دو روش می‌توانید این مشکل رایج ssl در وردپرس را رفع کنید. در ادامه آموزش هر دو روش را به شما آموزش خواهیم داد.

رفع خطای Mixed Content در وردپرس با استفاده از افزونه

برای رفع خطای Mixed Content در وردپرس مانند هر قابلیت دیگری می‌توانید از افزونه ها استفاده کنید.

اولین افزونه ای که به شما معرفی می‌کنیم، افزونه Really Simple SSL است. این افزونه به صورت خودکار تنظیمات شما را شناسایی کرده و وب سایت شما را طوری پیکربندی می‌کند که روی https اجرا شود.

افزونه Really Simple SSL بدون اینکه نیاز به تنظیمات خاصی داشته باشد، کار می‌کند و به صورت خودکار خطاهای Mixed Content را برطرف می‌نماید. این افزونه نه تنها خطای Mixed Content را رفع می‌کند بلکه هر خطای دیگری که مربوط به SSL باشد را نیز برطرف می‌نماید.

افزونه دیگری که می‌توانید از آن برای رفع خطای Mixed Content در وردپرس استفاده کنید، افزونه SSL Insecure Content Fixer است.

این افزونه بیش از 300 هزار نصب فعال داشته و بدون هیچ دردسری وب سایت شما را از محتوای ناامن و هشدارهای Mixed Content پاک می‌کند.

رفع مشکل Mixed Content و خطای SSL در وردپرس به صورت دستی

رفع دستی این خطا ممکن است مدتی طول بکشد اما قطعاً بهترین نتیجه و عملکرد را به شما می‌دهد. در ابتدا مطمئن شوید که از HTTPS در تنظیمات وردپرس خود استفاده می‌کنید.

برای این کار در پیشخوان وردپرس به مسیر تنظیمات » عمومی بروید. در این صفحه مطمئن شوید که هم آدرس وردپرس و هم آدرس سایت، URL های HTTPS را نشان می‌دهند.

رفع مشکل SSL در وردپرس

اگر دیدید که آدرس ها به صورت HTTP هستند، آنها را به HTTPS تغییر دهید.

سپس روی دکمه ذخیره تغییرات کلیک کنید تا تغییرات ذخیره شوند. حال کش را پاک کنید. برای این کار می‌توانید از بهترین افزونه های کش وردپرس استفاده کنید.

اکنون سایت وردپرس خود را مجدداً بارگذاری کنید. اگر مشکل SSL رفع نشده بود بقیه راه ها را به صورت زیر امتحان کنید.

جستجو و جایگزینی URL ها در پایگاه داده

قدم بعدی که باید انجام دهید این است که URL های HTTP قدیمی را در پایگاه داده وردپرس خود پیدا کرده و با URL جدید HTTPS جایگزین کنید. برای انجام راحت تر این فرآیند می‌توانید از افزونه Better Search Replace استفاده کنید.

رفع مشکل SSL در وردپرس

در مقاله آموزش افزونه Better Search Replace می‌توانید اطلاعات کاملی درباره نحوه استفاده از این افزونه به دست آورید.

اگر هنوز مشکل SSL سایت وردپرس شما رفع نشده و با خطای محتوای مخلوط روبرو هستید، آدرس URL را به صورت دستی در افزونه ها و قالب ها تصحیح کنید.

حل مشکل URL های قالب و افزونه ها

شما می‌توانید با ابزار Inspect مرورگر خود منابعی که باعث ایجاد خطای Mixed Content می‌شوند را برطرف کنید. اگر از گوگل کروم استفاده می‌کنید، روی صفحه کلیک راست کرده و گزینه Inspect را انتخاب کنید.

در این ابزار می‌توانید منابعی که باعث ایجاد خطا می‌شوند و مکان آنها را پیدا کنید.

رفع مشکل SSL در وردپرس

برای منابع قالب باید URL ها را در تمام فایل های قالب وردپرس خود پیدا کرده و سپس HTTP را با HTTPS جایگزین کنید. اگر نتوانستید آنها را پیدا کنید با توسعه دهنده یا پشتیبانی قالب خود تماس بگیرید و از آنها کمک بخواهید.

همین امر در مورد خطاهای Mixed Content ناشی از افزونه ها صدق می‌کند. بهتر است فایل های افزونه ها را به صورت دستی ویرایش نکنید و از توسعه دهنده افزونه بخواهید این کار را برای شما انجام دهد.

رفع مشکل ریدایرکت های بی شمار در 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 استفاده کنند. بنابراین قطعاً باید آنها را در سایت خود داشته باشید. اگر در استفاده از گواهینامه به مشکل برخوردید کافی است روشهای ذکر شده در این مقاله را دنبال کنید. به راحتی می‌توانید مشکلات را رفع کرده و وب سایت خود را کاملاً فعال و پایدار نگه دارید.

امیدواریم این آموزش مورد توجه و استفاده شما قرار گرفته باشد.

درباره ی مینا قدسی

مطلب پیشنهادی

قالب سئو شده وردپرس

معرفی 20 قالب رایگان سئو شده و حرفه ای وردپرس

همه کسب و کارهای آنلاین از زمان تولد موتورهای جستجو و نقش مؤثر آنها در …

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *