$_DIR['ROOT'] = $_SERVER['DOCUMENT_ROOT'] .'/..';//Outside the scope of WWW root
$_DIR['LOG'] = $_DIR['ROOT'] .'/logs/LogFiles/' . $_SERVER['SERVER_NAME'];
if (!is_dir($_DIR['LOG'])){Mkdir($_DIR['LOG'],0700,TRUE);}
I created a directory to log with on my Dev server assigning all sorts of values to these logs but i got some resolving DNS names that are not associated with my website at all.
Why would $_SERVER['SERVER_NAME'] be resolving other names that are not related to my server?
Expected Possibilities
127.0.0.1
Internal IP Address
External IP Address
test.example.com (My Website URI)
Unexpected Results
httpheader.net
www.baidu.com
www.epochtimes.jp
www.ly.com
If your web server accepts requests for any and all host names (usually because it has a default vhost), then your PHP script can be invoked with arbitrary HTTP Host
headers. Now, usually this should only happen if someone goes out of their way to send a manually crafted HTTP request to your IP address. However, especially since Asian sites are mentioned there, you may have become a victim of Grass Mud Horse, or the Chinese playing around with their DNS manipulation capabilities, spraying random traffic at your server (intentionally or unintentionally). Much more benign explanations may also include outdated DNS caches somewhere, misconfigurations in someone's system or random bots doing random queries based on who-knows-what.