روش اضافه کردن SSL و HTTPS به وردپرس

بیگ تمی های عزیز سلام. امروز می خوایم به مسائل امنیتی بپردازیم یعنی روش اضافه کردن SSL و HTTPS به وردپرس. در واقع توی این مقاله، یادمیگیریم که چطوری از HTTP به HTTPS کوچ کنیم و یک گواهی SSL رو روی سایت وردپرسیمون نصب کنیم. خب پس با بیگ تم همراه باشین…

HTTPS و SSL چیست؟

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

Google Chrome showing warning about an unsecure connection


چرا به HTTPS و SSL نیاز دارید؟

اگه شما یک وبسایت تجارت الکترونیک دارین، پس قطعاً به گواهی SSL نیاز دارین. اکثر درگاه های بانکی به یک ارتباط امن با استفاده از SSL نیاز دارن. اخیراً گوگل اعلام کرد که در رتبه بندی نتایج جستجوهاش، استفاده از HTTPS و SSL رو مدنظر قرار میده.  این یعنی استفاده از HTTPS و SSL به سئوی سایت شما هم کمک زیادی خواهد کرد. بعضی افراد در مورد کاهش سرعت سایت نگرانن، که باید بگم استفاده از HTTPS و SSL سرعت سایت رو به مقدار واقعاً ناچیزی کاهش میدن.


مواد لازم برای استفاده از HTTPS و SSL در یک وبسایت وردپرسی!

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


چگونه وردپرس را برای استفاده از SSL و HTTPS تنظیم کنیم؟

اگه یه سایت تازه دارین و میخواین HTTPS رو هرجایی از ساییتون استفاده کنین، باید URL سایتتون رو آپدیت کنین. برای اینکار به تب تنطیمات>> همگانی برین و فیلدهای نشانی وردپرس و نشانی سایت رو آپدیت کنین.

updating-urls

حالا اگه SSL رو به سایتتون اضافه کرده باشین، باید وردپرس رو برای تغییر مسیر از HTTP به HTTPS تنظیم کنین. اینکار رو می تونین با اضافه کردن کد زیر به فایل .htaccess انجام بدین.


<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.yoursite.com/$1 [R,L]
</IfModule>

البته یادتون باشه که در کد بالا، به جای عبارت “yoursite.com” آدرس سایت خودتون رو وارد کنین. اگه میخواین که SSL و HTTPS روی محیط های چند مدیره یا صفحات ورود اضافه بشه، باید فایل wp-config.php رو برای اینکار تنطیم کنین، یعنی کد زیر رو بالای عبارت “That’s all, stop editing!” اضافه کنین.

define('FORCE_SSL_ADMIN', true);


امیدوارم اموزش امروز هم مفید بوده باشه

یک نظر

  1. موسوی

    سلام
    وقتی که سایت را با https باز می کنم توی آدرس بار به جای علامت قفل سبز رنگ یه قفل خاکستری با یه مثلث نارنجی ظاهر می شه (مثل سایت بیگ تم) چطور میشه این مشکل رو حل کرد؟

    ممنون از زحمات شما

  2. هادی قربانی

    خواهش می کنم علی عزیز
    این کد هم همون کار رو انجام میده , کدی که معرفی کردیم بهترین نوعش هست.
    فقط منتظر باشید تا گوگل لینک ها رو با https بشناسه بعدش کلا با https باز میشه

  3. علی

    سلام و ممنونم آقای قربانی
    من تو سایت های زیادی این سوالم رو پرسیدم اما فقط شما هم با حوصله جواب دادین هم جواب درست که نشون از تجربه و مهارت شما داره
    لینک ها رو برای من می زنه http تو گوگل اما کلیک هم میکنن میره تو همون صفحه http و متاسفانه redirect نمیشه به https و فقط همون لینک هایی که خود گوگل https نمایش میده درست کار می کنن (البته حس کردم هر روز داره لینک های بیشتری از سایت https میشه و دقیقا فرمایش شما راجع به آنالیز صحیح است ممنونم )
    من علاوه بر کدی که شما فرمودید کدهای زیر رو هم داخل htaccess. گذاشتم، اطلاع دارید مشکل ساز هست یا نه ؟ همون یکی باشه یا اینا هم باشه ؟
    کدها :

    RewriteCond %{HTTPS} !=on
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    RewriteEngine On
    RewriteCond %{HTTPS} !on
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
    
  4. هادی قربانی

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

  5. علی

    سلام
    من تمام این کار ها رو انجام دادم دوست عزیز
    اما الان چند تا مشکل :
    از گوگل که سرچ می کنم بعضی از لینک ها Https است و بقیه هنوز HTTP
    وارد لینک های http بشید عکس ها و فونت ها و … لود نمیشه ( سایت فقط در صورت https بودن کامل لود میشه)
    ممنون میشم راهنمایی کنید

  6. ابراهیمی

    یکی از فول بکاپ های سایتتون رو دانلود و فایل htaccess رو ازش استخراج و جایگزین فایل فعلی کنید

  7. ابراهیمی

    برید به phpmyadmin هاستتون
    بانک اطلاعاتی وردپرستون رو انتخاب کنید و جدول wp-options رو انتخاب کنید
    فیلدهای siteurl و home رو با آدرس سایتتون تنظیم کنید

  8. علی

    ببخشید من مراحل رو برعکس انجام دادم ینی اول اپ تی اکسس رو از داخل وردپرس دستکاری کردم که بعد برم ادرسو عوض کنم ولی متاسفانه سایت رفت رو هوا و من هم به طور پیشفرض به اچ تی اکسس دسترسی ندارم
    ینی الان میخواتم تغییر ادرس رو یه جوری از طریق کد ها انجام بدم

    لطفا کمک کنیییییید

  9. علی

    سلام
    وقتتون بخیر
    ببخشید من تقریبا در مورد http و https نمی دونستم و دیروز همینطوری رفتم به تنظیمات سایتم و یه s جلوی http اضافه کردم و از اون به بعد هر کاری می کنم نمی تونم به سایتم وارد شم و… خلاصه خیلی وضع بدیه
    لطفاً کمک کنید…ینی باید کلا همه چی رو پاک کنم؟

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

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