Mam pewną aplikację, która została napisana w Zendzie. Do jej prawidłowej obsługi musiałem ściągnąć i zainstalować moduł mod_rewrite (ISAPI_Rewrite3_Lite). Gdy odpalam stronę startową aplikacji index.php pojawia mi się taki oto komunikat:
PHP Notice: Undefined index: HTTP_X_URL_BEFORE_REWRITE in C:\Inetpub\wwwroot\test\library\Zend\Controller\Request\Http.php on line 326 PHP Notice: Undefined index: HTTP_X_URL_BEFORE_REWRITE in C:\Inetpub\wwwroot\test\library\Zend\Controller\Request\Http.php on line 326
Jest on związany ściśle z linijką w pliku index.php o następującej treści:
zmienna $ctrl to:
$ctrl = Zend_Controller_Front::getInstance();
$ctrl->setBaseUrl('/test');
$ctrl->throwExceptions(true);
$ctrl->registerPlugin(new DPCPluginAuth($auth, $acl));
$ctrl->setControllerDirectory($config->controllers->toArray());
Linijka 326 biblioteki Zenda, której się czepia to:
$requestUri = $_SERVER['HTTP_X_URL_BEFORE_REWRITE'];
a całość funkcji to:
public function setRequestUri($requestUri = null)
{
if ($requestUri === null) {
if (isset($_SERVER['HTTP_X_REWRITE_URL'])) { // check this first so IIS will catch $requestUri = $_SERVER['HTTP_X_URL_BEFORE_REWRITE'];
} elseif (isset($_SERVER['REQUEST_URI'])) { $requestUri = $_SERVER['REQUEST_URI'];
} elseif (isset($_SERVER['ORIG_PATH_INFO'])) { // IIS 5.0, PHP as CGI $requestUri = $_SERVER['ORIG_PATH_INFO'];
if (!empty($_SERVER['QUERY_STRING'])) { $requestUri .= '?' . $_SERVER['QUERY_STRING'];
}
} else {
return $this;
}
return $this;
} else {
// Set GET items, if available
if (false !== ($pos = strpos($requestUri, '?'))) { // Get key => value pairs and set $_GET
$query = substr($requestUri, $pos + 1
); $_GET = $vars;
}
}
$this->_requestUri = $requestUri;
return $this;
}
Proszę o pomoc w rozwiązaniu problemu. Co to za konunikat, z jakiego powodu się pojawia, czy spotkaliście się już z takim?