چگونه خطای Mixed Content – “Your Connection is not secure” را برطرف کنیم؟

یکی از خطاهای رایجی که ممکن است در هنگام مرور وب‌سایت‌ها با آن مواجه شوید، خطای Mixed Content است که اغلب با پیام “Your Connection is not secure” همراه است. این پیام نشان‌دهنده این است که برخی از منابع سایت، مانند تصاویر، اسکریپت‌ها یا فایل‌های CSS، به‌جای پروتکل ایمن HTTPS از پروتکل HTTP بارگذاری می‌شوند. این مشکل می‌تواند تجربه کاربری را تحت تأثیر قرار داده و حتی باعث کاهش رتبه سایت در موتورهای جستجو شود. در این مقاله به بررسی این خطا و روش‌های حل آن می‌پردازیم.

 

۱. خطای Mixed Content چیست؟

خطای Mixed Content زمانی رخ می‌دهد که یک صفحه وب از طریق پروتکل ایمن HTTPS بارگذاری می‌شود، اما برخی از منابع آن، مانند تصاویر یا فایل‌های جاوا اسکریپت، از طریق پروتکل غیرایمن HTTP بارگذاری می‌شوند. این تناقض باعث می‌شود که مرورگرها هشدار دهند که اتصال شما به سایت به‌طور کامل ایمن نیست.

انواع محتوای مختلط:

  • Mixed Active Content: این نوع محتوا شامل اسکریپت‌ها، فایل‌های CSS و سایر فایل‌هایی است که می‌توانند بر رفتار صفحه تأثیر بگذارند. مرورگرها این نوع محتوا را بلوکه می‌کنند.
  • Mixed Passive Content: این نوع محتوا شامل تصاویر، ویدئوها و فایل‌های صوتی است که به عملکرد صفحه تأثیر نمی‌گذارند. مرورگرها ممکن است آن را نمایش دهند، اما همچنان هشدار امنیتی نشان می‌دهند.

۲. چرا خطای Mixed Content خطرناک است؟

خطای Mixed Content به این دلیل خطرناک است که منابع غیرایمن (HTTP) می‌توانند به‌راحتی توسط هکرها دستکاری شوند. این موضوع می‌تواند باعث سرقت اطلاعات یا تغییر محتوای سایت شما شود. اگرچه ممکن است تصاویر یا ویدئوها به‌ظاهر بی‌ضرر به‌نظر برسند، اما هر نوع محتوای غیرایمن در یک سایت HTTPS باعث کاهش امنیت کلی سایت می‌شود.

۳. چرا مرورگرها هشدار “Your Connection is not secure” می‌دهند؟

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

۴. چگونه خطای Mixed Content را شناسایی کنیم؟

برای شناسایی منابع غیرایمن در یک صفحه وب، می‌توانید از ابزارهای توسعه‌دهنده مرورگرها استفاده کنید. در مرورگر گوگل کروم و فایرفاکس مراحل زیر را دنبال کنید:

  1. روی صفحه وب کلیک راست کرده و گزینه Inspect یا بررسی را انتخاب کنید.
  2. به تب Console بروید.
  3. مرورگرها در این بخش هشدارهایی درباره منابع غیرایمن نمایش می‌دهند. معمولاً پیام‌هایی با عنوان Mixed Content و نام فایل‌هایی که از طریق HTTP بارگذاری می‌شوند، مشاهده خواهید کرد.

۵. روش‌های رفع خطای Mixed Content

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

۵.۱. جایگزینی لینک‌های HTTP با HTTPS

یکی از ساده‌ترین روش‌های رفع این خطا، جایگزینی تمام لینک‌های HTTP با HTTPS است. برای این کار می‌توانید لینک‌های موجود در پایگاه داده سایت خود را بررسی کنید. اگر از وردپرس استفاده می‌کنید، افزونه‌هایی مانند Better Search Replace به شما کمک می‌کنند تا به‌راحتی تمام لینک‌های HTTP را به HTTPS تغییر دهید.

۵.۲. استفاده از افزونه‌های وردپرس برای رفع Mixed Content

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

  • Really Simple SSL: این افزونه به شما کمک می‌کند تا تمام منابع سایت خود را از HTTP به HTTPS تغییر دهید.
  • SSL Insecure Content Fixer: این افزونه به‌طور خودکار منابع غیرایمن را شناسایی و اصلاح می‌کند.

۵.۳. ویرایش دستی فایل‌ها

اگر سایت شما شامل فایل‌هایی مانند CSS، جاوا اسکریپت یا HTML است که به‌صورت دستی نوشته‌اید، باید آن‌ها را بررسی کرده و مطمئن شوید که همه لینک‌ها به‌جای HTTP از HTTPS استفاده می‌کنند. این کار به‌طور مستقیم روی فایل‌های سرور انجام می‌شود.

۵.۴. تنظیم هدایت خودکار در فایل .htaccess

یکی دیگر از روش‌های جلوگیری از خطای Mixed Content، تنظیم هدایت خودکار در فایل .htaccess است. شما می‌توانید با اضافه کردن کد زیر در فایل .htaccess، تمام درخواست‌های HTTP را به HTTPS هدایت کنید:

[code]
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
[/code]

این کد به‌طور خودکار کاربران را به نسخه HTTPS صفحه هدایت می‌کند.

۵.۵. استفاده از CDN

اگر از CDN (شبکه توزیع محتوا) استفاده می‌کنید، مطمئن شوید که تنظیمات آن به‌درستی پیکربندی شده باشد و تمام محتوا از طریق HTTPS ارائه شود. بسیاری از سرویس‌های CDN مانند Cloudflare دارای تنظیماتی برای رفع Mixed Content هستند.

۶. تست سایت پس از رفع خطا

پس از انجام تغییرات، باید سایت خود را مجدداً بررسی کنید تا مطمئن شوید که خطای Mixed Content برطرف شده است. برای این کار می‌توانید دوباره از ابزارهای توسعه‌دهنده مرورگر یا ابزارهای آنلاین مانند Why No Padlock استفاده کنید. این ابزارها به شما کمک می‌کنند تا مطمئن شوید که سایت شما به‌طور کامل ایمن است و هیچ محتوای مختلطی وجود ندارد.

۷. جلوگیری از بروز مجدد خطای Mixed Content

برای جلوگیری از بروز مجدد این خطا، می‌توانید اقدامات زیر را انجام دهید:

  • استفاده دائمی از HTTPS: مطمئن شوید که تمام صفحات سایت شما از HTTPS استفاده می‌کنند.
  • فعال‌سازی HSTS: HSTS (HTTP Strict Transport Security) یک مکانیزم امنیتی است که مرورگرها را مجبور می‌کند تا همیشه از HTTPS برای دسترسی به سایت شما استفاده کنند. با فعال‌سازی HSTS، می‌توانید از بروز خطای Mixed Content جلوگیری کنید.
  • بازبینی منظم فایل‌ها: به‌طور منظم فایل‌های سایت خود را بازبینی کنید و مطمئن شوید که هیچ لینکی به منابع غیرایمن وجود ندارد.

نتیجه‌گیری

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


 

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

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