protected function _initUrlData()
{
$conf =& App::config()->urlengine;
$this->urlScript = $conf['urlScript'];
$this->urlScriptPath = $conf['urlScriptPath'];
$this->urlScriptName = $conf['urlScriptName'];
$piiqp = $conf['pathInfoInQueryParameter'];
if ($piiqp) {
if (isset($_GET[$piiqp])) {
$pathinfo = $_GET[$piiqp];
unset($_GET[$piiqp]);
} else {
$pathinfo = '';
}
} else {
if (isset($_SERVER['PATH_INFO'])) {
$pathinfo = $_SERVER['PATH_INFO'];
} else {
if (isset($_SERVER['ORIG_PATH_INFO'])) {
$pathinfo = $_SERVER['ORIG_PATH_INFO'];
} else {
$pathinfo = '';
}
}
}
if ($pathinfo == $this->urlScript) {
//when php is used as cgi and if there isn't pathinfo in the url
$pathinfo = '';
}
if (App::config()->isWindows && $pathinfo && strpos($pathinfo, $this->urlScript) !== false) {
//under IIS, we may get /subdir/index.php/mypath/myaction as PATH_INFO, so we fix it
$pathinfo = substr($pathinfo, strlen($this->urlScript));
}
$this->urlPathInfo = $pathinfo;
}