پرش به محتوای اصلی
رادیوو
سئوی تکنیکال

خطای Mixed Content در سایت‌های HTTPS: چرا علامت قفل امن ناپدید می‌شود؟

گواهی SSL را نصب کرده‌اید اما مرورگر به جای قفل سبز علامت اخطار Not Secure نشان می‌دهد؟ خطای محتوای ترکیبی (Mixed Content) را در چند دقیقه برطرف کنید.

علی کریمی‌راد۱۳ شهریور ۱۴۰۵ ۵ دقیقه مطالعه

خطای Mixed Content در سایت‌های HTTPS: چرا علامت قفل امن ناپدید می‌شود؟

فهرست عناوین این راهنما:

معمای قفل ناامن: وقتی SSL فعال است اما سایت امن نیست!#

برای فعال‌سازی پروتکل امنیتی HTTPS هزینه کرده‌اید، گواهی SSL روی سرور نصب شده و آدرس سایت با https:// باز می‌شود؛ اما در کمال تعجب می‌بینید علامت قفل امن کنار آدرس بار مرورگر قرمز، زرد یا همراه با علامت تعجب است و مرورگر کروم پیام Not Secure می‌دهد!

اینفوگرافیک کالبدشکافی خطای Mixed Content و بازگرداندن قفل امن SSL
اینفوگرافیک کالبدشکافی خطای Mixed Content و بازگرداندن قفل امن SSL

این مشکل آزاردهنده دقیقاً به دلیل خطای محتوای ترکیبی یا همان Mixed Content رخ می‌دهد. در این مقاله یاد می‌گیرید که این خطا چطور شکل می‌گیرد و چطور می‌توان آن را برای همیشه ریشه‌کن کرد.


محتوای ترکیبی (Mixed Content) چطور به وجود می‌آید؟#

وقتی یک کاربر صفحه‌ای را با پروتکل امن https:// باز می‌کند، انتظار دارد تمام دارایی‌های آن صفحه (تصاویر، فونت‌ها، فایل‌های CSS و کدهای جاوااسکریپت) نیز از طریق مسیر امن و رمزنگاری‌شده لود شوند.

اما اگر در کدهای صفحه، آدرس یک عکس، یک فونت قدیمی یا اسکریپت آمارگیر همچنان با پروتکل ناامن http:// فراخوانی شود، اتصال امن اصطلاحاً «آلوده» می‌شود. یک هکر می‌تواند از طریق همان منبع رمزنگاری‌نشده محتوای صفحه را شنود یا دستکاری کند.


دو نوع خطرناک محتوای ترکیبی#

  1. محتوای ترکیبی غیرفعال (Passive/Display Mixed Content): تصاویری که با http:// لود می‌شوند. مرورگر معمولاً تصویر را لود می‌کند، اما علامت قفل امن را برمی‌دارد و هشدار می‌دهد.
  2. محتوای ترکیبی فعال (Active Mixed Content): اسکریپت‌ها، فونت‌ها، استایل‌ها یا iframeهایی که با http:// فراخوانی می‌شوند. مرورگرهای مدرن (مثل کروم، فایرفاکس و سافاری) این منابع را به طور کامل مسدود (Block) می‌کنند! در نتیجه قالب سایت به هم می‌ریزد یا اسکریپت‌های حیاتی اجرا نمی‌شوند.

پیامد Mixed Content برای سئو و بیزینس#


۳ راهکار قطعی برای حل خطای Mixed Content#

۱. استفاده از هدر ارتقای خودکار (Upgrade-Insecure-Requests)

با اضافه کردن این دستور ساده به وب‌سرور یا هدر متای صفحه، به مرورگر دستور می‌دهید هر منبعی که با http:// صدا زده شد را خودکار به https:// ارتقا دهد:

htmlکد نمونه
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

۲. جستجو و جایگزینی در دیتابیس (برای سایت‌های وردپرسی)

بسیاری از آدرس‌های ناامن در متن نوشته‌ها، ابزارک‌ها یا گزینه‌های قالب در دیتابیس هاردکد شده‌اند. با افزونه‌هایی مثل Better Search Replace می‌توانید عبارت http://yourdomain.com را جستجو و با https://yourdomain.com جایگزین کنید.

۳. بررسی فایل‌های قالب و افزونه‌ها

گاهی توسعه‌دهنده در کدهای قالب یک کتابخانه خارجی (مثل jQuery یا فونت) را به صورت دستی با http:// اضافه کرده است. این فایل‌ها را باز کرده و آدرس آن‌ها را به https:// تغییر دهید.

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

اقدام پیشنهادی برای این راهنما

مشکلات فنی و سئوی سایتت را پیدا کن و ببین برای بهبود رتبه گوگل دقیقاً چه کارهایی باید انجام دهی.

آنالیز رایگان سئوی سایت
اشتراک‌گذاری این مطلب:

همین مشکل را در سایت خودت داری؟

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

آنالیز رایگان سایت

مطالب مرتبط

سئو در عصر هوش مصنوعی (GEO و AI Overviews): چگونه منبع پاسخ‌های گوگل و SearchGPT شویم؟
سئوی محتوا

سئو در عصر هوش مصنوعی (GEO و AI Overviews): چگونه منبع پاسخ‌های گوگل و SearchGPT شویم؟

۸ دقیقه
بهینه‌سازی نرخ کلیک (CTR) صفحات محصول در سرپ: تکنیک‌های عنوان‌نویسی و اسنیپت‌های قیمتی
سئوی فروشگاهی

بهینه‌سازی نرخ کلیک (CTR) صفحات محصول در سرپ: تکنیک‌های عنوان‌نویسی و اسنیپت‌های قیمتی

۷ دقیقه
سئوی فروشگاه‌های شاپیفای (Shopify) برای کاربران ایرانی: محدودیت‌های ساختار URL و راه‌حل‌ها
سئوی فروشگاهی

سئوی فروشگاه‌های شاپیفای (Shopify) برای کاربران ایرانی: محدودیت‌های ساختار URL و راه‌حل‌ها

۷ دقیقه

این مشکلات را خودتان رفع می‌کنید یا کمک می‌خواهید؟

اگر وقت یا تیم فنی ندارید، ما اصلاح را انجام می‌دهیم.