OsCommerce中如何去掉地址栏中的SESSION ID?
安装了OsCommerce,但它默认的情况下会在地址栏中带有SESSION ID的值,象:
osCsid=3a25825a6a93d8b541cf5b936b4f7611
这样看上去很不爽,对于网站搜索也不利,那有什么办法可以去掉呢?
具体解决办法:
具体在includes/functions/html_output.php里
有个函数叫tep_href_link()
这个是OSCommerce里所有连接都要用到的函数
里面有定义加不加sessionid的代码
可以看到:
if (isset($_sid)) {
$link .= $separator . tep_output_string($_sid);
}
return $link;
}
屏蔽掉IF这一段:
/*if (isset($_sid)) {
$link .= $separator . tep_output_string($_sid);
}*/
然后再找到includes/functions/application_top.php里
// set the session name and save path
tep_session_name(‘osCsid’);
tep_session_save_path(SESSION_WRITE_DIRECTORY);
// set the session cookie parameters
if (function_exists(‘session_set_cookie_params’)) {
session_set_cookie_params(0, $cookie_path, $cookie_domain);
} elseif (function_exists(‘ini_set’)) {
ini_set(‘session.cookie_lifetime’, ’0′);
ini_set(‘session.cookie_path’, $cookie_path);
ini_set(‘session.cookie_domain’, $cookie_domain);
}
同样屏蔽掉IP这一段:
//// set the session cookie parameters
//
// if (function_exists(‘session_set_cookie_params’)) {
//
// session_set_cookie_params(0, $cookie_path, $cookie_domain);
//
// } elseif (function_exists(‘ini_set’)) {
//
// ini_set(‘session.cookie_lifetime’, ’0′);
//
// ini_set(‘session.cookie_path’, $cookie_path);
//
// ini_set(‘session.cookie_domain’, $cookie_domain);
//
// }
OK,这样就能除去地址栏的seeion id,并不影响网站的session功能