BASE_URL (Bugs)
may be BASE_URL bug.
in windows, the dirname($_SERVER['PHP_SELF']) will return prefix '\' path;
then:
if(substr($base_url, -1) != '/') $base_url = $base_url.'/'; will return: 'http://hostname\/'.
my code:
$base_url = $protocol . $_SERVER['HTTP_HOST'] . str_replace('\\', '/', dirname($_SERVER['PHP_SELF']));
BASE_URL
I reported this bug as well. Another work around is to always set the Base_URL in settings. That is a much easier solution.