رفتن به محتوای اصلی

قفل سبز نمیاد با اینکه SSL دارم

  • سینا قربانیان
  • ۸ آبان ۱۴۰۵
  • ۳ دقیقه مطالعه
  • ۰ بازدید
آیکون پشتیبانی برای رفع مشکل نمایش ندادن قفل با وجود SSL
فهرست مطالب
  1. چرا این اتفاق می‌افتد؟
  2. چه کار کنیم؟
  3. ابزارهایی برای پیدا کردن منابع ناامن صفحه
  4. کی بهتر است از متخصص کمک بگیرید؟
  5. سوالات متداول
  6. چرا قفل در بعضی صفحات هست و در بعضی نیست؟
  7. محتوای ترکیبی روی سئو اثر دارد؟
  8. امروز هنوز قفل سبز داریم؟

اگر SSL نصب است ولی قفل کامل نمی‌آید یا کنار آدرس علامت هشدار می‌بینید، تقریباً همیشه علت «محتوای ترکیبی» (Mixed content) است؛ یعنی صفحه با HTTPS باز شده ولی بعضی تصاویر، فایل‌های CSS یا اسکریپت‌ها هنوز از آدرس http بارگذاری می‌شوند. با پیدا کردن و تبدیل این آدرس‌ها به https مشکل حل می‌شود.

نویسنده: تیم siloow (سیلو سولوشن) — آخرین به‌روزرسانی: آبان ۱۴۰۵

چرا این اتفاق می‌افتد؟

  • آدرس‌های قدیمی http در دیتابیس، مثلاً در محتوای نوشته‌ها و تنظیمات صفحه‌ساز.
  • آدرس سخت‌کد‌شده در فایل‌های قالب یا CSS.
  • اسکریپت یا ویجت شخص ثالث که با http فراخوانی شده است.
  • نشانی وردپرس که در تنظیمات عمومی هنوز http است.
  • کش قدیمی افزونه یا CDN که نسخه قبلی صفحه را نشان می‌دهد.

چه کار کنیم؟

مرورگر خودش دقیقاً می‌گوید کدام فایل مشکل دارد؛ پس از حدس زدن شروع نکنید.

  1. صفحه را باز کنید، F12 را بزنید و در زبانه Console پیام‌های Mixed Content را بخوانید؛ آدرس فایل‌های http آنجا آمده است.
  2. در «تنظیمات ← عمومی» مطمئن شوید هر دو نشانی با https شروع می‌شوند.
  3. بعد از بکاپ دیتابیس، با یک ابزار جست‌وجو و جایگزینی امن (مثلاً افزونه Better Search Replace یا دستور wp search-replace) آدرس http://دامنه را با https://دامنه جایگزین کنید.
  4. اگر از المنتور استفاده می‌کنید، ابزار Replace URL خود المنتور را هم اجرا کنید.
  5. آدرس‌های سخت‌کد‌شده در قالب و فایل‌های CSS را اصلاح کنید.
  6. کش افزونه، سرور و CDN را پاک کنید و دوباره تست کنید.
فهرست علت‌های نیامدن قفل با وجود SSL و محتوای ترکیبی
منابع رایج محتوای ترکیبی
کارخودتانبا متخصص
خواندن خطاهای Consoleبله—
تغییر نشانی سایتبله، با بکاپ—
جست‌وجو و جایگزینی دیتابیسبا احتیاطبله، در سایت‌های بزرگ
اصلاح فایل‌های قالبسختبله
رفع محتوای ترکیبی؛ خودتان یا متخصص

از تجربه تیم siloow: ویرایش مستقیم دیتابیس با دستور SQL ساده می‌تواند داده‌های سریال‌شده وردپرس (مثل تنظیمات ابزارک‌ها) را خراب کند. ابزارهایی که داده سریال‌شده را می‌شناسند، مثل WP-CLI، برای این کار امن‌ترند و ما همیشه از آن‌ها استفاده می‌کنیم.

نکته: افزونه‌هایی که «اجبار HTTPS» را فقط در لحظه نمایش انجام می‌دهند راه‌حل موقت خوبی هستند، اما مشکل را در دیتابیس حل نمی‌کنند. اصلاح ریشه‌ای آدرس‌ها پایدارتر است.

توضیح فنی محتوای ترکیبی در مرجع MDN و ابزار جایگزینی امن در مستندات WP-CLI آمده است. اگر هنوز گواهی ندارید، سایتم ناامن نشون میده را ببینید.

ابزارهایی برای پیدا کردن منابع ناامن صفحه

برای پیدا کردن فایل‌هایی که هنوز با HTTP بارگذاری می‌شوند، صفحه را در کروم باز کنید، کلید F12 را بزنید و در بخش Console به دنبال پیام‌های Mixed Content بگردید؛ آدرس دقیق فایل مشکل‌دار همان‌جا نوشته می‌شود. بخش Security در همین ابزار هم وضعیت گواهی و منابع ناامن را نشان می‌دهد. معمولاً منابع مشکل‌دار تصاویر قدیمی در محتوا، فونت‌ها یا اسکریپت‌هایی هستند که آدرسشان به‌صورت ثابت در قالب نوشته شده است. بعد از اصلاح، کش سایت و CDN را پاک کنید و دوباره بررسی کنید.

کی بهتر است از متخصص کمک بگیرید؟

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

برای رفع محتوای ترکیبی و نمایش قفل کامل، فرم تماس siloow را پر کنید؛ کارشناسان ما با شما تماس می‌گیرند.

سوالات متداول

چرا قفل در بعضی صفحات هست و در بعضی نیست؟

چون فقط آن صفحات فایل یا تصویر http دارند. خطای Console همان صفحه را بررسی کنید.

محتوای ترکیبی روی سئو اثر دارد؟

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

امروز هنوز قفل سبز داریم؟

مرورگرهای جدید قفل را سبز نشان نمی‌دهند و برخی اصلاً آیکون خنثی نمایش می‌دهند؛ مهم این است که هشدار Not secure یا علامت خطا نباشد.

مشکل

با وجود نصب SSL قفل کامل نمایش داده نمی‌شود

علائم و نشانه‌ها

  • علامت هشدار کنار قفل، پیام Mixed Content در Console

علت‌های احتمالی

  • تصاویر، CSS یا اسکریپت‌های http در صفحه HTTPS

راه‌حل کوتاه

خطاهای Console را بخوانید، آدرس‌های http را با ابزار جایگزینی امن در دیتابیس و قالب به https تبدیل و کش را پاک کنید.

ابزارهای موردنیاز

  • DevTools مرورگر، WP-CLI یا Better Search Replace
اشتراک‌گذاری