Skip to main content

Konfigurasi Index, Error_Page, Return, Rewrite, Try_Files Redirect Pada Nginx


Konfigurasi Redirect Nginx - Salah satu yang menciptakan nginx sangat flexible ialah option yang disediakan nginx untuk melaksanakan redirect request uri. Di pembahasan kali ini www.dimasrio.com akan menjelaskan berberapa fitur nginx yang memungkinkan kita untuk melaksanakan redirect.

Baca Juga :
Konfigurasi Location Block Nginx
Install Nginx Source di CentOS 7
Disini kita akan melanjutkan konfigurasi yang sebelumnya, bagi teman ada yang belum membaca artikel sebelumnya silahkan buka pada link di atas.

Index

Index merupakan ialah cara yang paling gampang untuk memilih file index. Dengan index, file yang yg kita definisikan akan menjadi sebuah index.

Contoh :
location /home {
      index dimzrio.html;
      root /opt/nginx/html;
}
Lalu buat file dimzrio.html di dalam direktory /opt/nginx/html/home. Lalu access dengan url https://dimzrio.com/home maka secara otomatis dimzrio.html akan menjadi file index location /home.

Error_page

Error page ini ialah salah satu cara untuk handling http error. Sehingga kita sanggup menciptakan redirect pada semua http error ke halaman tertentu.

Contoh :
error_page 404 /404.html;
location = /404.html {
       root /opt/nginx/html;
}
Lalu buat file 404.html di dalam direktory /opt/nginx/html. Jika request uri tidak ditemukan maka akan di redirect ke halaman 404.hml.


Return

Untuk melaksanakan redirect dengan memakai return, kita perlu memahami http respond code. HTTP Redirect akan mengembalikan response code 301 ( Permanent Redirect ) dan 302 ( Temporary Redirect).

Contoh :
location */img/(.*)$ {
           return 301 $scheme://$host/images/$1";
}
Lalu letakan file gambar (sebagai teladan saya memakai file nginx.png) pada direktory /opt/nginx/html/images. Selanjutnya jalan masuk dengan https://dimzrio.com/img/nginx.png maka akan di redirect ke https://dimzrio.com/images/nginx.png.

Rewrite

Jika kita memakai rewrite untuk menciptakan melaksanakan redirect, kita sanggup melakukannya di luar location block. 

Contoh:
rewrite ^/logo/(.*)$ $scheme://$host/images/$1 permanent;
Perintah di atas output hampir sama dengan return. JIka user mengakses https://dimzrio.com/logo/nginx.png maka akan di redirect ke https://dimzsrio.com/images/nginx.png.

Try_files

Jika kita sering memakai cms atau framework, sudah seharusnya kita mempelajari try_files redirect. Biasanya try_files dipakai untuk request uri yang dinamik alasannya sanggup melaksanakan pencocokan requests.

Contoh:
location /data {
       root /opt/nginx/html;
       try_files $uri $uri/ $uri.txt $uri.html =404;
}
Lalu buatlah file berjulukan info.txt dan example.html pada direktory /opt/nginx/html/data. Kemudian access dengan memakai url berikut:

  • https://dimzrio.com/data/info 
  • https://dimzrio.com/data/example
Dari request uri diatas, maka try_files akan mengembalikan respond sesuai file yang tersedia pada /home. Akan tetapi jikalau request uri tidak cocok maka akan mengembalikan error code 404.

Sebagai pelengkap saya akan menunjukkan teladan bagaimana melaksanakan redirect http ke https dan non-www ke www.

HTTP ke HTTPS
if ($scheme = http) {
        return 301 https://$server_name$request_uri;
}
Non-WWW to WWW
if ($host = "dimzrio.com" ) {
        return 301 https://www.$host$request_uri;
}

Bagaimana sobat? Banyak sekali bukan cara untuk melaksanakan redirect pada nginx? Semoga tutorial konfigurasi redirect nginx bermanfaat bagi kita semua dan selamat mencoba..!!!!

Sumber http://www.dimasrio.com/
Comment Policy: Silahkan tuliskan komentar Anda yang sesuai dengan topik postingan halaman ini. Komentar yang berisi tautan tidak akan ditampilkan sebelum disetujui.
Buka Komentar
Tutup Komentar