Добрый день!
Взялся соеденить сайт с 1Сv8.2 и не получается. Что я делаю?
1. Создаю URL с библиотекой для обмена данных с 1С
2. Прописываю адрес в 1С для обмена данными с сайтом. всё как надо все верно вбил
3. Тыкаю кнопку в 1С "ПРоверить"
4. Прилетает что нет возможности авторизоваться на сайте.
5. Иду в библиотеку для обмена данных с 1С и пишу маленьку функцию для отслеживания логов, в которой вижу следующие:
2014-01-20 14:04:13 :: Старт :: :: 10
2014-01-20 14:04:13 :: Какие запросы к нам приходят :: array(2) {
["type"]=>
string(7) "catalog"
["mode"]=>
string(9) "checkauth"
}
array(29) {
["PATH"]=>
string(29) "/sbin:/usr/sbin:/bin:/usr/bin"
["PP_CUSTOM_PHP_INI"]=>
string(40) "/var/www/vhosts/umtssplav.ru/etc/php.ini"
["FCGI_ROLE"]=>
string(9) "RESPONDER"
["REDIRECT_PP_CUSTOM_PHP_INI"]=>
string(40) "/var/www/vhosts/umtssplav.ru/etc/php.ini"
["REDIRECT_STATUS"]=>
string(3) "200"
["HTTP_USER_AGENT"]=>
string(17) "1C+Enterprise/8.2"
["HTTP_HOST"]=>
string(12) "umtssplav.ru"
["HTTP_ACCEPT"]=>
string(3) "*/*"
["SERVER_SIGNATURE"]=>
string(57) "<address>Apache Server at umtssplav.ru Port 80</address>
"
["SERVER_SOFTWARE"]=>
string(6) "Apache"
["SERVER_NAME"]=>
string(12) "umtssplav.ru"
["SERVER_ADDR"]=>
string(11) "5.9.154.105"
["SERVER_PORT"]=>
string(2) "80"
["REMOTE_ADDR"]=>
string(14) "91.144.191.233"
["DOCUMENT_ROOT"]=>
string(37) "/var/www/vhosts/umtssplav.ru/httpdocs"
["SERVER_ADMIN"]=>
string(11) "t0xas@bk.ru"
["SCRIPT_FILENAME"]=>
string(47) "/var/www/vhosts/umtssplav.ru/httpdocs/index.php"
["REMOTE_PORT"]=>
string(5) "49803"
["REDIRECT_QUERY_STRING"]=>
string(27) "type=catalog&mode=checkauth"
["REDIRECT_URL"]=>
string(23) "/esab/internet-shop/1c/"
["GATEWAY_INTERFACE"]=>
string(7) "CGI/1.1"
["SERVER_PROTOCOL"]=>
string(8) "HTTP/1.1"
["REQUEST_METHOD"]=>
string(3) "GET"
["QUERY_STRING"]=>
string(27) "type=catalog&mode=checkauth"
["REQUEST_URI"]=>
string(51) "/esab/internet-shop/1c/?type=catalog&mode=checkauth"
["SCRIPT_NAME"]=>
string(10) "/index.php"
["HTTP_CONNECTION"]=>
string(5) "close"
["PHP_SELF"]=>
string(10) "/index.php"
["REQUEST_TIME"]=>
int(1390212253)
}
:: 18
2014-01-20 14:04:13 :: Временная директория :: /var/www/vhosts/umtssplav.ru/httpdocs/hostcmsfiles/tmp/1c_exchange_files/ :: 27
2014-01-20 14:04:13 :: Магазин для выгрузки :: Витрина [Копия от 17.01.2014 12:03:30] :: 31
2014-01-20 14:04:13 :: Размер блока :: 100000000 :: 36
2014-01-20 14:04:13 :: Решение проблемы авторизации при PHP в режиме CGI :: :: 40
2014-01-20 14:04:13 :: Зашёл :: 1 :: 66
2014-01-20 14:04:13 :: $_SERVER['PHP_AUTH_USER'] :: :: 67
при выполение кода приходим в этот сегмент и всё the end
if (!isset($_SERVER['PHP_AUTH_USER']))
{
log_event('Зашёл', '1', __LINE__);
log_event('$_SERVER[\'PHP_AUTH_USER\'] ', $_SERVER['PHP_AUTH_USER'], __LINE__);
header('WWW-Authenticate: Basic realm="HostCMS"');
header('HTTP/1.0 401 Unauthorized');
exit;
}
У меня два варианта:
1) Писать самому обработчик проверки соединение на примере исходной библиотеки
2) Либо это 1С не посылает правильный запрос на сайт.
Есть у кого-нибудь идеи?