Template Nginx WordPress force to HTTPS untuk VestaCP

Ini adalah template Nginx WordPress force to HTTPS untuk VestaCP yang saya pakai. Kita bebas membuat template sesuai kebutuhan/framework yang dipakai. Bahkan lebih mudahnya mencontoh dari file template yang sudah ada, lokasinya di:

/usr/local/vesta/data/templates/web/nginx/php-fpm/

Template ini berlaku, jika web/domain sudah terinstall sertifikat SSL

Jadi, mari buat file baru dengan nama wpseo.stpl

nano /usr/local/vesta/data/templates/web/nginx/php-fpm/wpseo.stpl

Kemudian isi berikut

server {
    listen      %ip%:%web_ssl_port%;
    server_name %domain_idn% %alias_idn%;
    root        %docroot%;
    index       index.php index.html index.htm;
    access_log  /var/log/nginx/domains/%domain%.log combined;
    access_log  /var/log/nginx/domains/%domain%.bytes bytes;
    error_log   /var/log/nginx/domains/%domain%.error.log error;

    ssl         on;
    ssl_certificate      %ssl_pem%;
    ssl_certificate_key  %ssl_key%;

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

    location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
    }

    location / {
        try_files $uri $uri/ /index.php?$args;

        if (!-e $request_filename)
        {
            rewrite ^(.+)$ /index.php?q=$1 last;
        }

        location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ {
            expires     max;
        }

        location ~ [^/]\.php(/|$) {
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            if (!-f $document_root$fastcgi_script_name) {
                return  404;
            }

            fastcgi_pass    %backend_lsnr%;
            fastcgi_index   index.php;
            include         /etc/nginx/fastcgi_params;
        }
    }

    error_page  403 /error/404.html;
    error_page  404 /error/404.html;
    error_page  500 502 503 504 /error/50x.html;

    location /error/ {
        alias   %home%/%user%/web/%domain%/document_errors/;
    }

    location ~* "/\.(htaccess|htpasswd)$" {
        deny    all;
        return  404;
    }

    include     /etc/nginx/conf.d/phpmyadmin.inc*;
    include     /etc/nginx/conf.d/phppgadmin.inc*;
    include     /etc/nginx/conf.d/webmail.inc*;

    include     %home%/%user%/conf/web/nginx.%domain_idn%.conf*;
}

Dan berikutnya, buat file template Nginx untuk non-HTTPS agar meredirect secara permanen ke HTTPS

nano /usr/local/vesta/data/templates/web/nginx/php-fpm/wpseo.tpl

Isi dengan kode berikut

server {
    listen      %ip%:%web_ssl_port%;
    server_name %domain_idn% %alias_idn%;
    location / {
        rewrite ^(.*) https://%domain_idn%$1 permanent;
    }
include %home%/%user%/conf/web/*nginx.%domain_idn%.conf_letsencrypt;
}

Simpan.

Atau cara yang kedua, Anda bisa download file dari yang sudah saya upload di idnetter.com tanpa perlu capek-capek membuatnya, dengan perintah berikut:

wget -O /usr/local/vesta/data/templates/web/nginx/php-fpm/wpseo.stpl https://idnetter.com/pub/vesta/wp.stpl && wget -O /usr/local/vesta/data/templates/web/nginx/php-fpm/wpseo.tpl https://idnetter.com/pub/vesta/wp.tpl

Sekarang, edit WEB melalui control panel Vesta, kemudian pilih

Web Template: wpseo

Selesai, semoga bermanfaat.

Oh iya Anda punya kendala seputar VestaCP, segera kontak 081235008433 😀 jasa setting VestaCP terbaik!

2 thoughts on “Template Nginx WordPress force to HTTPS untuk VestaCP

  1. Soni

    Hallo gan, mau tanya saya ada kendala, sesudah memilih template WEB melalui control panel Vesta, saya pilih codeigniter3, pas disimpan kok balik lagi ke default ya, masalahnya dimana ya gan ? Terima kasih

    1. Omar

      Halo juga, downgrade ke Vesta versi 0.9 mas

Add a comment