sabotage (25.8.2008, 13:26) писал:
Если должно самостоятельно определить $_SERVER['HTTP_HOST'], то да, на локалхосте не сработало. Да и возможности (пока незадокументированные) смотрел.
Переменная $_SERVER['HTTP_HOST'] должна определяться самим PHP и она используется в нескольких местах, где нужен абсолютный адрес. Функция getBaseUri() не должна возвращать абсолютный путь. Если Вы используете baseuri для определения полного пути с доменом (например, baseuri =
http://localhost/), то это приведет к битым ссылкам, например, в /sitemap.xml.
sabotage (25.8.2008, 13:26) писал:
Еще одна трабла - если включить в конфиге engine.debug = on, то заголовки отправляются с опозданием и кодировка "ложится".
zengine.php (\zengine\classes\zengine.php)
...
Решается переносом в
ztemplate.php (\zengine\classes\ztemplate.php) и установкой после:
$this->charset = zengine::config()->get('engine.charset', 'utf-8');
header('Content-Type: text/html; charset=' . $this->charset, true);
Спасибо, что указали на данную проблему, и вариант её решения
Хотя, вариант решения и ошибочный, т.к. в Вашем случае при 404 ошибке из-за даты публикации, будет выведена информация о странице 404:
if (!$zpage || $zpage->getProperty('publish') > ZENGINE_NOW) { // если дата публикации еще не наступила, то
header('HTTP/1.1 404 Not Found');
require_once 'zengine/classes/zpage/error.php';
$zpage = zpage_error::getNotFound(); // переменная переопредлеяется объектом страницы 404
}