فرض کنید وارد یک سایت میشویم و مرورگر به ما هشدار میدهد که این سایت امن نیست. همین هشدار کافی است تا خیلی از کاربران به سایت اعتماد نکنند و صفحه را ببندند. برای اینکه آدرس سایت وردپرسی ما بهصورت HTTPS باز شود و ارتباط مرورگر کاربر با سایت رمزنگاری شود، باید SSL را روی هاست و بعد روی وردپرس راهاندازی کنیم.
در آموزش فعالسازی SSL در وردپرس، ابتدا وضعیت گواهی SSL را روی هاست بررسی میکنیم. بعد با روش دستی و افزونه Really Simple SSL آدرس سایت را از HTTP به HTTPS تغییر میدهیم و در ادامه سراغ ریدایرکت 301، خطای Mixed Content و تنظیمات افزونه میرویم.
در این مقاله چی قراره یاد بگیریم؟
SSL چیست و چرا باید آن را روی سایت فعال کنیم؟
اگر خیلی ساده توضیح بدهیم، SSL باعث میشود ارتباط مرورگر کاربر با سایت بهشکل امن برقرار شود و اطلاعات بهصورت رمزنگاریشده ردوبدل شوند. وقتی SSL روی سایت فعال باشد، آدرس صفحات با https:// شروع میشود.
اگر سایت با HTTP باز شود، مرورگر ممکن است هشدار ناامنبودن سایت را نمایش دهد و بهجای نشانه امنیت، علامت هشدار نشان داده شود. این موضوع روی اعتماد کاربران تأثیر میگذارد. برای سایتهای فروشگاهی هم اهمیت بیشتری دارد؛ چون برای دریافت درگاه پرداخت باید SSL فعال باشد. از نظر سئو هم نداشتن ارتباط امن میتواند برای سایت مشکل ایجاد کند.
اقدامات قبل از فعالسازی SSL در وردپرس
قبل از اینکه آموزش فعالسازی SSL در وردپرس را ادامه دهیم و تنظیمات سایت را تغییر دهیم، باید SSL روی سرور و هاست فعال شده باشد. نمیتوانیم مستقیماً آدرس وردپرس را HTTPS کنیم، درحالیکه گواهی SSL هنوز روی هاست راهاندازی نشده است.
تفاوت SSL رایگان و پولی
برای راهاندازی SSL روی هاست میتوانیم از گواهی پولی یا رایگان استفاده کنیم. گواهی پولی معمولاً بهصورت سالانه تمدید میشود. گواهی رایگان هم وجود دارد که از طریق سرویس Let’s Encrypt ارائه میشود و تمدید آن معمولاً بهصورت سهماهه انجام میشود و اکثر شرکتهای هاستینگ از این سرویس برای مشتریان خود استفاده میکنند.
بررسی فعالبودن گواهی SSL در سیپنل
اگر از هاست اشتراکی استفاده میکنیم، میتوانیم فعالسازی یا تمدید SSL را از پشتیبانی هاست بخواهیم. برای بررسی دستی هم وارد کنترلپنل هاست میشویم. در سیپنل، اگر روبهروی SSL Certificate تیک سبز و وضعیت فعال را ببینیم، یعنی گواهی روی هاست فعال شده است. اگر ضربدر، علامت هشدار یا پیام مربوط به انقضا نمایش داده شود، باید SSL را فعال یا تمدید کنیم.

فعالسازی SSL رایگان روی هاست
در سیپنل وارد بخش SSL/TLS Status میشویم. در دایرکتادمین هم بخش مربوط به SSL Certificates را باز میکنیم. دامنهها و زیردامنههای موردنظر را انتخاب میکنیم و فرایند اعتبارسنجی را ادامه میدهیم تا کنترلپنل با سرویس ارائهدهنده گواهی رایگان ارتباط برقرار کند و SSL را روی دامنه فعال کند.

فعالبودن SSL روی هاست بهتنهایی به این معنی نیست که تنظیمات وردپرس هم کامل شده است. بعد از فعالسازی گواهی، باید آدرسهای وردپرس را هم به HTTPS تغییر دهیم.
روشهای آموزش فعالسازی SSL در وردپرس
برای تبدیل آدرس وردپرس از HTTP به HTTPS دو مسیر داریم. میتوانیم آدرسها را بهصورت دستی تغییر دهیم یا این کار را با افزونه Really Simple SSL انجام دهیم. روش افزونه جامعتر است و در این آموزش همین روش را پیشنهاد میکنیم، اما ابتدا روشهای دستی را هم میبینیم.
تغییر آدرس سایت از تنظیمات عمومی وردپرس
برای روش دستی وارد پیشخوان وردپرس میشویم و از بخش تنظیمات، صفحه عمومی را باز میکنیم. در این صفحه «نشانی وردپرس» و «نشانی سایت» را میبینیم. اگر این دو آدرس با http:// شروع شده باشند، حرف s را به آنها اضافه میکنیم تا به https:// تبدیل شوند و بعد تغییرات را ذخیره میکنیم.

بعد از ذخیره تغییرات ممکن است از حساب مدیریت خارج شویم. دلیلش این است که کوکیهای ورود روی آدرس قبلی تنظیم شدهاند. در این حالت دوباره با آدرس HTTPS وارد پیشخوان میشویم.
تغییر آدرس وردپرس از phpMyAdmin
روش دستی دیگری هم وجود دارد که از طریق دیتابیس انجام میشود. ابتدا باید نام دیتابیس سایت را پیدا کنیم. وارد File Manager میشویم، پوشه سایت را باز میکنیم و نام دیتابیس را داخل فایل wp-config.php میبینیم.

بعد وارد phpMyAdmin میشویم، دیتابیس سایت را باز میکنیم و جدول Options را پیدا میکنیم. در این جدول مقدارهای siteurl و home را ویرایش میکنیم و آدرس هر دو را از HTTP به HTTPS تغییر میدهیم.

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

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

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

بررسی امکانات امنیتی هنگام راهاندازی
Really Simple SSL علاوه بر فعالسازی SSL، تعدادی قابلیت امنیتی هم دارد که بخشی از آنها رایگان و بخشی مربوط به نسخه حرفهای هستند. اگر افزونه امنیتی دیگری مثل Wordfence یا All In One Security روی سایت نصب کردهایم، لازم نیست گزینههای مشابه را دوباره فعال کنیم تا احتمال تداخل کمتر شود. اگر افزونه امنیتی دیگری نداریم، میتوانیم گزینههای مناسب نسخه رایگان را فعال نگه داریم.

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

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

تنظیمات افزونه Really Simple SSL
پس از فعالسازی SSL، وارد تنظیمات افزونه میشویم تا گزینههای عمومی، ریدایرکت HTTPS، Mixed Content و هشدارهای امنیتی را بررسی کنیم.
تنظیمات عمومی افزونه
در تنظیمات عمومی میتوانیم سرویسدهنده هاست را انتخاب کنیم. سرویسهای نمایشدادهشده بیشتر خارجی هستند و اگر از آنها استفاده نمیکنیم، لازم نیست گزینهای را انتخاب کنیم. با فعالکردن گزینه ردکردن همه اعلانها هم پیامهای افزونه در پیشخوان نمایش داده نمیشوند.
گزینه دانلود گزارش وضعیت سیستم، اطلاعاتی درباره سرور، هاست و وضعیت SSL در اختیارمان قرار میدهد. از این گزارش میتوانیم برای بررسی وضعیت فعلی سایت استفاده کنیم.

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

ریدایرکت HTTP به HTTPS با کد 301
در تب SSL گزینه تغییر مسیر را روی ریدایرکت 301 قرار میدهیم. با این تنظیم، اگر کاربر آدرس صفحهای را با HTTP وارد کند، به نسخه HTTPS همان صفحه منتقل میشود.
ممکن است گزینه ریدایرکت 301 از طریق .htaccess هم در سایت ما وجود داشته باشد. اگر این گزینه را ببینیم، میتوانیم آن را انتخاب کنیم؛ چون در این حالت ریدایرکت قبل از بارگذاری هسته وردپرس و از سمت هاست انجام میشود. اگر این گزینه در دسترس نباشد، ریدایرکت 301 از طریق PHP را فعال میکنیم.

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

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

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

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

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

جمعبندی و صحبت آخر
در این آموزش یاد گرفتیم که قبل از هر کاری باید گواهی SSL را روی هاست فعال کنیم. بعد آدرس وردپرس را بهصورت دستی یا با افزونه Really Simple SSL از HTTP به HTTPS تغییر دادیم، ریدایرکت 301 را فعال کردیم و روش رفع خطای Mixed Content را بررسی کردیم.
بعد از نصب SSL در وردپرس، سایت را با چند مرورگر بررسی میکنیم تا مطمئن شویم صفحات با HTTPS باز میشوند و نشانه امنیت در نوار آدرس دیده میشود. اگر درباره آموزش فعالسازی SSL در وردپرس یا تنظیمات افزونه Really Simple SSL سؤالی دارید، میتوانید آن را در قسمت نظرات مطرح کنید.
لینکهای دانلود
- افزونه Really Simple SSL 1.5 مگابایت



