On some configurations, when using SES with a site that
is reached through a non-standard port (not port 80)
like 88 or 8080, SES appends the port number to the
BASE HREF tag twice.
This is dependent on whether or not your server appends
the port number on to the $_SERVER['HTTP_HOST'] variable.
I'm told it varies from system to system.
My config does and thus appends the port twice.
I have Win2k/Apache 2.
The dual port base href tag won't cause problems in
Mozilla, but wreaks havoc in IE.
I've hacked the SES file's last if statement to check
if HTTP_HOST already has a the port number in it or not
with a preg.
here's the last if statement code for quick access:
if($SES['displayBase']) {
$SES_['cleanScriptBase'] = preg_replace('/'
.preg_quote(ListLast($_SERVER['SCRIPT_NAME'], '/')).
'/i', '', $_SERVER['SCRIPT_NAME']);
$SES_['port'] = ($_SERVER['SERVER_PORT'] != 80) ?
':'.$_SERVER['SERVER_PORT'] : '';
$SES['baseURL'] = ($SES['secure']) ? 'https://' :
'http://';
$SES['baseURL'] .= $_SERVER['HTTP_HOST'];
if(!preg_match('/([a-z0-9.-]+)\.([a-z]{2,4}:\d{2,4})/i',$_SERVER['HTTP_HOST']))
$SES['baseURL'] .= $SES_['port'];
$SES['baseURL'] .= $SES_['cleanScriptBase'];
$SES['baseHref'] = '<base href="'.$SES['baseURL'].'" />';
}
Search Engine Safe patched file