Как исправить ошибку при работе с ресурсом в 1С 8.3 после обновления платформы

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

Обновление платформы 1С:Предприятие 8.3 на сервере и клиентских компьютерах — стандартная процедура, с которой регулярно сталкиваются системные администраторы и специалисты 1С. Однако этот процесс нередко преподносит неприятные сюрпризы. Типичный сценарий: вы успешно установили новый релиз платформы, удалили старый, обновили клиентские приложения, но при попытке запустить базу данных система выдает критическую ошибку: "Ошибка при работе с ресурсом" или "Resource Access Error". При этом до обновления все работало в штатном режиме.

В этой статье мы подробно проанализируем ситуацию, выясним причины возникновения этой ошибки и разберем по шагам, как восстановить работоспособность системы при использовании веб-серверов IIS или Apache.

Почему возникает ошибка при работе с ресурсом?

Давайте проанализируем архитектуру взаимодействия компонентов 1С, когда база данных опубликована на веб-сервере. Клиентские приложения (тонкий клиент или веб-браузер) обращаются к серверу 1С не напрямую, а через веб-сервер (например, IIS от Microsoft или Apache). Веб-сервер принимает входящие HTTP/HTTPS-запросы и перенаправляет их специальным библиотекам расширения 1С (модулям веб-сервера), которые устанавливаются вместе с платформой.

Когда вы выполняете установку новой платформы 1С на сервере и удаляете старую версию, происходят следующие критические изменения:

  1. Файлы старой платформы удаляются с диска, включая библиотеки расширения веб-сервера (например, wsisapi.dll для IIS или wsap24.dll для Apache), на которые ссылаются настройки вашего веб-сервера.
  2. Создаются новые каталоги с исполняемыми файлами новой версии платформы 1С.
  3. Веб-сервер, ничего "не зная" об обновлении, продолжает обращаться по старым путям к удаленным файлам модулей 1С. Это неизбежно вызывает ошибку доступа к ресурсу.

Рассмотрим подробнее пошаговый алгоритм действий, который поможет быстро и безболезненно исправить эту проблему.

Шаг 1. Перепубликация информационной базы на веб-сервере

Первое и самое главное действие, которое необходимо выполнить после обновления платформы — обновить публикацию базы данных. Это позволит переписать конфигурационные файлы веб-сервера и направить запросы на актуальные библиотеки новой платформы.

Выполним процедуру обновления публикации по шагам:

  1. Запустите Конфигуратор 1С:Предприятия от имени Администратора. Это критически важно, так как для внесения изменений в конфигурационные файлы веб-сервера требуются повышенные привилегии в операционной системе.
  2. В главном меню перейдите в раздел Администрирование и выберите пункт Публикация на веб-сервере....
  3. В открывшемся окне проверьте имя публикации, выбранный веб-сервер (IIS или Apache) и путь к каталогу публикации.
  4. Не внося лишних изменений, нажмите кнопку Опубликовать. Система предложит обновить существующую публикацию — согласитесь с этим.
  5. Дождитесь сообщения об успешном завершении операции.

После этого обязательно необходимо перезапустить службу веб-сервера, чтобы изменения вступили в силу. Для веб-сервера IIS это можно сделать через командную строку, запущенную от имени администратора, выполнив команду:

iisreset /restart

Для веб-сервера Apache перезапустите соответствующую службу в панели управления службами Windows (services.msc) или выполните команду перезапуска в консоли.

Шаг 2. Настройка разрядности пула приложений в IIS

Если в качестве веб-сервера вы используете Microsoft IIS, то очень частой причиной ошибки "Ошибка при работе с ресурсом" является несоответствие разрядности установленной платформы 1С и настроек пула приложений IIS. Разберем этот момент подробнее.

При установке 64-разрядной платформы 1С:Предприятие веб-сервер должен использовать соответствующий 64-битный модуль. Если же пул приложений настроен на работу только с 32-разрядными приложениями, возникнет конфликт разрядностей.

Выполним проверку и настройку пула приложений:

  1. Откройте Диспетчер служб IIS (команда inetmgr в строке выполнения).
  2. В левом дереве подключений выберите пункт Пулы приложений (Application Pools).
  3. Найдите пул приложений, который обслуживает вашу опубликованную базу (обычно это DefaultAppPool, либо пул с именем вашей базы).
  4. Кликните по нему правой кнопкой мыши и выберите пункт Дополнительные параметры... (Advanced Settings).
  5. Найдите параметр Разрешены 32-разрядные приложения (Enable 32-Bit Applications).
  6. Задайте значение этого параметра в зависимости от установленной платформы 1С:
    • Если вы установили 64-разрядную платформу 1С, установите значение False.
    • Если вы используете 32-разрядную платформу 1С на 64-битной операционной системе, установите значение True.
  7. Нажмите кнопку "ОК" для сохранения настроек и выполните перезапуск IIS командой iisreset.

Шаг 3. Ручная проверка конфигурационных файлов (для Apache)

Если публикация базы выполнена на веб-сервере Apache, автоматическое обновление публикации из Конфигуратора иногда может не сработать из-за ограничений прав доступа к файлу конфигурации httpd.conf. В таком случае нам потребуется проверить пути вручную.

Проанализируем конфигурационный файл Apache:

  1. Перейдите в каталог установки Apache (обычно это C:\Program Files\Apache Software Foundation\Apache2.4\conf\) и откройте файл httpd.conf в текстовом редакторе от имени администратора.
  2. Найдите строки, отвечающие за подключение модуля 1С. Они выглядят примерно так:

LoadModule _1cws_module "C:/Program Files/1cv8/8.3.10.2667/bin/wsap24.dll"

  1. Обратите внимание на указанный путь. Если там все еще прописана старая версия платформы (например, 8.3.10.2667), замените её на актуальный путь к новой платформе, например:

LoadModule _1cws_module "C:/Program Files/1cv8/8.3.12.1567/bin/wsap24.dll"

  1. Сохраните изменения в файле и перезапустите службу веб-сервера Apache.

Шаг 4. Очистка кэша на стороне сервера и клиентов

Иногда после обновления платформы в операционной системе сохраняются временные файлы (кэш), которые мешают корректной работе и вызывают различные коллизии, в том числе ошибки несоответствия версий и проблемы работы с сетевыми ресурсами.

Рекомендуется выполнить комплексную очистку кэша.

Очистка клиентского кэша

Для удаления временных файлов на клиентском компьютере выполните следующие действия:

  1. Закройте все запущенные сеансы 1С:Предприятия.
  2. Перейдите в каталоги временных файлов пользователя:
    • %userprofile%\AppData\Local\1C\1cv8\
    • %userprofile%\AppData\Roaming\1C\1cv8\
  3. Удалите все папки с длинными буквенно-цифровыми названиями (идентификаторами баз), например: 1cf848bb-766b-4e12-8e7c-482f3ef84123. Сами файлы настроек (такие как список баз ibases.v8i) удалять не нужно.

Очистка серверного кэша

Если проблема сохраняется, может потребоваться очистка кэша на сервере приложений 1С:

  1. Остановите службу сервера приложений 1С:Предприятие через панель services.msc (служба обычно называется 1C:Enterprise 8.3 Server Agent).
  2. Перейдите в каталог служебных файлов сервера 1С. По умолчанию это путь: C:\Program Files\1cv8\srvinfo\ (или аналогичный каталог на другом диске, если вы меняли настройки).
  3. Найдите папку reg_1541 (номер порта может отличаться) и внутри неё очистите содержимое папки snaccfg, где хранятся временные данные сеансов и конфигурации. Внимание: не удаляйте файлы баз данных и файлы журналов регистрации, если они хранятся в этом же каталоге!
  4. Запустите службу сервера 1С заново.

Шаг 5. Проверка прав доступа к каталогу новой платформы

При установке нового релиза 1С создается новая физическая папка на диске сервера (например, C:\Program Files\1cv8\8.3.12.1567). В редких случаях права доступа для системных учетных записей веб-сервера не наследуются автоматически на эту папку.

Чтобы веб-сервер мог корректно считывать библиотеки 1С, убедитесь, что у учетной записи, от имени которой запущен веб-сервер (для IIS это обычно IUSR или IIS_IUSRS, для Apache — системная учетная запись SYSTEM или локальный пользователь), есть права на "Чтение и выполнение" (Read & Execute) для папки с новой платформой 1С, особенно для вложенного каталога bin.

Шаг 6. Перерегистрация COM-соединителя (comcntr.dll)

Если ваша база данных использует механизмы интеграции через COM-соединение с другими информационными базами, после удаления старой версии платформы может "слететь" регистрация COM-объекта в операционной системе Windows. Это также может косвенно влиять на стабильность веб-сервисов.

Для решения этой проблемы принудительно зарегистрируйте актуальную библиотеку comcntr.dll. Запустите командную строку от имени Администратора и выполните следующую команду, указав путь к вашей новой версии платформы:

regsvr32 "C:\Program Files\1cv8\8.3.12.1567\bin\comcntr.dll"

При успешном выполнении вы увидите системное сообщение о том, что регистрация библиотеки прошла успешно.

Резюме

Мы подробно разобрали причины возникновения ошибки "Ошибка при работе с ресурсом" при обновлении платформы 1С:Предприятие 8.3 на сервере и клиентах. В подавляющем большинстве случаев проблема успешно решается выполнением трех ключевых действий:

  1. Повторной публикацией базы данных из Конфигуратора новой платформы (запущенного от имени администратора).
  2. Перезапуском веб-сервера (IIS или Apache) для применения измененных параметров.
  3. Проверкой разрядности пула приложений в настройках IIS (параметр "Разрешены 32-разрядные приложения").

Следуя этой простой инструкции, вы сможете оперативно устранить сбой и вернуть пользователей к комфортной работе в информационной базе.

← На главную