Pertama-tama, sebelum memberikan jawaban saya ingin dimuka tentang fakta bahwa dengan mempercayai header Anda membuka pintu untuk kerentanan keamanan seperti phishing. Jadi untuk tujuan pengalihan, jangan gunakan nilai dari header tanpa terlebih dahulu memvalidasi URL.
Kemudian, nama host sistem operasi Anda mungkin tidak cocok dengan yang DNS. Bahkan, satu IP mungkin memiliki lebih dari satu nama DNS. Jadi untuk tujuan HTTP tidak ada jaminan bahwa nama host yang ditetapkan untuk mesin Anda dalam konfigurasi sistem operasi Anda dapat digunakan.
Pilihan terbaik yang bisa saya pikirkan adalah untuk mendapatkan IP publik pendengar HTTP Anda dan menyelesaikan namanya melalui DNS. Lihat dns.reverse
metode untuk info lebih lanjut. Namun, sekali lagi, perhatikan bahwa IP mungkin memiliki beberapa nama yang dikaitkan dengannya.