Mengalihkan HTTP ke HTTPS pada Konfigurasi NGINX

NGINX adalah sebuah software untuk web server dan open source. NGINX sekarang ini juga berperan sebagai reverse proxy, HTTP, load balancer, dan email proxy untuk POP3, IMAP dan SMTP.

Pada kesempatan ini Manado Coder ingin memberikan tips untuk supaya memaksa visitor pada website kita yang menggunakan NGINX sebagai web servernya otomatis diredirect ke HTTPS

Buka configuration domain nginx anda dan rubah kurang lebih seperti berikut ini:

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

server {
	listen *:443 ssl;
	ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
	ssl_certificate /var/www/web4/ssl/your-domain.com-le.crt;
	ssl_certificate_key /var/www/web4/ssl/your-domain.com-le.key;
	server_name your-domain.com www.your-domain.com;
	root /var/www/your-domain.com/web/;
	try_files $uri $uri/ /index.php;
	index index.php;
	error_log /var/log/httpd/your-domain.com/error.log;
	access_log /var/log/httpd/your-domain.com/access.log combined;

	location = /favicon.ico {
		log_not_found off;
		access_log off;
	}

	location @php {
		try_files $uri =404;
		include /etc/nginx/fastcgi_params;
		fastcgi_pass unix:/var/lib/php7-fpm/web.sock;
		fastcgi_index index.php;
		fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
		fastcgi_intercept_errors on;
	}
}