admin
10-18-2023, 06:32 PM
بهصورت کلی زمانی که شما SSL را روی سایت خود نصب میکنید، باید در تنظیمات سایت وردپرسی خود آدرس سایتتان را به https تغییر دهید. در نتیجه برای باز کردن سایتتان، اگر آدرس سایت را به صورت http://www.par30shop.ir در مرورگر وارد کنید، بهصورت خودکار به https://www.par30shop.ir منتقل خواهید شد.
این انتقال توسط درخواستی که از سمت وب سرور شما برای مرورگر ارسال میشود، صورت خواهد گرفت. اما اگر خود مرورگر با دیدن آدرس سایت شما، این انتقال را در آینده انجام دهد بهتر نیست؟ قطعا این روش بسیار بهتر است. برای اینکار از HSTS استفاده میکنیم.
https://mihanwp.com/wp-content/uploads/2021/04/how-hsts-works.png
HSTSچگونه کار میکند
فعال کردن HSTS در وردپرس برای فعالسازی HSTS در وردپرس باید یک هدر جدید در درخواستهای سمت سرور برای مرورگر کاربر ارسال شود. برای اینکار کافیست بسته به وب سرور سایت خود از این ۲ روش استفاده کنید.
فعالسازی در وب سرور آپاچی و لایت اسپید (مناسب برای ۹۹ درصد سایتها) برای فعالسازی HSTS در وب سرور آپاچی و لایت اسپید، کافیست وارد فایل منیجر هاست خود شوید. فایل منیجر هاست در سی پنل و دایرکت ادمین با نام FileManager در دسترس است.
بعد از ورود به فایل منیجر، وارد پوشه public_html شوید. سپس فایل .htaccess را ویرایش کرده و کد زیر را در این فایل قرار دهید:
<IfModule mod_headers.c>
Header set Strict-Transport-Security "max-age=31536000;preload" env=HTTPS
</IfModule>
سپس این فایل را ذخیره کنید. حالا مشاهده میکنید که سایت شما بهصورت خودکار از http به https ریدایرکت میشود. حتی قبل از اینکه درخواست به وب سرور ارسال شود.
راستی! اگر میخواهید تمام ساب دامینهای شما از https استفاده کنند، حتما این کد را جایگزین کد بالا کنید:
<IfModule mod_headers.c>
Header set Strict-Transport-Security "max-age=31536000;includeSubDomains;preload" env=HTTPS
</IfModule>
فعال کردن HSTS در وب سرور NGINX اگر شما از وب سرور انجین ایکس استفاده میکنید، نحوه انجام کار کمی متفاوت هست. تقریبا ۱ درصد سایتهای ایرانی از NGINX استفاده میکنند، پس به احتمال زیاد شما باید از روش قبلی استفاده کنید. اما در هر صورت اگر سرور مجازی یا اختصاصی دارید و وب سرور شما NGINX هست، کافیست فایل nginx.conf را در وب سرور خود پیدا کنید، سپس کد زیر را در Virtual Server مخصوص سایت خود اضافه کنید:
add_header Strict-Transport-Security "max-age=63072000;"; به همین راحتی! حالا وب سرور NGINX خود را ریستارت کرده و از HSTS در سایت خود لذت ببرید.
چطور مطمئن باشیم HSTS فعال است برای اطمینان از فعال بودن HSTS روی سایت شما، کافیست وارد سایت https://gf.dev/hsts-test شوید.سپس سایت خود را وارد کرده و گزینه تست را کلیک کنید. این سایت وضعیت فعال بودن HSTS روی سایت شما را بررسی خواهد کرد. به این صورت:
https://mihanwp.com/wp-content/uploads/2021/04/hsts-test.png
این انتقال توسط درخواستی که از سمت وب سرور شما برای مرورگر ارسال میشود، صورت خواهد گرفت. اما اگر خود مرورگر با دیدن آدرس سایت شما، این انتقال را در آینده انجام دهد بهتر نیست؟ قطعا این روش بسیار بهتر است. برای اینکار از HSTS استفاده میکنیم.
https://mihanwp.com/wp-content/uploads/2021/04/how-hsts-works.png
HSTSچگونه کار میکند
فعال کردن HSTS در وردپرس برای فعالسازی HSTS در وردپرس باید یک هدر جدید در درخواستهای سمت سرور برای مرورگر کاربر ارسال شود. برای اینکار کافیست بسته به وب سرور سایت خود از این ۲ روش استفاده کنید.
فعالسازی در وب سرور آپاچی و لایت اسپید (مناسب برای ۹۹ درصد سایتها) برای فعالسازی HSTS در وب سرور آپاچی و لایت اسپید، کافیست وارد فایل منیجر هاست خود شوید. فایل منیجر هاست در سی پنل و دایرکت ادمین با نام FileManager در دسترس است.
بعد از ورود به فایل منیجر، وارد پوشه public_html شوید. سپس فایل .htaccess را ویرایش کرده و کد زیر را در این فایل قرار دهید:
<IfModule mod_headers.c>
Header set Strict-Transport-Security "max-age=31536000;preload" env=HTTPS
</IfModule>
سپس این فایل را ذخیره کنید. حالا مشاهده میکنید که سایت شما بهصورت خودکار از http به https ریدایرکت میشود. حتی قبل از اینکه درخواست به وب سرور ارسال شود.
راستی! اگر میخواهید تمام ساب دامینهای شما از https استفاده کنند، حتما این کد را جایگزین کد بالا کنید:
<IfModule mod_headers.c>
Header set Strict-Transport-Security "max-age=31536000;includeSubDomains;preload" env=HTTPS
</IfModule>
فعال کردن HSTS در وب سرور NGINX اگر شما از وب سرور انجین ایکس استفاده میکنید، نحوه انجام کار کمی متفاوت هست. تقریبا ۱ درصد سایتهای ایرانی از NGINX استفاده میکنند، پس به احتمال زیاد شما باید از روش قبلی استفاده کنید. اما در هر صورت اگر سرور مجازی یا اختصاصی دارید و وب سرور شما NGINX هست، کافیست فایل nginx.conf را در وب سرور خود پیدا کنید، سپس کد زیر را در Virtual Server مخصوص سایت خود اضافه کنید:
add_header Strict-Transport-Security "max-age=63072000;"; به همین راحتی! حالا وب سرور NGINX خود را ریستارت کرده و از HSTS در سایت خود لذت ببرید.
چطور مطمئن باشیم HSTS فعال است برای اطمینان از فعال بودن HSTS روی سایت شما، کافیست وارد سایت https://gf.dev/hsts-test شوید.سپس سایت خود را وارد کرده و گزینه تست را کلیک کنید. این سایت وضعیت فعال بودن HSTS روی سایت شما را بررسی خواهد کرد. به این صورت:
https://mihanwp.com/wp-content/uploads/2021/04/hsts-test.png