در این مقاله به شکل اصولی در عمل به تبدیل پروتکل http  به پروتکل https می‌پردازیم و نحوه صحیح انتقال سایت از پروتکل ناامن HTTP به پروتکل امن HTTPS را به شکل صریح بیان می‌کنیم.

نحوه انتقال سایت از HTTP به HTTPS

۱ – خرید گواهینامه SSL یا استفاده از Let’s Encrypt

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

در این وب سایت‌ها شما می‌توانید یک گواهینامه Comodo Positive SSL cert را با هزینه‌ای کمتر از  ۹ دلار خریداری کنید.

گرچه وب سایت‌های ایرانی بسیار معتبری نیز برای خریداری و تهیه گواهینامه‌های SSL وجود دارد.

تفاوت انواع گواهینامه SSL :

تایید کننده دامنه (Domain Validation) : گواهی نامه DV هم گفته می‌شود، این گواهی نامه تایید بر روی تک دامنه‌ و ساب دامنه دارد،  بدون تایید به تایید سازمان یا شرکت و یا شخص می‌توان آن را تهیه کرد. (تنها تایید ایمیل آدرس لازم دارد) ، ارزان و تحویل به صورت آنی است.

تایید کننده تجاری/سازمانی (Business/Organization Validation) : گواهی نامه OV هم گفته می‌شود، تایید تک دامنه و ساب دامنه ، تایید کننده مراودات تجاری و سازمانی با حداکثر امنیت و اعتماد دهی ، تحویل در یک تا سه روز کاری.

تایید کننده گسترده (Extended Validation) : گواهی نامه EV هم گفته می‌شود، تایید تک دامنه و ساب دامنه ، تایید کننده مراودات تجاری و سازمانی با حداکثر امنیت و اعتماد دهی ، تحویل در دو الی هفت روز کاری و دارای نوار سبز رنگ تایید.

شاخص های اعتماد :

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

همچنین اگر امکان خرید گواهینامه  SSL را ندارید می‌توانید از Let’s Encrypt استفاده نمایید که گواهینامه‌ای رایگان ولی بدون هیچ مبلغ گارانتی‌ای می‌باشد. این گواهینامه به شما به صورت ۳ ماهه رایگان تحویل داده‌ می‌شود و شما می‌توانید از آن در وب سایتتان استفاده کنید و کمی اعتماد را به مشتریان خود بدهید. فقط بهتر است بدانید که این گواهینامه امنیت وب سایت شما را تضمین نمی‌کند. برای تهیه این گواهینامه می‌توانید از CertBot استفاده کنید.

۲ – نصب گواهینامه SSL بر روی وب سایت

در زیر راه‌های ساده نصب و فعالسازی گواهینامه SSL بر روی وب سرور‌های مختلف را برای شما قرار داده‌ایم. بسته به اینکه چه نوع وب سروری دارید ، مراحل نصب متفاوت است. (در زیر آموزش فعالسازی گواهینامه SSL شرکت Comodo را لینک گذاری کرده‌ایم.)

اگر شما می‌خواهید از طریق certbot یک گواهینامه رایگان Let’s Encrypt دریافت کنید نیز می‌توانید از آموزش‌های مختلفی که در قسمت مستندات این ربات قدرتمند موجود است استفاده کنید.

بررسی صحت گواهینامه:

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

۳ – بروزرسانی تمامی لینک گذاری های سخت به HTTPS

استفاده از لینک گذاری‌های خانوادگی در وب سایت خیلی به وب سایت کمک می‌کند ولی برای یک انتقال ساده به HTTPS این لینک‌گذاری‌ها شما را مجبور به جست‌وجو و موشکافی کل وب سایت از کد‌های HTML گرفته تا دیتابیس می‌کند.

بروزرسانی این لینک‌گذاری‌های سخت در پلتفرم‌ها متفاوت است . برای مثال در وردپرس ما پیشنهاد می‌کنیم از ابزار Database Search and Replace Script ساخته شرکت Interconnect IT استفاده کنید. شما می‌توانید لینک‌ها را به صورت دستی تغییر دهید ولی در صورتی که یک وب سایت بزرگ داشته باشید تغییر لینک‌ها به صورت تک تک از دیتابیس کار را برای شما دشوار می‌کند. همچنین جداول Meta Data نیز در نظر بگیرید که بسیار جداولی طولانی و پر از لینک‌ هستند که کار را از آنچه به نظر می‌رسد سخت تر می‌کنند.

من پیشنهاد می‌کنم در صورتی که می‌خواهید از ابزار جست‌وجو و تبدیل استفاده کنید ، عملیات تغییر را در یک سرور پشتیبان برای توسعه انجام دهید و درصورتی که کارتان نتیجه بخش بود آن را انتقال دهید. یا در صورتی که وقت یا امکان چنین کاری را ندارید حداقل یک پشتیبان از اطلاعات قبل از هر عملی تهیه کنید. وب سایت هایی هستند که فضای ذخیره سازی بالایی برای بک آپ به شما ارائه می‌دهند و هزینه کمی هم دریافت می‌کنند.

برای فعالسازی ابزار جست‌و‌جو و جایگزینی شرکت Interconnect IT آن را از وب سایت شرکت دانلود کنید و در روت وب هاست خود آپلود کنید.

بعد از انجام این عملیات در کنار دامنه وب سایت خود /search-replace-db را قرار دهید و به صفحه جست‌وجو و جایگزینی وارد شوید.

در این قسمت شما می‌توانید تمامی لینک‌های وب سایت خود را به لینک جدید تبدیل کنید. توجه داشته باشید که تمامی فرمت های لینک‌ها اعمم از همراه با www. و بدون www. را باید در این قسمت جست‌و‌جو و جایگزین کنید.

  • http://mydomain.com

    به

    https://mydomain.com
  • http://www.mydomain.com

    به

    https://www.mydomain.com

پیشنهاد می‌شود که در ابتدا شما Dry Run را فعال کنید تا ببینید که چه لینک‌هایی تغییر پیدا می‌کند و بعد از اینکه از لینک‌ها مطمئن شدید روی Live Run کلیک کنید تا عملیات تبدیل انجام شود.

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

اگر نتوانستید از ابزار بالا استفاده کنید ، تنها راهی که برایتان باقی می‌ماند استفاده از افزونه Really Simple SSL plugin می‌باشد. این افزونه رایگان به شما کمک می‌کند که به راحتی وب سایت وردپرسی خود را نسبت به گواهینامه SSL همگام سازی‌ کنید.

مطالب خواندنی : آنچه که باید درباره خطای ۴۰۴ بدانید

  • این افزونه بیشتر مشکلات وب سایت را حل می‌کند. برای مثال مسائل loadbalancer را حل می‌کند .
  • تمامی لینک‌های قدیمی شما را به HTTPS تبدیل می‌کند و تا جای ممکن از .htaccess برای این کار استفاده می‌کند و اگر این روش جواب نداد وارد فایل‌های جاوا اسکریپت می‌شود.
  • آدرس وب سایت و وردپرس را به HTTPS تبدیل می‌کند.
  • تمامی آدرس‌های http:// به صورت هوشمند به HTTPS تبدیل می‌شوند و به جز آدرس وب سایت و وردپرس هیچ تغییری در دیتابیس شما اعمال نمی‌شود.

۴ –  تبدیل لینک فایل‌های JS متفرقه و Ajax به HTTPS

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

برای مثال اگر شما از گوگل سرویس‌ هاستینگ خود را تهیه می‌کنید ، باید مطمئن شوید که فایل‌های شما در CDN با قابلیت HTTPS نگهداری می‌شوند. برای مثال فایل جی‌کوئری مخصوص CDN گوگل https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js می‌باشد.

بررسی وب سایت برای پیدا کردن بخش‌های نا امن :

یک توسعه دهنده با نام jitbit یک ابزار بررسی SSL کوچک ولی بسیار پر استفاده را آماده سازی کرده است که از این طریق شما می‌توانید وب سایت خود را بررسی کنید و محتوا‌ی نا امن وب سایت را شناسایی کنید.

۵ –  ریدایرکت ۳۰۱ به آدرس با پروتکل HTTPS

حالا بهتر است که به مهم ترین بخش انتقال دامنه برسیم یعنی ریدایرکت http به https با کد  ۳۰۱ آدرس وب سایت . این بخش اصلی ترین قسمت انتقال آدرس سایت می‌باشد زیرا در صورتی که این کار را انجام ندهید انگار نه انگار که وب سایت شما به HTTPS تبدیل شده است و همچنان وب سایتتان با HTTP باز می‌شود.

همچنین در نظر بگیرید که اگر ریدایرکت های نوع دیگری را برای این صفحات استفاده کنید مطمئن باشید که به سئو وب سایت خود آسیب جدی‌ای وارد کرده اید، بنابر این باید توجه داشته باشید که حتما با ریدایرکت ۳۰۱ آدرس وب سایت خود را به HTTPS تبدیل کنید.

اینکه از چه پلتفرمی در وب سایت خود استفاده می‌کنید اصلا اهمیت ندارد و ما اصلا پیشنهاد نمی‌کنیم که از طریق افزونه‌ها این کار را انجام دهید. با یک جست‌وجوی ساده می‌توانید نحوه ریدایرکت ۳۰۱ را در وب سرور خود بیابید. برای مثال در زیر ما دو وب سرور انجینکس و آپاچی را برای شما کد‌های ریدایرکتشان را قرار داده ایم . برای دیگر وب سرور‌ها لطفا در گوگل جست‌و‌جو کنید.

وب سرور انجینکس :

کد‌های زیر را در بخش کانفیگ انجینکس قرار دهید :

server {
listen 80;
server_name domain.com www.domain.com;
return 301 https://domain.com$request_uri;
}

وب سرور آپاچی :

کد‌های زیر را در فایل .htaccess آپاچی قرار دهید :

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

۶ –  بروزرسانی فایل robots.txt

هرگونه لینک‌ گذاری‌های سخت و همچنین قوانین مسدودیت را در robots.txt خود بررسی کنید و تمامی دایرکتوری‌ها و فایل‌های تحت پروتکل HTTP را به HTTPS تغییر دهید.

۷ –  نصب گواهینامه SSL بر روی CDN

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

متاسفانه اگر از CDN کلودفلر استفاده می‌کنید و دامنه IR و ایران برای وب سایت خود تهیه کرده اید باید اعلام کنم که CDN کلودفلر امکان استفاده از SSL را به طور کلی به شما نمی‌دهد و حتی نمی‌توانید در CDN کلودفلر از گواهینامه SSL شخصی خودتان استفاده‌ کنید.

اگر دامنه بین المللی دارید، حتی سرویس رایگان CDN کلودفلر نیز به شما یک گواهینامه رایگان SSL هدیه می‌دهد که یک گواهینامه رایگان COMODO می‌باشد و به صورت خودکار بر روی وب سایت شما فعال می‌شود و شما می‌توانید آن را در وب سایتتان استفاده کنید. همچنین اگر گواهینامه دیگری را تهیه کرده‌اید می‌توانید با فعالسازی سرویس ویژه کلودفلر گواهینامه شخصی خود را نیز به آن اضافه کنید.

۸ –  بروزرسانی لینک‌های مبدا در CDN

شما همچنین باید مطمئن شوید که لینک‌های مبدا خودتان را در CDN تغییر داده باشید.

برای مثال اگر از KeyCDN استفاده می‌کنید ، از داشبورد KeyCDN وارد بخش Zones شوید.

در بخش Zones بر روی کلید Manage مخصوص Zone مورد نظر خود کلیک کنید و کلید Edit را انتخاب کنید.

حال که صفحه pull zone باز شد. آدرس وب سایت خود را از پروتکل HTTP‌ به پروتکل HTTPS تغییر دهید.

۹ –  فعالسازی HTTP/2 در CDN

از داشبورد KeyCDN وارد بخش Zones شوید.

در بخش Zones بر روی کلید Manage مخصوص Zone مورد نظر خود کلیک کنید و کلید Edit را انتخاب کنید.

بر روی Show Advanced Features کلیک کنید.

پروتکل HTTP/2 را فعالسازی کنید و روی کلید Save کلیک کنید.

۱۰ –  تبدیل تمامی لینک‌ گذاری‌های سخت CDN به HTTPS

دقیقا همانند مرحله سوم در وردپرس در این بخش نیز ما تمامی لینک گذاری‌های سخت وب سایتمان را در CDN از HTTP‌ به پروتکل امن HTTPS تبدیل می‌کنیم.

در انجام این کار دقت نظر فرمایید زیرا اعمال انجام شده تاثیر مستقیم بر روی سئو سایت شما دارد. همچنین مطمئن شوید که پس از تکمیل کار آدرس ها با پروتکل‌های HTTP‌ را حذف کنید. در KeyCDN بخشی به نام Delete Me وجود دارد که می‌توانید از آن برای حذف این آدرس‌های سخت استفاده کنید.

۱۱ –  سئو : کنسول گوگل ، سایت مپ و Fetch

پس از انجام این عملیات‌ها وقت آن است که وب سایتتان را در کنترل پنل وب مستر گوگل نیز به HTTPS تغییر دهید. برای اینکار شما راهی جز ایجاد یک وب سایت جدید در سرچ کنسول وب مستر گوگل ندارید ، بنابراین حالا روی Add a Property کلیک کنید. و آدرس وب سایت خود را  وارد کنید.

سایت مپ :

سایت مپ ها به روند ایندکسینگ وب سایت شما تاثیر خاصی نمی‌گذارند ولی برای اینکه شما خودتان از لینک‌های ایندکس شده خود با خبر شوید مفید هستند و همچنین از این طریق شما میتوانید مشکلات موجود در لینک‌های خود را نیز ببینید.

اگر در نسخه HTTP وب سایت خود سایت مپ را متصل کرده‌اید ، در این نسخه HTTPS نیز باید این کار را انجام دهید.

نکته : برای موتور‌های جست‌وجوی دیگر مانند یاندکس ، یاهو و بینگ نیز باید این راه‌ها را انجام دهید و  پروتکل جدید وب سایت را به موتور‌های جست‌وجو بشناسانید.

Fetch :

ما پیشنهاد می‌کنیم برای کمک به ربات‌های گوگل و همچنین سریع‌تر شدن روند ایندکس‌شدن نسخه HTTPS وب سایتتان از ابزار Fetch گوگل استفاده کنید. این ابزار باعث بررسی سریع ربات‌ها در وب سایتتان خواهند شد و روند ایندکس وب سایتتان را افزایش می‌دهند. (این کار به صورت خودکار نیز انجام می‌شود ولی کمی بیشتر از انجام دستی زمان می‌برد)

۱ – وارد بخش Fetch گوگل شوید و فیلد را خالی گذاشته و روی Fetch کلیک کنید.

۲ – پس از انجام این کار روی گزینه Submit to index کلیک کرده و با انتخاب گزینه Crawl this URL and its direct links تمامی صفحات متصل به صفحه اصلی وب سایتتان را مورد بررسی ربات گوگل قرار دهید.

۱۲ –  سئو : ثبت دوباره فایل Disavow

آپدیت (Dec 24 2017): این مرحله ، مرحله‌ای است که بیشتری‌ها فراموش می‌کنند که انجام دهند، هر چند از نگاه بنده (پوریا آریافر) چندان اهمیت ندارد، به هر حال پس از انجام مرحله ۱۱ شما باید فایل Disavow پروتکل قبلی (پروتکل http) را از طریق این لینک گوگل دریافت کنید و در نسخه یا همان Property جدید که با آدرس HTTPS  در گوگل وب مستر است، فایل Disavow را آپلود کنید.

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

نکته مهم: گاهی بنده مشاهده کردم دوستان برای پاک کردن آدرس سایت قدیمی خود در گوگل، آدرس قدیمی سایت خود را در فایل Disavow در Property همان آدرس آپلود و ارسال می‌کنند، این عمل کاملا غلط است و تاثیرات منفی به همراه دارد.

شما وقتی لینک‌های آدرس یک سایت را Disavow می‌کنید، یعنی به شکلی به گوگل می‌گویید لینک‌های آن سایت را برای من nofollow کن. یعنی بی تاثیر کردن لینک‌های سایت لینک دهنده.

این مرحله را شما وقتی باید انجام دهید که قبلا در نسخه http سرچ کسنول خود (یا همان Property قدیمی با آدرس http) فایلی از لینک‌ها را Disavow کرده باشید، و حال در اینجا می‌گوییم که دوباره در Property جدید آن فایل را دوباره Disavow کنید به این علت که ممکن است با تغییر آدرس سایتمان، گوگل با پیدا کردن دوباره لینک‌های اسپم سایت معرفی شده در Propery قبلی، تاثیر بر آدرس جدید را بگذارد، بیشتر این عمل جنبه محکم کاری را دارد ولی باز می‌گویم که بهتر است این عمل توسط متخصص سئو صورت بگیرد، در غیر این حالت، از Disavow کردن لینک‌هایی که مطمئن نیستید اسپم هستند یا خیر خودکاری کنید.

خب برای ثبت دوباره فایل Disavow به این لینک مراجعه کنید و فایل را در سرچ کنسول گوگل وارد کنید.

از موفق بودن عملیات اطمینان حاصل کنید .

۱۳ –  برورسانی آدرس وب سایت در گوگل آنالیز

سپس شما نیاز دارید که اطلاعات وب سایتتان در گوگل آنالیز را بروزرسانی کنید. کافیست که در گوگل آنالیز به بخش Account بروید و سپس بخش تنظیمات را مشاهده کنید. بعد از ورود به بخش تنظیمات ، می‌بایست اطلاعات وب سایت خودتان را از پروتکل HTTP به HTTPS تغییر دهید. این کار را برای Property Settings نیز انجام دهید. با این کار اطلاعات شما از دست نمی‌رود و تمامی آمار شما از ابتدا باقی خواهد ماند.

۱۴ –  بروزرسانی‌های دیگر

در اینجا چند نمونه از بروزرسانی‌های لازمی که شما باید برای انتقال از HTTP به HTTPS انجام دهید را بررسی می‌کنیم.

  • برچسب‌های استاندارد وب سایتتان را با پروتکل HTTPS همگام سازی کنید. اگر از ابزار مختلف وردپرس برای این کار استفاده کنید (مانند نمونه ای که در بخش سوم به آن اشاره کردیم) برچسب‌های استاندارد شما به صورت خودکار بروزرسانی خواهند شد. اگر از یک پلتفرم دیگر استفاده می‌کنید، مطمئن شوید که برچسب‌ها بروزرسانی شوند.
  • لینک‌های PPC شخص ثالث خود را بروزرسانی کنید. (لینک‌‌هایی مانند AdWords ، Bing Ads و FB Ads)
  • لینک‌های مخصوص سرویس‌های ایمیل مارکتینگ را بروزرسانی کنید.
  • لینک‌های شبکه‌های اجتماعی خود را بروزرسانی کنید.
  • تمامی لینک‌های خروجی و بک‌لینک‌های خود را بروزرسانی کنید.
  • ابزار شمارنده لایک شبکه‌های اجتماعی خود را بروزرسانی کنید.

گوگل ۱۳ راه حل برای انجام پس از مهاجرت به HTTPS را در صفحه گوگل پلاس خود منتشر کرده است که اگر به زبان انگلیسی تسلط دارید پیشنهاد می‌کنم حتما آن را بررسی نمایید.

خلاصه

همانطور که مشاهده کردید راه‌های مختلفی برای مهاجرت  و انتقال صحیح از HTTP به HTTPS وجود دارد ولی اینکه شما کدام یک را انتخاب می‌کنید به خودتان بستگی دارد ولی راهی که امروز ما پیشنهاد کردیم یک راه عملی و خوب است که شما از این طریق می‌توانید عملکرد وب سایت خود را از طریق پروتکل HTTP/2 بهبود ببخشید و به افزایش رتبه سایت خود در گوگل خود کمک کنید، هر چند انتقال به این پروتکل نزدیک به ۲۰۰ میلی ثانیه باعث کاهش سرعت سایت می‌شود ولی این امر نیز چندان مهم نیست. حالا دیگر شما مطمئن هستید که وب سایتی امن دارید و ورود‌های شما دیگر بر مبنای یک فایل تکست ساده نیست و همه رمزگذاری خواهد شد.

اگر به دنبال منابع بیشتر در این زمینه هستید پیشنهاد میکنم مقاله سایت pixelprivacy را هم مطالعه کنید.

Bilin
mizfa

دیدگاه خود را در میان بگذارید

Please enter your comment!
Please enter your name here