Varkolak,
проблема в коде sape.php в 197 строке. HTTP_REMOTE_ADDR может и не существовать, видимо в коде sape проверки на это не производится. Просто добавьте проверку на существование.
Varkolak,
еще раз повторю, HTTP_REMOTE_ADDR не всегда передается сервером, когда его нет и нет нормальной проверки в коде у Sape - у Вас будет замечание. В предыдущей эксплуатации значит такой ситуации не случалось. Нужно просто исправить эту строчку в коде sape.php. Т.к. содержимое ее неизвестно, то я не могу посоветовать что именно нужно исправить.
Приведи фрагмент кода, чтобы можно было что то посоветовать.
<?php
/*
* SAPE.ru -- Интеллектуальная система купли-продажи ссылок
*
* PHP-клиент, версия 0.8 от 21.09.2007
*
* По всем вопросам обращайтесь на fhccbeg@fncr.eh
*
* Вебмастеры! Не нужно ничего менять в этом файле! Все настройки - через параметры при вызове кода.
* Читайте:
*
*/
class SAPE_client {
var $_version = '0.8';
var $_verbose = false;
var $_charset = ''; //
var $_server = 'dispenser-01.sape.ru';
var $_cache_lifetime = 3600; // Пожалейте наш сервер :о)
// Если скачать базу ссылок не удалось, то следующая попытка будет через столько секунд
var $_cache_reloadtime = 600;
var $_links_db_file = '';
var $_links = array();
var $_links_page = array();
var $_links_delimiter = '';
var $_error = '';
var $_host = '';
var $_request_uri = '';
var $_multi_site = false;
var $_fetch_remote_type = ''; // Способ подключения к удалённому серверу [file_get_contents|curl|socket]
// На случай, если хочется много сайтов в одной папке
if (isset($options['multi_site']) && $options['multi_site'] == true) {
$this->_multi_site = true;
}
// Сообщать об ошибках
if (isset($options['verbose']) && $options['verbose'] == true) {
$this->_verbose = true;
}
// Всегда выводить чек-код
if (isset($options['force_show_code']) && $options['force_show_code'] == true) {
$this->_force_show_code = true;
}
if (!defined('_SAPE_USER')) {
return $this->raise_error('Не задана константа _SAPE_USER');
}
$this->load_links();
}
function load_links() {
// Для сайтов, которые лежат в одной папке
if ($this->_multi_site) {
$this->_links_db_file = dirname(__FILE__) . '/' . $this->_host . '.links.db';
} else {
$this->_links_db_file = dirname(__FILE__) . '/links.db';
}
if (!is_file($this->_links_db_file)) {
// Пытаемся создать файл.
if (@touch($this->_links_db_file)) {
@chmod($this->_links_db_file, 0666); // Права доступа
} else {
return $this->raise_error('Нет файла ' . $this->_links_db_file . '. Создать не удалось. Выставите права 777 на папку.');
}
}
if (!is_writable($this->_links_db_file)) {
return $this->raise_error('Нет доступа на запись к файлу: ' . $this->_links_db_file . '! Выставите права 777 на папку.');
}
@clearstatcache();
if (filemtime($this->_links_db_file) < (time()-$this->_cache_lifetime) || filesize($this->_links_db_file) == 0) {
// Чтобы не повесить площадку клиента и чтобы не было одновременных запросов
@touch($this->_links_db_file, (time() - $this->_cache_lifetime + $this->_cache_reloadtime));
HostCMS, не помогло
То что вы написали сделал, пропала одна ошибка, но остались 2
ЗАМЕЧАНИЕ: Undefined index: HTTP_X_REAL_IP в файле /home/www/z59619/htdocs/****/b3f34dbeb9a18666ddc1f874bce072d5/sape.php (строка 195)
ЗАМЕЧАНИЕ: Undefined index: HTTP_X_FORWARDED_FOR в файле /home/www/z59619/htdocs/*****/b3f34dbeb9a18666ddc1f874bce072d5/sape.php (строка 199)
Сейчас ставлю себе на сайт версия системы 4.1
Хотя перед этим ставил на другой сайт все было нормально.
Может в чем то хостинг виноват, точнее связка хостинг+hostcms, потому что на других cms проблем не замечается!
Делаю сайты на HostCMS! Подробнее по почте anton.yurzanov@gmail.com
Может в чем то хостинг виноват, точнее связка хостинг+hostcms, потому что на других cms проблем не замечается!
Другие CMS вероятно не информируют об ошибках. У нас же ошибки любого уровня протоколируются и о них происходит уведомление администратора. Вы можете изменить для сайта уровень критичности с E_ALL на другой, тогда наименее критичные ошибки высылаться не будут.