نصب گواهینامه SSL و انتقال سایت به HTTPS

نصب SSL روی هاست، هدایت خودکار به HTTPS و رفع مشکل رایج «محتوای ناامن».

۵ دقیقه به‌روزرسانی ۲۷ تیر ۱۴۰۵

SSL ارتباط بین مرورگر کاربر و سرور شما را رمزنگاری می‌کند. امروز دیگر اختیاری نیست: مرورگرها سایت‌های بدون HTTPS را «ناامن» علامت می‌زنند و گوگل هم HTTPS را یک عامل رتبه‌بندی می‌داند.

نصب روی هاست

روی هاست‌های سرورنت گواهینامه‌ی رایگان به‌صورت خودکار صادر و تمدید می‌شود. برای بررسی وضعیت:

  1. وارد کنترل‌پنل شوید.
  2. بخش SSL/TLS را باز کنید.
  3. مطمئن شوید دامنه‌ی شما در فهرست گواهینامه‌های فعال هست.

پیش‌نیاز مهم: دامنه باید از قبل به سرور اشاره کند. صدور گواهینامه با تأیید مالکیت از طریق DNS یا فایل انجام می‌شود؛ اگر رکورد A هنوز به سرور قبلی اشاره می‌کند، صدور شکست می‌خورد.

هدایت خودکار به HTTPS

نصب گواهینامه به‌تنهایی کافی نیست؛ باید ترافیک HTTP را هم به HTTPS هدایت کنید. در فایل .htaccess در ریشه‌ی سایت:

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

کد 301 یعنی انتقال دائمی؛ این برای سئو مهم است چون اعتبار صفحه‌ی قدیمی به آدرس جدید منتقل می‌شود.

مشکل «محتوای ترکیبی»

شایع‌ترین مشکل بعد از فعال‌سازی SSL این است: قفل سبز نمایش داده نمی‌شود با اینکه گواهینامه درست نصب شده. علتش این است که صفحه‌ی HTTPS شما هنوز فایل‌هایی (عکس، CSS، جاوااسکریپت) را با آدرس http:// بارگذاری می‌کند.

راه‌حل: همه‌ی آدرس‌های داخلی را به https:// یا به آدرس نسبی تغییر دهید. برای پیدا کردن موارد مشکل‌دار، در مرورگر کنسول توسعه‌دهنده را باز کنید؛ هشدارهای mixed content آنجا فهرست می‌شوند.

در وردپرس، علاوه بر این باید آدرس سایت را در تنظیمات به https:// به‌روز کنید و آدرس‌های قدیمی داخل دیتابیس را هم اصلاح کنید.

پس از فعال‌سازی چه کنیم

  • در Google Search Console نسخه‌ی HTTPS را به‌عنوان دارایی جدید ثبت کنید.
  • آدرس سایت را در نقشه‌ی سایت و فایل robots به‌روز کنید.
  • لینک‌های داخلی سایت را بررسی کنید تا مستقیماً به HTTPS اشاره کنند (نه از طریق ریدایرکت).

بررسی صحت نصب

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

آیا این مطلب برایتان مفید بود؟