ریدایرکت http به https با کمک htaccess
رعایت اصول امنیتی در سایتها موضوعی مهم است. یکی از موارد امنیتی که تمام سایتها میبایست آن را رعایت کنند، دسترسی به سایت از طریق پروتکل ایمن https است. این پروتکل تضمین میکند که اطلاعات ارسال و دریافت شده بین کاربر و سایت توسط افراد دیگر قابل شنود و تغییر دادن نیست.
علاوه بر این استفاده از این پروتکل در مرورگرهای جدید برای دسترسی به برخی قابلیتهای مدرن مثل دسترسی به دوربین و میکروفون و کلیپبورد و ... الزامی است.
چرا استفاده از https ضروری است ؟
برخی از کاربران ممکن است به دلیلی آدرس http سایت شما را باز کنند و به صورت پیشفرض سایت میتواند با این پروتکل هم کار کند که باعث ایجاد نشانیهای تکراری و مشکلات امنیتی و کارایی میشود. استفاده از htaccess باعث میشود تا دسترسی به آدرس قدیمی http دیگر ممکن نباشد و هر کاربری که این آدرس را باز کند به صورت خودکار به آدرس ایمن هدایت شود.
ریدایرکت به https
در ادامه قطعه کدی که کار هدایت( ریدایرکت ) کاربران از آدرس http به https را با استفاده از دستورات htaccess به انجام میرساند را برای شما آمادهسازی کردیم.
انجام انتقال یا Redirect با استفاده از روشهای متعددی قابل انجام است. روشی که در ادامه آن را مشاهده میکنید، کلیترین روش ممکن است که روی هر سایت و با هر نشانی قابل استفاده است.
1 2 |
RewriteCond %{SERVER_PORT} ^80$ RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301] |
قطعه کد بالا را در ابتدای فایل htaccess سایت خود درج نمایید. این کد بررسی میکند که آیا کاربر از طریق پورت ۸۰( مربوط به پروتکل http ) به سایت متصل شده است یا خیر، در صورت مثبت بودن پاسخ، وی را به آدرس https سایت درخواست شده هدایت میکند.
این کد توانایی دارد روی هاستهایی که با چند دامنه یا زیردامنهی مختلف نصب شدهاند نیز به صورت عمومی و به درستی کار کند.
لازم به ذکر است این کد تنها در صورتی قابل استفاده است که سایت شما قبلا به صورت https قابل دسترسی باشد و اگر مراحل لازم در جهت ایمن کردن سایت شامل تهیه کردن کلید رمزنگاری و نصب آن روی سایت را به انجام نرسانده باشید، این کد قابل استفاده نخواهد بود.