Blocking POST Request Ke Domain Utama

Salah satu cara untuk mencegah agar orang tidak bisa melakukan login ke server kita adalah dengan melakukan disable POST request. Apa itu maksudnya? Maksudnya dengan cara ini orang tidak akan bisa mengirimkan data ke server kita, sehingga aman dari login yang tidak bertanggung jawab.

Caranya mudah saja sebenarnya, cukup dengan beberapa langkah.

Pertama, buat subdomain dengan nama tertentu sebagai subdomain kita, yang mengarah ke root HTML (public_html) kita. Misalkan: secret.ahlikompie.com.

Kedua, setting .htaccess yang memblokir login dari domain utama, sekaligus block bot dari subdomain:

# Block POST Request Dari Domain Utama
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{HTTP_HOST} ^ahlikompie.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.ahlikompie.com$
RewriteRule ^ / [F]
# send all POST requests to 403 forbidden

# request is for secret.ahlikompie.com
RewriteCond %{HTTP_HOST} ^secret.ahlikompie.com$ [NC]
# user-agent is a search engine bot
RewriteCond %{HTTP_USER_AGENT} (googlebot|yahoo|slurp|msnbot|bingbot) [NC]
# return forbidden
RewriteRule ^ - [L,F]

Ketiga, dari wp-config.php pastikan yang akses subdomain itu diberi akses login sekaligus tampilkan noindex dan nofollow untuk robot

// Enable Development Mode
if($_SERVER["HTTP_HOST"] == "secret.ahlikompie.com"){
  // URL kerja untuk admin
  define( 'WP_SITEURL', 'https://secret.ahlikompie.com' );
  // URL public untuk visitor
  define( 'WP_HOME', 'https://secret.ahlikompie.com' );
}

Keempat, lakukan cron tiap jam menggunakan Interconnectit Search Replace DB agar kalau ada isi content WP ke arah subdomain tersebut akan diupdate ke domain utama yang benar, misalnya:

php ~/public_html/scripts/Search-Replace-DB-4.1.2/srdb.cli.php -h localhost -u username -p password -n dbname -s secret.ahlikompie.com -r ahlikompie.com

Nah, karena tidak bisa login nanti kita akan bingung, bagaimana cara untuk mengelola server kita. Iya kan? Jawabnya, silakan login dari subdomain dev.example.com, kalau di WordPress. Detail caranya ada pada posting sebelumnya tentang membangun website dengan BunnyCDN.

Referensi kode: StackOverflow, ServerFault

About Ahli Kompie 339 Articles
Haryo adalah admin AhliKompie.com. Dia merupakan sarjana komputer (teknik informatika) dari salah satu universitas swasta ternama di Jakarta.

Be the first to comment

Leave a Reply

Your email address will not be published.


*