Ошибка авторизации (401/403) при обмене 1С и сайта: подробный разбор
Самая раздражающая проблема на старте: вы настроили обмен в 1С, нажимаете кнопку "Проверить соединение", и программа выдает: Не удалось установить соединение. Ошибка сервера 401 (Unauthorized) или 403 (Forbidden). Разбираемся, кто кого не пускает.
🔍 Ошибка 401 (Unauthorized) - Неавторизован
Ваша 1С постучалась на сайт, скрипт обмена спросил "Кто там?", а 1С не смогла предоставить правильный логин-пароль.
Причина 1: Элементарная опечатка
Проверьте, правильно ли написан логин и пароль в узле обмена 1С. Пароль от пользователя сайта (администратора или интегратора). Совет: скопируйте пароль в блокнот, проверьте что нет лишних пробелов в начале и в конце, и вставьте в 1С.
- Для Битрикс: пользователь должен входить в группу администраторов или группу, которой разрешен обмен с 1С.
Причина 2: Блокировка Basic Auth на хостинге
Современные хостинги из соображений безопасности (от брутфорс атак) вырезают HTTP заголовки базовой авторизации, которые присылает 1С. Ваш PHP скрипт на сайте (например, `1c_exchange.php`) просто не получает переменные `$_SERVER['PHP_AUTH_USER']`.
Решение: Добавить специальное правило в конфигурацию веб-сервера.
В файл .htaccess (если используется Apache) добавьте строку:
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
Или (если PHP работает как CGI):
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
⚡ Ошибка 403 (Forbidden) - Доступ запрещен
Здесь ситуация иная: 1С авторизовалась, но сервер (именно сервер, а не скрипт сайта) жестко запретил ей выполнять какие-либо действия по этому адресу.
Причина 1: Защита от DDoS и Web Application Firewall (WAF)
Антивирусы на хостинге расценивают потоковые POST-запросы из 1С (особенно с длинной XML строкой) как SQL-инъекцию или атаку ботов, потому что у 1С нестандартный User-Agent (заголовок браузера).
Попросите техподдержку хостинга внести IP-адрес, с которого выходит в интернет ваша база 1С, в "Белый список" (Whitelist) их Firewall. Это уберет 99% 403-х ошибок при обмене.
Причина 2: Неверные права на файлы (CHMOD)
Скрипт 1c_exchange.php или директория, куда 1С складывает zip-архивы, имеет
права только на чтение (например, 444 или 555). Хостинг вернет 403 при попытке записи файла.
Установите права на папку обмена хотя бы в 755 или 775.
Не можете пробить защиту сервера для обмена?
Я, как DevOps инженер, помогу настроить связку 1С с Nginx/Apache на любом хостинге. Найду причину блокировок и настрою стабильный коннект.
Получить помощь техподдержки →