Scroll Top

Berikut cara memaksa agar semua akses HTTP (default port 80) pada webserver yang kita miliki agar teralihkan ke HTTPS khususnya pada Amazon Cloud Services EC2 instance (walaupun cara ini bisa digunakan juga secara umum karena force ini bersifat standar)

Jika menggunakan Apache, Maka edit file apache  virtualhost configuration dan tambahkan baris berikut:

<VirtualHost *:80>
  ...
  RewriteEngine On
  RewriteCond %{HTTP:X-Forwarded-Proto} !https
  RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI}
</VirtualHost>

Jika menggunakan NGINX, maka tambahkan baris berikut

server {
 listen 80;
 ...
 location / {
  if ($http_x_forwarded_proto != 'https') {
  rewrite ^ https://$host$request_uri? permanent;
  }
 }
}

Jika menggunakan IIS maka ubah file web.config dan tambahkan baris berikut:

<rewrite>
<rules>
<rule name="AWS ELB Forece Redirect to HTTPS" stopProcessing="true">
<match url="^(.*)$" ignoreCase="false" />
<conditions>
<add input="{HTTP_X_FORWARDED_PROTO}" pattern="^http$" ignoreCase="false" />
</conditions>
<action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}{REQUEST_URI}" />
</rule>
</rules>
</rewrite>

Silahkan dicoba dan test dengan menggunakan browser!

Related Posts