Mengapa menggunakan pengalihan
Anda menggunakan pengalihan setiap kali pemilik situs web menginginkan alamat untuk dirutekan ulang ke alamat lain, biasanya mengarahkan HTTP ke HTTPSatau mengalihkan satu domain ke domain lain.
Skenario HTTP ke HTTPS:
Anda ingin pelanggan Anda menjangkau situs aman (SSL) Anda meskipun mereka mengetik http://yourwebsite.com
atau yourwebsite.com
ke dalam browser mereka. Jenis pengalihan ini menyelesaikan hal itu. Misalnya, jika pelanggan Anda mengetik http://yourwebsite.com
,pengalihan di Nginx® mengalihkan permintaan ke https://yourwebsite.com .
Satu domain ke skenario lain:
Anda memiliki situswebanda.com , situswebanda.org , dan situswebanda.net , dan Anda ingin pelanggan Anda tiba di situs web Anda.com terlepas dari URL yang mereka masukkan ke browser mereka untuk mengunjungi situs Anda.
Cara mengalihkan di Nginx
Bagian berikut menjelaskan cara mengalihkan dari HTTP ke HTTPS dan dari satu domain ke domain lain.
HTTP ke HTTPS
Saat Anda memasang sertifikat SSL di server Anda, Anda memiliki dua blok server untuk situs web Anda:masing-masing untuk HTTP dan HTTPS. Masalahnya adalah Anda memerlukan cara untuk memaksa lalu lintas ke situs aman SSL Anda (versi HTTPS). Anda dapat melakukannya dengan menambahkan pengalihan ke blok server Nginx untuk situs web Anda.
Buka file konfigurasi untuk domain Anda. File harus diberi nama yang mirip dengan/etc/nginx/vhost.d/yourwebsite.com.conf . .conf menunjukkan file konfigurasi untuk domain Anda. Buka file dengan editor teks favorit Anda. Contoh berikut menggunakan vim
editor:
vim /etc/nginx/vhost.d/yourdomain.com.conf
Your server block will look similar to this:
server {
listen 80;
server_name yourwebsite.com www.yourwebsite.com;
}
Bergantung pada konfigurasi khusus Anda, ini mungkin berisi lebih banyak informasi daripada contoh sebelumnya, tetapi ini adalah contoh sederhana yang berfokus pada opsi pengalihan.
Namun, Anda ingin pelanggan Anda membuka versi aman darisituswebanda.com , jadi Anda perlu menambahkan redirect ke blok server di file konfigurasi. Untuk melakukannya, ubah blok agar terlihat mirip dengan contoh berikut dan simpan file:
server {
listen 80;
server_name yourwebsite.com www.yourwebsite.com;
return 301 https://yourwebsite.com$request_uri;
}
Dengan garis pengalihan sebelumnya, setiap kali pelanggan Anda mengetik disituswebanda.com atau www.situswebanda.com , sistem secara otomatis mengarahkan mereka ke https://yourwebsite.com versi situs web Anda. Namun, perhatikan bahwa Anda harus menambahkan baris ini ke 80
HTTP blok server, bukan 443
HTTPS blok server.
Anda mungkin juga harus mengarahkan ulang https://www.yourwebsite.com permintaan ke https://yourwebsite.com . Anda dapat melakukannya dengan menambahkan baris pengalihan lain ke 443
blok server, sering terletak di bawah 80
serverblock dalam file konfigurasi. Perubahan tersebut terlihat seperti contoh berikut:
server {
listen 443;
server_name www.yourwebsite.com;
return 301 https://yourwebsite.com$request_uri;
}
server {
listen 443;
server_name yourwebsite.com;
}
Catatan: Blok server Anda kemungkinan berisi lebih banyak informasi daripada contoh sederhana sebelumnya.
Satu domain ke domain lain
Bila Anda memiliki domain dengan beberapa domain tingkat atas (seperti .com ,.net , .org , dan seterusnya) dan ingin semua situs tersebut menjangkau situs web yang sama, gunakan pengalihan. Untuk contoh ini, kami berasumsi bahwa Anda memilikisituswebanda.com , situswebanda.org , dan situswebanda.net , dan Anda ingin mengalihkan semuanya ke situs web Anda.com .
Edit kembali file konfigurasi untuk domain Anda. Alih-alih menambahkan HTTPS redirect, ubah blok server seperti yang ditunjukkan pada contoh berikut:
server {
listen 80;
server_name yourwebsite.net;
return 301 $scheme://yourwebsite.com$request_uri;
}
server {
listen 80;
server_name yourwebsite.org;
return 301 $scheme://yourwebsite.com$request_uri;
}
Sekarang, setiap kali pelanggan Anda masuk ke situswebanda.net atau situswebanda.org , sistem mengarahkan mereka ke situs web Anda.com sebagai gantinya.
Simpan dan tutup file konfigurasi Anda setelah pengeditan dan mulai ulang keduanya nginx
danphp-fpm
untuk membuat perubahan tersebut aktif.