Ошибка доступа к файлу 1cema xml

Публикация мобильного приложения ☑ 0

SashaNox

05.05.15

16:44

Добрый день!

Помогите пожалуйста, не могу опубликовать мобильное приложение на веб-сервере IIS 8. Платформа 1С:Предприятие 8.3 (8.3.5.1443). Делаю так: Конфигурация — Мобильное приложения — Публиковать. После чего в указанном каталоге создается файл 1cema.xml. Затем на планшете IPad Air 2 с приложения «Мобильная платформа 1С» подключаюсь по адресу публикации и выдает ошибку «Ошибка работы с интернет: доступ запрещен (403)», если через браузер заходить то «Ошибка HTTP 404.0 — Not Found». Если же опубликовать тонкий клиент, то создаются еще два файла default.vrd и web.config, через браузер теперь заходит, а через приложение говорит «неверный формат конфигурации». Как быть? Как опубликовать?

1

ВРедная

05.05.15

16:49

По какому адресу ты заходишь через браузер / что прописываешь в пути к базе на IPad’е?

2

ВРедная

05.05.15

16:57

Одного файла 1cema.xml достаточно, должно работать. Но в отличии от публикации обычных веб-сервисов, адрес ссылки должен быть примерно таким:

http:\\http://www.IP.com\webservisname

тогда как для подключения к другим опубликованным веб-сервисам из 1С таким:

http:\\http://www.IP.com\odnoimia\ws\webservisname?wsdl

вот этого окончания не должно быть в ссылке для мобильного приложения

3

SashaNox

05.05.15

16:59

http://www.IP.com/Mobile вот такой адрес использую через браузер и айпад. вебсервисов в конфигурации нет

4

SashaNox

05.05.15

17:03

права на папку wwwroot дал группам пользователи, IIS_IUSRS и IUSR

5

ВРедная

05.05.15

17:50

а localhost/mobile сработает?

6

SashaNox

05.05.15

18:51

(5) нет, Ошибка HTTP 404.0 — Not Found

7

ВРедная

05.05.15

19:21

(6) Ты никаких дополнительных действий не совершал после публикации? Настроек авторизации у веб-сервиса?

При публикации 1С была запущена от админа?

После публикации IIS перезапускал?

8

SashaNox

05.05.15

20:04

(7) да, все это делал, настроек авторизации никаких нет. Проблема решилась после открытия 80 порта, сразу не сообразил потому как публикация тонкого клиента работала, а мобильного нет(( спасибо за участие

9

SashaNox

05.05.15

20:44

(7) упс, обманул

делал так:

1. С IIS не получается

2. Установил Apache, опубликовал на нем

3. Проверил, подключения так же нет

4. Открыл порт 80

5. Все заработало

6. Опубликовал на IIS

7. Работает, обрадовался, отписался

8. Удалил apache перестало работать

9. Установил apache — заработало

10. Заново, при том, на apache базу не публиковал

10

ВРедная

05.05.15

22:42

(9) У тебя вообще IIS на каком порту?

11

ВРедная

05.05.15

22:52

Если он работает на :80 вместе с апачем

12

SashaNox

05.05.15

23:20

(10) 80 порт, апач при установке сам не запустился из-за того что порт 80 занят другим приложением, помогло добавить параметр NoRun по этой инструкции http://habrahabr.ru/post/145189/

Ошибка доступа к файлу ‘…\exec.lck’. 5(0x00000005): Отказано в доступе.

Описание ошибки:
Ошибка в конфигураторе базы 1С 8 при попытке сохранения изменений конфигурации:
Ошибка доступа к файлу ‘…\exec.lck’. 5(0x00000005): Отказано в доступе.
А так же похожая ошибка:
Ошибка при выполнении операции с информационной базой
Ошибка доступа к файлу ‘…\1Cv8.cgr.cfl’. 5(0x00000005):
Отказано в доступе.

Найденные решения:

Нажатие на изображении увеличит его
1С 8, Ошибка доступа к файлу exec.lck 5(0x00000005) отказано в доступе

Подобная ошибка «Ошибка доступа к файлу. Отказано в доступе» часто встречается при попытке запустить сеанс работы с базой данной, если база файловая, и на каталог с базой не предоставлены права пользователю рабочего места.

Например попытка запуска сеанса работы с базой 1С в режиме 1С: Предприятие.

1С 8, ошибка при выполнении операции с информационной базой, ошибка режима доступа к файлу базы данных

Будет сопровождаться ошибкой

Ошибка при выполнении операции с информационной базой
Ошибка режима доступа к файлу базы данных ‘D:\1C Arhiv\[каталог_базы]/1Cv8.1CD’
по причине:
Ошибка режима доступа к файлу базы данных ‘D:\1C Arhiv\[каталог_базы]/1Cv8.1CD’

Нажатие на изображении увеличит его
1С 8, ошибка режима доступа к файлу базы данных 1Cv8.1CD

А при попытке открыть базу 1С 8 в режиме конфигуратор будет ожидать похожая ошибка:

1С 8, как исправить, устранить, починить, ошибка при выполнении операции с информационной базой, ошибка доступа к файлу 1Cv8.cgr.cfl 5(0x00000005)

Ошибка при выполнении операции с информационной базой
Ошибка доступа к файлу ‘D:\1C Arhiv\[каталог_базы]\1Cv8.cgr.cfl’. 5(0x00000005): Отказано в доступе. 
по причине:
Ошибка доступа к файлу ‘D:\1C Arhiv\к[каталог_базы]\1Cv8.cgr.cfl’. 5(0x00000005): Отказано в доступе. 

Нажатие на изображении увеличит его
1С 8, ошибка доступа к файлу 1Cv8.cgr.cfl 5(0x00000005), отказано в доступе

Если Вы встретили все вышеперечисленные формулировки ошибок (наименования фалов могут быть разными, как можно заметить), то скорее всего проблема заключается в нехватке прав пользователя на каталог базы 1С 8.

В данном случае было удивительно, что возникает нехватка прав, хотя получилось запустить базу в режиме конфигуратора и даже внести изменения в код конфигурации. Но вот после нажатия на кнопку «Обновить конфигурацию базы данных (F7)» и в процессе обновления возникала ошибка: «Ошибка доступа к файлу ‘…\exec.lck’. 5(0x00000005): Отказано в доступе.»

Было сделано обращение к системному администратору сервера, т.к. он настраивал исходно права и обозначено требование проверить и права и предоставить их для каталога базы 1С, в которой ошибка возникала. Права были предоставлены и ошибка больше не возникала.

Если у Вас достаточно прав на рабочем месте или на сервере, то можно попробовать проверить и изменить настройку доступа к каталогу базы самостоятельно. Если прав нет, то обращаемся к системному администратору с указанием на причину того, что на каталог файловой базы 1С 8 не хватает прав у пользователя рабочего места.

Итак, правой кнопкой на каталоге с базой открываем контекстное меню и переходим в «Свойства»

1С 8, как исправить, устранить, ошибка доступа к файлу, отказано в доступе

В открывшемся окне переходим на вкладку «Безопасность». Проверяем для Вашего пользователя из списка «Группы и пользователи» наличие флажков в колонке «Запретить» списка «Разрешения для группы …». Если флажки есть, то их необходимо отключить. Для этого нажимаем кнопку «Изменить».

1С 8, как убрать, избавиться, ошибка доступа к файлу 1Cv8.cgr.cfl 5(0x00000005), отказано в доступе

В открывшемся окне «Разрешения для группы» в списке «Группы и пользователи» выделяя строку с пользователем или группой и в таблице «Разрешения для группы …» ниже в колонке «Запретить» убираем все флажки. Нажимаем кнопку «ОК» в этой форме. И кнопкой «ОК» закрываем форму «Свойства». Пробуем запустить базу. Если нет других «хитрых» настроек прав доступа пользователей на сервере, то это должно помочь и база 1С 8 должна запуститься.

как проверить, настроить права пользователя на папку, каталог базы 1С 8

В остальных случаях, если указанное общее действие не помогло, то следует обратиться к системному администратору, объяснив, что … дословно «не хватает прав у пользователя(ей) на папку(каталог) базы 1С».

Оцените, помогло ли Вам предоставленное описание решения ошибки?




© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.

17-03-2022

Журавлев А.С.
(Сайт azhur-c.ru)

Добрый день! Помогите пожалуйста, не могу опубликовать мобильное приложение на веб-сервере IIS 8. Платформа 1С:Предприятие 8.3 (8.3.5.1443). Делаю так: Конфигурация — Мобильное приложения — Публиковать. После чего в указанном каталоге создается файл 1cema.xml. Затем на планшете IPad Air 2 с приложения «Мобильная платформа 1С» подключаюсь по адресу публикации и выдает ошибку «Ошибка работы с интернет: доступ запрещен «, если через браузер заходить то «Ошибка HTTP 404.0 — Not Found». Если же опубликовать тонкий клиент, то создаются еще два файла default.vrd и web.config, через браузер теперь заходит, а через приложение говорит «неверный формат конфигурации». Как быть? Как опубликовать?

По какому адресу ты заходишь через браузер / что прописываешь в пути к базе на IPad’е?

Одного файла 1cema.xml достаточно, должно работать. Но в отличии от публикации обычных веб-сервисов, адрес ссылки должен быть примерно таким: http:\ тогда как для подключения к другим опубликованным веб-сервисам из 1С таким: http:\ вот этого окончания не должно быть в ссылке для мобильного приложения

вот такой адрес использую через браузер и айпад. вебсервисов в конфигурации нет

права на папку wwwroot дал группам пользователи, IIS_IUSRS и IUSR

а localhost/mobile сработает?

нет, Ошибка HTTP 404.0 — Not Found

Ты никаких дополнительных действий не совершал после публикации? Настроек авторизации у веб-сервиса? При публикации 1С была запущена от админа? После публикации IIS перезапускал?

да, все это делал, настроек авторизации никаких нет. Проблема решилась после открытия 80 порта, сразу не сообразил потому как публикация тонкого клиента работала, а мобильного нет(( спасибо за участие

делал так: 1. С IIS не получается 2. Установил Apache, опубликовал на нем 3. Проверил, подключения так же нет 4. Открыл порт 80 5. Все заработало 6. Опубликовал на IIS 7. Работает, обрадовался, отписался 8. Удалил apache перестало работать 9. Установил apache — заработало 10. Заново, при том, на apache базу не публиковал

У тебя вообще IIS на каком порту?

Если он работает на :80 вместе с апачем

80 порт, апач при установке сам не запустился из-за того что порт 80 занят другим приложением, помогло добавить параметр NoRun по этой инструкции

Тэги:

Комментарии доступны только авторизированным пользователям

В этой статье мы расскажем об ошибке доступа к файлу 1с. Как решить возникшую проблему, что это за баг и еще немного об этом.

Ошибка доступа к файлу 1C 8.3

«1С: Предприятие» — система программ для автоматизации, улучшения и упрощения деятельности различных сфер компании, начиная от бухгалтерии и заканчивая учетом. 1С: возможности при правильной настройке безграничны . Для предпринимателя — нужно найти хороших программистов.

Нет ни одной программы в современном мире, как бы хороша она не была без ошибок и проблем. Такое случается и с нашим приложением. В ряде случаев виноват в этом криворукий программист. Многие проблемы вы не сможете решить без его участия, но некоторые, вам подсилу и самому.

Ошибка доступа к файлу 1C решение

Причины возникновения

Случается, что люди, которые используют данную прогу сталкиваются с проблемой при запуске программы.

Способы решения

По наименованию явившегося бага поймем что происходит с системой — нет прав для доступа к файлу. Такое случается если юзер создает копию базы и подключает ее. Также ошибка бывает в результате попытки открыть файл по сетевому доступу.

Первостепенное что мы делаем в таком случае — проверяем доступ к файлу. Правая кнопка мыши по файлу -> проверяем стоит ли галочка на «Общий доступ».

Ошибка доступа к файлу 1C решение

Ошибка доступа к файлу 1C решение

Взгляните на права пользователя под которым вы зашли в систему виндоус. У вас должны быть права и на чтение файлов и на запись.

Ошибка доступа к файлу 1C решение

Когда данные к которым нужно получить доступ (база) находится на удаленном (локальном) персональном компьютере — смотрим закладку «Безопасность». В безопасности вы должны убедиться что у пользователя нет запрета на запись.

Ошибка доступа к файлу 1C решение

Предупреждения о проблемах вылазят когда возмущается брандмауэр. Это касается сетевых объектов. Антивирусные программы препятствуют нормальной работе.

Открываем брандмауэр и антивирус и ищем в списке блокируемых программ 1С. Удаляем из списка.

Ошибка доступа к файлу 1C решение

Почистите кеш, ошибки также возникают из-за кеша.

Большой шанс появления ошибки, когда два синонимичных приложения запускаются вместе. К примеру, ЗУП и Бухгалтерия. Если запустить по очереди, проблема исчезнет

Дополнительный способ

Ничего не помогло — воспользуйтесь следующими методами:

Путь к имени файла должен быть допустимым в каталоге отчетов: щелкните вкладку «Вывод». Перейдите на вкладку «Параметры вывода». В поле Имя файла убедитесь, что путь действителен.

Сколько дискового пространства доступно для файла: Откройте Windows Explorer. Выберите Локальный диск (буква диска:), на котором хранится отчет. Щелкните правой кнопкой мыши на локальном диске (буква диска:) и нажмите Свойства. Откроется окно свойств. Проверьте доступное свободное пространство на этом локальном диске.

Убедитесь, что у пользователя есть разрешения на доступ к папке IO_Data: Откройте проводник Windows. Щелкните правой кнопкой мыши основную папку выберите «Свойства».

Перейдите на вкладку «Безопасность». Убедитесь, что у пользователя есть полные права на эту папку и все подпапки. Если вы не можете проверить права доступа, обратитесь к администратору.

Постараюсь максимально описать суть проблемы, обстоятельства и предпринятые шаги, все описанные решения на форумах не помогли:

Имеется база 1с с мобильным приложением, необходимо её опубликовать для подключения в мобильной платформе на телефоне. Делаю публикацию через Конфигурация -> Мобильное приложение -> Опубликовать. Публикую через имеющийся IIS, на котором присутствуют другие опубликованные базы (с помощью публикации на веб-сервере через пункт Администрирование), которые корректно функционируют. После публикации мобильного приложения создается директория с файлом 1cema.xml, что судя по прочитанным статьям вполне корректно, но при попытке открыть адрес публикации в браузере выпадает ошибка 404, а не содержимое xml файла. В мобильной платформе та же ошибка 404 при попытке подключиться к публикации. В качестве документа по умолчанию для приложения в IIS указан 1cema.xml, при добавлении web.config в директорию адрес в браузере открывается, но подключается к базе как веб-клиент. На все директории права у пользователя iis есть. Выглядит так, будто нужно что-то донастроить в IIS, но никак не могу понять что именно

Добрый день! Помогите пожалуйста, не могу опубликовать мобильное приложение на веб-сервере IIS 8. Платформа 1С:Предприятие 8.3 (8.3.5.1443). Делаю так: Конфигурация — Мобильное приложения — Публиковать. После чего в указанном каталоге создается файл 1cema.xml. Затем на планшете IPad Air 2 с приложения «Мобильная платформа 1С» подключаюсь по адресу публикации и выдает ошибку «Ошибка работы с интернет: доступ запрещен «, если через браузер заходить то «Ошибка HTTP 404.0 — Not Found». Если же опубликовать тонкий клиент, то создаются еще два файла default.vrd и web.config, через браузер теперь заходит, а через приложение говорит «неверный формат конфигурации». Как быть? Как опубликовать?

По какому адресу ты заходишь через браузер / что прописываешь в пути к базе на IPad’е?

Одного файла 1cema.xml достаточно, должно работать. Но в отличии от публикации обычных веб-сервисов, адрес ссылки должен быть примерно таким: http: тогда как для подключения к другим опубликованным веб-сервисам из 1С таким: http: вот этого окончания не должно быть в ссылке для мобильного приложения

вот такой адрес использую через браузер и айпад. вебсервисов в конфигурации нет

права на папку wwwroot дал группам пользователи, IIS_IUSRS и IUSR

а localhost/mobile сработает?

нет, Ошибка HTTP 404.0 — Not Found

Ты никаких дополнительных действий не совершал после публикации? Настроек авторизации у веб-сервиса? При публикации 1С была запущена от админа? После публикации IIS перезапускал?

да, все это делал, настроек авторизации никаких нет. Проблема решилась после открытия 80 порта, сразу не сообразил потому как публикация тонкого клиента работала, а мобильного нет(( спасибо за участие

делал так: 1. С IIS не получается 2. Установил Apache, опубликовал на нем 3. Проверил, подключения так же нет 4. Открыл порт 80 5. Все заработало 6. Опубликовал на IIS 7. Работает, обрадовался, отписался 8. Удалил apache перестало работать 9. Установил apache — заработало 10. Заново, при том, на apache базу не публиковал

У тебя вообще IIS на каком порту?

Если он работает на :80 вместе с апачем

80 порт, апач при установке сам не запустился из-за того что порт 80 занят другим приложением, помогло добавить параметр NoRun по этой инструкции

Тэги:

Комментарии доступны только авторизированным пользователям

Logo_1c_8В данной статье я подробно опишу процесс организации веб- доступа к базам данных «1С:Предприятие» 8.3 на веб-сервере IIS (Internet Information Server), входящего в поставку Microsoft Windows Server. Для более старых версий «1С:Предприятие» (8.1 и 8.2) алгоритм публикации баз данных в целом аналогичен. Будет рассмотрен алгоритм настройки IIS для работы «1С:Предприятие», а также описан процесс публикации баз данных на веб-сервере как для 32-разрядного, так и для 64-разрядного модуля расширения веб-сервера.

0. Оглавление

  1. Что понадобится
  2. Установка веб-сервера IIS
  3. Установка компонент «1С:Предприятие»
  4. Настройка операционной системы
  5. Публикация базы данных на веб-сервере
  6. Настройка IIS для использования 32-разрядного модуля расширения веб-сервера
  7. Настройка IIS для использования 64-разрядного модуля расширения веб-сервера
  8. Подключение к опубликованной информационной базе через веб-браузер
  9. Подключение к опубликованной информационной базе через клиент «1С:Предприятия»
  10. Конфигурационные файлы виртуального каталога
    1. Файл default.vrd
    2. Файл web.config

1. Что понадобится

  1. Компьютер отвечающий минимальным системным требованиям для работы веб-сервера под управлением одной из операционных систем:
    • Microsoft Windows Server 2012 (R2)
    • Microsoft Windows Server 2008 (R2)
  2. Права локального администратора на данном компьютере.
  3. Дистрибутив для установки компонент «1С:Предприятие». Для настройки 64-разрядного модуля расширения веб-сервера, дистрибутив для установки 64-разрядного сервера «1С:Предприятие». В данном примере используется версия 8.3.4.389. Для более старых версий «1С:Предприятие» (8.1 и 8.2) алгоритм публикации баз данных в целом аналогичен.

2. Установка веб-сервера IIS

Устанавливаем веб-сервер Internet Information Server, который по умолчанию входит в поставку Microsoft Windows Server. При установке обязательно выбираем компоненты:

  • Общие функции HTTP (Common HTTP Features)
    • Статическое содержимое (Static Content)
    • Документ по умолчанию (Default Document)
    • Обзор каталогов (Directory Browsing)
    • Ошибки HTTP (HTTP Errors)
  • Разработка приложений (Application Development)
    • ASP
    • ASP.NET 3.5
    • Расширяемость .NET 3.5 (.NET Extensibility 3.5)
    • Расширения ISAPI (ISAPI Extensions)
    • Фильтры ISAPI (ISAPI Filters)
  • Исправление и диагностика (Health and Diagnostics)
    • Ведение журнала HTTP (HTTP Logging)
    • Монитор запросов (Request Monitor)
  • Средства управления (Management Tools)
    • Консоль управления IIS (IIS Management Console)

Подробно про процесс развертывания веб-сервера IIS я писал:

  • В Microsoft Windows Server 2012 (R2) — здесь. IIS версии 8, после установки должны увидеть страницу Default Web Site вида:

Ustanovka_IIS_8_Winsdows_Server_2012_13

  • В Microsoft Windows Server 2008 (R2) — здесь. IIS версии 7, после установки должны увидеть страницу Default Web Site вида:

605

3. Установка компонент «1С:Предприятие»

На этот же сервер, где развернут веб-сервер IIS, устанавливаем «1С:Предприятие» (32-разрядные компоненты) обязательно выбрав при установке компоненты:

  • 1С:Предприятие
  • Модули расширения веб-сервера

publikaciya_bd_na_web_server_IIS_23

Если планируется настроить 64-разрядный модуль расширения веб-сервера, то необходимо дополнительно запустить программу установки 64-разрядного сервера из соответствующей поставки «1С:Предприятие» и установить компоненту:

  • Модуль расширения веб-сервера

publikaciya_bd_na_web_server_IIS_31

4. Настройка операционной системы

Теперь необходимо установить необходимые права на ключевые папки, используемые при работе веб-доступа к базам данных «1С:Предприятие». Для каталога хранения файлов веб-сайтов, опубликованных на веб-сервере (по умолчанию C:inetpubwwwroot ) необходимо дать полные права группе «Пользователи» (Users). В принципе, этот шаг можно пропустить, но тогда для публикации или изменения публикации базы данных надо будет запускать «1С:Предприятие» от имени администратора. Для настройки безопасности данного каталога, кликаем по нему правой кнопкой мыши и в контекстном меню выбираем «Свойства» (Properties).

publikaciya_bd_na_web_server_IIS_01

В открывшемся окне свойств, переходим на вкладку «Безопасность» (Security) и нажимаем кнопку «Изменить» (Edit…), для изменения действующих разрешений. Появится окно разрешений для данного каталога. В списке Групп или пользователей (Groups or user names) выделим группу «Пользователи» (Users) и в списке разрешений для выбранной группы установим флаг «Польный доступ» (Full control). Затем нажмем «Применить» (Apply) для записи изменений и закроем все окна при помощи кнопки «ОК».

publikaciya_bd_na_web_server_IIS_02

Далее необходимо дать полные права на каталог с установленными файлами «1С:Предприятие» (по умолчанию C:Program Files (x86)1cv8 для 32-разрядного модуля расширения и C:Program Files1cv8 для 64-разрядного) группе IIS_IUSRS. Для этого выполняем аналогичные описанным выше действия, с той лишь разницей, что для того чтобы необходимая группа появилась в списке «Группы или пользователи» (Groups or user names) необходимо нажать расположенную под списком кнопку «Добавить» (Add..), а в окне выбора групп или пользователей нажать «Дополнительно» (Advanced…).

publikaciya_bd_na_web_server_IIS_03

Затем нажимаем расположенную справа кнопку «Поиск» (Find Now), после чего выбираем необходимую группу IIS_IUSRS в таблице результатов поиска и нажимаем «ОК».

publikaciya_bd_na_web_server_IIS_04

Группа IIS_IUSRS появится в списке групп или пользователей. Даем ей полные права на на выбранную директорию и нажимаем  «Применить» (Apply) для сохранения изменений.

publikaciya_bd_na_web_server_IIS_05

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

publikaciya_bd_na_web_server_IIS_06

5. Публикация базы данных на веб-сервере

Переходим к непосредственной публикации базы данных на веб-сервере. Для этого запускаем «1С:Предприятие» в режиме Конфигуратор для той базы, которую требуется опубликовать.  Затем в меню выбираем «Администрирование» — «Публикация на веб-сервере…»

publikaciya_bd_na_web_server_IIS_07

Откроется окно настройки свойств публикации на веб-сервере. Основные поля необходимые для публикации уже заполнены по умолчанию:

  • Имя виртуального каталога — имя по которому будет происходить обращение к база данных на веб-сервере. Может состоять только из символов латинского алфавита.
  • Веб сервер — выбирается из списка найденных на текущем компьютере веб-серверов. В нашем случае это Internet Information Services.
  • Каталог — физическое расположение каталога, в котором будут располагаться файлы виртуального приложения.
  • Соответствующими флагами можно указать типы клиентов для публикации, а также указать возможность публикации Web-сервисов. В расположенной ниже таблице можно отредактировать список Web-сервисов которые будут опубликованы, а также в столбце «Адрес» изменить синоним, по которому будет происходить обращение к данному Web-сервису.
  • Также для веб-сервера IIS есть возможность указать необходимость выполнения аутентификации на веб-сервере средствами ОС, установив соответствующий флаг.

Выбрав необходимые настройки публикации нажимаем «Опубликовать».

publikaciya_bd_na_web_server_IIS_08

Если публикация прошла без ошибок, увидим соответствующее сообщение.

Публикация на веб-сервере IIS всегда выполняется для веб-сайта по умолчанию и для пула приложения по умолчанию. Стоит иметь ввиду, что при выполнении публикации из конфигуратора будет зарегистрирован 32-разрядный модуль расширения веб-сервера, а используемый по умолчанию пул приложений — DefaultAppPool — без настройки работает только с 64-разрядными приложениями. Соответственно, дальнейшие действия зависят от разрядности модуля расширения веб-сервера, который планируется использовать. Для 32-разрядного модуля расширения веб-сервера, необходимо разрешить пулу приложений использовать 32-разрядные приложения, либо же зарегистрировать 64-разрядный модуль расширения веб-сервера. Об этом пойдет речь ниже

6. Настройка IIS для использования 32-разрядного модуля расширения веб-сервера

Запустим Диспетчер служб IIS (Internet Information Services (IIS) Manager). Сделать это можно из Диспетчера серверов (Server Manager) выбрав в меню пункт «Средства» (Tools) — «Диспетчер служб IIS» (Internet Information Services (IIS) Manager).

publikaciya_bd_na_web_server_IIS_10

Здесь, развернув дерево в окне подключений, увидим, что для веб-сайта по умолчанию — Default Web Site — появился преобразованный в приложение виртуальный каталог с именем, которое мы задавали при публикации базы данных. Для завершения публикации осталось только разрешить 32-разрядные приложения для пула приложений по умолчанию. Для этого перейдем в дереве подключений на вкладку «Пулы приложений» (Application Pools).

publikaciya_bd_na_web_server_IIS_11

В списке пулов приложений найдем пул с именем DefaultAppPool. Кликнем по нему правой кнопкой мыши и в контекстном меню выберем пункт «Дополнительные параметры» (Advanced Settings).

publikaciya_bd_na_web_server_IIS_12

В открывшемся окне параметров пула приложения, в группе «Общие» (General) найдем пункт «Разрешены 32-разрядные приложения» (Enable 32-Bit Applications) и установим значение параметра равным True. Затем сохраним изменения нажав «ОК».

publikaciya_bd_na_web_server_IIS_13

7. Настройка IIS для использования 64-разрядного модуля расширения веб-сервера

Зарегистрировать 64-разрядный модуль расширения веб-сервера можно с помощью утилиты webinst.exe соответствующей версии, расположенной в каталоге bin, каталога с установленной программой «1С:Предприятие», либо воспользоваться приведенным ниже способом.

Запустим Диспетчер служб IIS (Internet Information Services (IIS) Manager). Сделать это можно из Диспетчера серверов (Server Manager) выбрав в меню пункт «Средства» (Tools) — «Диспетчер служб IIS» (Internet Information Services (IIS) Manager).

publikaciya_bd_na_web_server_IIS_10

Здесь, развернув дерево в окне подключений, увидим, что для веб-сайта по умолчанию — Default Web Site — появился преобразованный в приложение виртуальный каталог с именем, которым мы задавали при публикации базы данных. Для завершения публикации осталось только указать данному приложению использовать 64-разрядный обработчик запросов. Для этого откроем страницу настройки сопоставления обработчиков для данного виртуально каталога, выбрав пункт «Сопоставление обработчиков» (Handler Mappings) на начальной странице приложения.

publikaciya_bd_na_web_server_IIS_19

В таблице сопоставлений обработчиков найдем обработчик «1С Web-service Extension». Откроем данный обработчик, кликнув 2 раза по соответствующей строке в таблице.

publikaciya_bd_na_web_server_IIS_32

Отредактируем обработчик, заменив путь к исполняемой dll 32-разрядного модуля расширения веб-сервера, который выбран в данный момент, на путь к 64-разрядной версии библиотеки. В данном примере меняем путь c «C:Program Files (x86)1cv88.3.4.389binwsisapi.dll» на «C:Program Files1cv88.3.4.389binwsisapi.dll» воспользовавшись кнопкой выбора. Изменив путь нажимаем «ОК» для сохранения изменений.

publikaciya_bd_na_web_server_IIS_33

8. Подключение к опубликованной информационной базе через веб-браузер

Ну вот вроде и все. Для подключений к только что опубликованной базе данных, запускаем Internet Explorer, и в строке адреса вводим путь вида http://localhost/<Имя публикации информационной базы>. В данном примере это http://localhost/DemoAccounting/.

publikaciya_bd_na_web_server_IIS_14

К данной информационной базе также можно подключиться и с любого компьютера в сети, обратившись к веб-серверу по его внутреннему (или если прокинут порт 80, по внешнему) IP-адресу.

В этом случае, для корректной работы «1С:Предприятие», имя домена, на который идет обращение (или IP-адрес) должен быть добавлен в надежные узлы Internet Explorer, а также для него должны быть разрешены всплывающие окна. Подробнее про настройку Internet Explorer для работы веб-клиента «1С:Предприятие» читайте здесь.

dobavlenie-veb-sajta-v-spisok-nadezhnyx-uzlov-ie_09

9. Подключение к опубликованной информационной базе через клиент «1С:Предприятия»

К опубликованной на веб-сервере информационной базе можно подключиться и с помощью тонкого клиента «1С:Предприятия». Для подключения откроем окно запуска «1С:Предприятие» и нажмем кнопку «Добавить» для добавления информационной базы.

publikaciya_bd_na_web_server_IIS_24

В окне добавления информационной базы/группы установим переключатель в «Добавление в список существующей информационной базы» и нажмем «Далее».

publikaciya_bd_na_web_server_IIS_25

Введем имя базы данных, как она будет отображаться в списке информационных баз (должно быть уникальным для данного списка), тип расположения выберем «На веб-сервере» и нажмем «Далее».

publikaciya_bd_na_web_server_IIS_26

Вводим строку адреса для подключения к информационной базе (без префикса /ru_RU/). Также здесь можно указать параметры прокси-сервера (если есть) и способ аутентификации на веб-сервере. Указав необходимые настройки снова жмем «Далее».

publikaciya_bd_na_web_server_IIS_27

Указываем параметры запуска для информационной базы и нажимаем «Готово» для завершения работы мастера.

publikaciya_bd_na_web_server_IIS_28

После чего данная информационная база появится в списке баз окна запуска «1С:Предприятие».  Обратим внимание что режим запуска Конфигуратор недоступен для данного типа подключения. Нажимаем «1С:Предприятие» для подключения к информационной базе.

publikaciya_bd_na_web_server_IIS_30

publikaciya_bd_na_web_server_IIS_29

10. Конфигурационные файлы виртуального каталога

Рассмотрим подробнее структуру файлов, которые были созданы в процессе публикации. Если веб-доступ к опубликованной информационной базе по каким-то причинам не заработал, конфигурационные файлы можно отредактировать вручную, для достижения желаемого результата (конфигурационные файлы из данной статьи для 64-разрядного модуля расширения веб-сервера можно скачать здесь).

Перейдем в каталог, который мы указывали во время публикации базы данных. В нем увидим два файла:

  • default.vrd
  • web.config

publikaciya_bd_na_web_server_IIS_15

Оба файла доступны для просмотра и редактирования с помощью любого текстового редактора, например программы «Блокнот» (Notepad). Рассмотрим структуру этих файлов подробнее.

10.1. Файл default.vrd

В файле default.vrd описываются опубликованные Web-сервисы (элемент <ws>), а также указывается имя виртуального приложения (атрибут base) и строка подключения к информационной базе «1С:Предприятие» (атрибут ib). В данном примере для файловой информационной базы, строка подключения будет следующей:

ib="File=&quot;C:1C_BASEDemoAccounting&quot;;"

Как видно из примера, если в строке подключения встречаются символы, недопустимые с точки зрения стандарта XML (http://www.w3.org/TR/xml11/), они должны быть заменены соответствующим образом.

publikaciya_bd_na_web_server_IIS_16

В строке подключения можно указать логин и пароль пользователя. В этом случае, подключение к информационной базе будет выполняться от имени указанного пользователя. Например, для подключения от имени пользователя Продавец, строка подключения будет следующей:

ib="File=&quot;C:1C_BASEDemoAccounting&quot;;Usr=Продавец;Pwd=123;"

Для серверной информационной базы строка подключения будет иметь вид:

ib="Srvr=&quot;WIN2012&quote;;Ref=&quote;Accounting&quote;;"

Где WIN2012 — имя кластера серверов «1С:Предприятие», а Accounting — имя базы данных в кластере.

publikaciya_bd_na_web_server_IIS_17

Подробнее про структуру данного файла можно почитать в книге «Руководство администратора» 2-е издание , Приложение 2, глава 3.12.

10.2. Файл web.config

Файл web.config — это файл, определяющий параметры для ASP.NET web-приложения. В каждом web-приложении должен быть файл web.config, находящийся в его корневом каталоге. Наш виртуальный каталог не является исключением. В текущем файле содержатся данные об обработчике «1С Web-service Extension», обрабатывающем запросы к данному приложению. Обработчик настроен таким образом, что все запросы передаются библиотеке wsisapi.dll, расположенной в каталоге bin, каталога с файлами «1С:Предприятие». В случае использования серверных информационных баз, версия библиотеки должна соответствовать версии кластера серверов «1С:Предприятия».

publikaciya_bd_na_web_server_IIS_18

Данный обработчик можно найти (или добавить, если его нет) в Диспетчере служб IIS. Для этого необходимо выделить вкладку с текущим приложением и в окне свойств выбрать пункт «Сопоставления обработчиков» (Handler Mappings).

publikaciya_bd_na_web_server_IIS_19

В таблице сопоставлений обработчиков увидим наш обработчик «1С Web-service Extension». Если такого обработчика в списке нет, его следует добавить выбрав в окне «Действия» (Actions) пункт «Добавление сопоставления сценария с подстановочными знаками» (Add Wildcard Script Map…).

publikaciya_bd_na_web_server_IIS_20

При добавлении вводим имя обработчика и указываем путь к файлу wsisapi.dll. Данные параметры можно изменить и для действующего обработчика выбрав пункт «Изменить…» (Edit…) в окне списка действий.

publikaciya_bd_na_web_server_IIS_21

Необходимо также убедиться, что для обработчика стоит флаг «Выполнение» (Execute) в окне изменений разрешений функции. Вызвать данное окно можно выбрав пункт «Изменение разрешений функции…» (Edit Feature Permissions…) в окне «Действия» (Actions).

publikaciya_bd_na_web_server_IIS_22

Мобильное приложение на стороне 1С, представлено HTTP-сервисом «bit_ApprovalServiceNew» и только им. Все остальные флаги настроек публикаций 1С, для корректной работы и подключения мобильного приложения — не требуются.

Администрирование работы HTTP-сервиса, на стороне веб-сервера, аналогично управление публикацией обычного сайта.

Общая инструкции по настройке публикаций есть на сайте ИТС, и для HTTP-сервисов в частности. Доменная авторизация мобильным приложением не поддерживается, поэтому в настройках публикации веб-сервера необходимо использовать «Анонимную проверку подлинности».

Перед началом использования мобильного приложения необходимо заполнить в БИТ.ФИНАНС регистр сведений «Объекты мобильного визирования» теми объектами, которые планируются в нем визировать.

После публикации HTTP-сервиса «bit_ApprovalServiceNew», можно сразу начать работу через мобильное приложение, по протоколу HTTP. При этом, данные обмена, логины и пароли, не будут защищены шифрованием.

На веб-сервере можно произвести настройку TLS/SSL-сертификатов или продолжить работу по незащищенному каналу. В случае настройки TLS/SSL-сертификатов, работа будет происходить по расширенному протоколу – HTTPS с шифрованием данных, без настройки TLS/SSL-сертификатов по обычному протоколу HTTP. Подробнее, про сертификаты можно прочитать здесь.

В мобильном приложении, за выбор протокола подключения к 1С (HTTP/HTTPS), отвечает флажок «HTTPS», он доступен отдельно для каждой настройки подключения.

Нельзя использовать обмен по HTTPS, без предварительной настройки сертификатов TLS/SSL на веб-сервере, в таком случае при попытке подключения будет происходить ошибка.

Создайте письмо за 15 минут. Отправляйте до 1500 писем в месяц бесплатно.

Ошибка 404, либо Error 404 Not Found появляется, если браузеру не удалось обнаружить на сервере указанный URL.

Сообщение об ошибке 404

Error 404 Not Found отображается по-разному: «HTTP 404 не найден», «Ошибка 404 Not Found», «404 Страница не найдена». Смысл надписи всегда остаётся тем же: страница отсутствует либо просто не работает. Not Found в переводе означает «не найдено».

Ошибка 404 — классический код ответа по протоколу HTTP. Он свидетельствует, что связь с сервером установлена, но информации по заданному запросу нет.

Однако если просто ввести в поисковую строку произвольный набор символов, то браузер не покажет ошибку 404 Not Found — появится сообщение, что установить соединение с конкретным сервером невозможно.

Разберёмся в техническом формировании ответа Error 404 Not Found.

Техническая сторона вопроса. При связи по HTTP браузер запрашивает указанный URL и ждёт цифрового ответа. То есть любой запрос пользователя направляется на сервер размещения искомого сайта. Когда браузеру удаётся связаться с сервером, он получает кодированный ответ. Если запрос корректный и страница найдена, отправляется ответ с кодом 200 OK, что соответствует благополучной загрузке. При отсутствии страницы отправляется ответ об ошибке.

Что значит код «404». В ответе 404 первая четвёрка указывает на то, что запрос был чрезмерно длительным или в самом адресе была ошибка. Ноль предполагает синтаксическую неточность. Завершающая цифра кода отображает конкретную причину ошибки — «4» означает отсутствие данной ссылки.

Какие ещё ошибки бывают. Ошибку 404 не нужно путать с другими ответами, которые указывают на невозможность связи с сервером. Например, ошибка 403 сообщает, что доступ к URL ограничен, а ответ «Сервер не найден» свидетельствует, что браузер не смог обнаружить место размещения сайта.

Google на 404 странице сообщает о возможных причинах ошибки

Причины ошибки

Причины, по которым HTTP возвращает ответ 404 Not Found:

В большинстве ситуаций ошибка 404 отображается, когда не удаётся обнаружить нужную страницу на доступном сервере.

Причины отсутствия страницы на сайте бывают разными

Возможные последствия для сайта

Нужно ли считать 404 ошибку опасной для сайтов? Кажется, что нет ничего плохого в том, что пользователь не смог открыть одну веб-страницу. Однако если такая ситуация будет повторяться регулярно, это чревато оттоком аудитории. Одни пользователи решат, что сайт вовсе не существует. Другие подумают, что лучше не заходить на сайт, который работает с ошибками. Третьи будут игнорировать ресурс, на котором не смогли получить обещанную информацию.

Поисковые системы относятся к Not Found более лояльно. Например, Google отмечает, что 404 страницы не влияют на рейтинг. Но если при индексации роботы будут находить все больше ошибочных страниц, вряд ли это приведёт к более высокому ранжированию.

Если вы хотите улучшить взаимодействие с посетителями, важно найти и исправить все ошибки 404 на сайте.

Как выявить ошибку

На небольшом ресурсе легко проверить работоспособность ссылок вручную. Но если на сайте сотни и тысячи страниц, без дополнительного софта не обойтись. Есть немало сервисов и программ, позволяющих находить битые ссылки. Рассмотрим некоторые из них.

Search Console Google

Консоль поиска Google позволяет находить страницы с ошибкой 404 за несколько кликов:

Чтобы получить список страниц с ошибками, подтвердите права на ресурс — добавьте проверочную запись TXT в записи DNS регистратора домена. Такая запись не повлияет на работу сайта. Подробнее о процедуре подтверждения, читайте в справке Google.

Для использования Search Console Google нужно подтвердить свои права на сайт

Яндекс Вебмастер

Сервис для вебмастеров от Яндекса поможет быстро найти все ошибки 404:

Чтобы использовать Яндекс. Вебмастер, также нужно подтвердить право владения сайтом — добавить метатег в HTML-код главной страницы.

Для входа в Вебмастер авторизуйтесь в Яндексе

Screaming Frog

Для начала загрузите и установите программу на компьютер. После запуска добавьте URL проверяемого сайта и начните поиск проблем. Неработающие ссылки можно искать даже в бесплатной версии.

Инструмент SEO-паук в Screaming Frog помогает найти технические неисправности сайта

SiteAnalyzer

Эта бесплатная десктопная программа позволяет обнаружить технические погрешности на сайте. SiteAnalyzer быстро отыщет нерабочие и несуществующие ссылки.

SiteAnalyzer бесплатно найдёт неработающие URL

Как исправить ошибку Not Found

Выбор конкретного решения зависит от причины ошибки:

Удалять и менять ссылки вручную удобно только на небольших сайтах. Исправление ошибок на крупных порталах лучше автоматизировать. Например, с помощью специальных плагинов для внутренней перелинковки (Terms Description, Dagon Design Sitemap Generator) и для автоматического формирования адресов страниц (Cyr-To-Lat).

Чтобы ошибки 404 появлялись как можно реже, достаточно соблюдать простые рекомендации:

Мы разобрались, как найти и исправить ошибки Not Found внутри сайта. Но неработающая ссылка может быть расположена и на стороннем ресурсе. Допустим, когда-то на другом сайте разместили рекламную публикацию со ссылкой на определённую страницу. Спустя какое-то время страницу удалили. В этом случае появится ошибка 404. Устранить её можно, связавшись с администрацией ссылающегося сайта. Если же удалить/исправить ссылку нельзя, постарайтесь использовать ошибку с выгодой.

Как сделать страницу 404 полезной

Грамотно оформленная страница с ошибкой Error 404 Not Found — действенный инструмент конвертации посетителей. Ограничений по использованию страницы с ошибкой 404 нет. При этом практически все CMS позволяют настраивать дизайн этой страницы.

Что публиковать на странице 404:

При оформлении страницы-ошибки желательно опираться на рекомендации поисковиков:

Главное — по возможности отказаться от стандартной страницы 404. Подумайте, как привлечь внимание пользователя. Расскажите ему об отсутствии искомой страницы и предложите взамен что-то полезное или интересное.

Примеры оформления страниц 404

Designzillas

Мультяшная страница креативной студии привлекает внимание и её хочется досмотреть до конца. Если прокрутить страницу, можно увидеть, как из яйца вылупится дракон. При этом на странице есть ссылки на все основные разделы сайта.

Меню на сайте Designzillas есть и на 404 странице

Domenart Studio

Веб-студия «Домен АРТ» использует красочную страницу 404, оформленную в единой стилистике ресурса. Заблудившимся пользователям предлагают попробовать ещё раз ввести адрес или перейти в нужный раздел.

Контакты, поиск, меню — и всё это на 404 странице Domenart Studio

«Эко Пауэр», дистрибьютор производителя источников питания, демонстрирует короткое замыкание как символ ошибки. Посетителям предлагают перейти на главную.

Ошибка 404 «Эко Пауэр» выглядит как страница входа

Дом со всем

Компания «Дом со всем», занимающаяся бурением скважин, разместила на странице 404 свои контакты и перечень услуг. Со страницы можно перейти в любой раздел сайта или заказать обратный звонок. С таким наполнением посетителю не нужно искать дополнительную информацию где-то ещё.

Компания «Дом со всем» предлагает заказать обратный звонок

Kualo

Страница 404 на веб-хостинге Kualo может заставить пользователя забыть, зачем он сюда пришёл. Увлекательная игра притягивает внимание. В конце игры посетителю предлагают посмотреть сайт хостинга.

На странице Kualo можно просто поиграть и заработать скидки

Рано или поздно с ошибкой 404 сталкивается большинство сайтов. При регулярной проверке можно своевременно исправить неработающие ссылки, чтобы в ответ пользователи получали код 200 OK. Но для крупного ресурса лучше настроить оригинальную страницу, которая будет отображаться при появлении ошибки Not Found и подскажет посетителям, что делать дальше.

Ошибка 405 или 500 в HTTP сервисе 1С

Блог

Ошибка 405 и 500 в HTTP сервисе 1С. Поиск и устранение.

Добрый день, хотел поделиться с вами результатом преодоления этих ошибок при работе с http сервисами 1С. С данной ошибкой мне пришлось столкнуться при переписывании мобильного приложения с web сервисов на http. Ошибка возникала при отправке http сервису POST запроса.

Ошибка 405

При работе с некорректным HTTP сервисом из мобильного приложения возвращалась ошибка 405, которая указывает на конкретную проблему. «405 Method Not Allowed — указанный клиентом метод нельзя применить к текущему ресурсу.» Долго не мог разобраться с данной ошибкой, так как в сервисе запрос был разрешен и шаблоны были настроены корректно.

Ошибка 500

При работе с некорректным HTTP сервисом из внешних программ возвращалась ошибка 500, которая ни о чем конкретном не говорит. «500 Internal Server Error — любая внутренняя ошибка сервера, которая не входит в рамки остальных ошибок класса».

Вроде HTTP сервис один, а при использовании запросов к нему из разных программ возвращались разные ошибки.

Расследование ошибок 405 и 500 в HTTP сервисе 1С

Времени на выяснение причин ушло очень много. За несколько дней до этой задачи мною были проведены десятки экспериментов по сборке и настройке web сервера apache 2.4 x64 SSL для работы с 1С. Все настройки в основном были связаны с кросс доменными запросами из web приложения на javascript. Столкнувшись с ошибками 405 и 500 на другом проекте я сразу полез в дебри конфигурации apache. После полного удаления apache поставил IIS и на нем вышла такая же ошибка. Поднял на виртуальной машине чистую систему, попробовал apache и iss, но ошибка так и проявлялась. Потом я вспомнил, что одна функция мобильного приложения уже давно использует http сервис и там все прекрасно работает. Создал http сервис с базовыми настройками и все заработало.

Как только я переносил код из web сервиса в функции http сервиса, сразу появлялись ошибки. Самое интересное, что отладка не срабатывала, т. е. POST запрос в пустую функцию приходил и отрабатывал, а в функцию с кодом нет.

На многих форумах ошибку 405 описывают как ошибку доступа, либо не корректную настройку http сервиса.

Итог разбора ошибок 405 и 500 в HTTP сервисе 1С.

В итоге все оказалось довольно просто. Функция, которая вызывалась внутри функции http сервиса 1с не могла быть вызвана из данного модуля. Странно, что при сохранении конфигурации никакой ошибки на вызов отсутствующей функции не было. Возможно это глюк версии платформы и будет доработан. При использовании web сервисов, даже если код внутри функции был не корректный, отладка работала. В http сервисе сразу идет возврат с ошибками 405 или 500.

P. S. В последней версии платформы ошибка 405 перестала выходить.

Обновление 12.01.2019

В процессе работы часто приходится сталкиваться с ошибками 405 и 500 в HTTP сервисах. Но проблема в 99% случаев в коде сервиса. Возможно это не явно, код вас может уводить глубоко в другие модули, но решение надо искать именно там.

Сейчас у меня такие ошибки начинают и в рабочих проектах. Стоит только внести небольшое изменение которое вызывает исключительную ситуацию, как вы получите ошибку 500. Мобильный клиент ведет себя еще более странно и отловить реальную ошибку очень тяжело, особенно когда переделывает чужие формы под мобильный клиент.

В данный момент я начинаю с того, что отключаю вызов всех функций и процедур начиная со входа в обработчики HTTP сервиса и смотрю как проходят запросы. Если все хорошо, то я начинаю включать код небольшими кусочками и проверять работу сервиса. Данный метод не самый быстрый, но дает 100% результат.

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

Источники:

Https://www. unisender. com/ru/support/about/glossary/chto-oznachaet-oshibka-404-na-sajte-i-chto-s-nej-delat/

Https://nizamov. studio/article-00001/

Возникла необходимость взаимодействовать с 1C с мобильного клиента под Windows Phone 7/8. Самым простым способом взаимодействия показалось работа через web сервисы, поддерживаемые 1С.

С точки зрения публикации web сервиса особых сложностей нет. Шаги подробно описаны в статьях:

  • http://habrahabr.ru/post/136684/
  • http://howknow1c.ru/programmirovanie-1c/web-servisy-1s.html
  • http://infostart.ru/public/86791/
  • http://1cprogrammistu.ru/60-sozdanie-web-servisa-v-1s-predpriyatii.html
  • http://www.basic.visual2000.ru/kolesov/pcmag/2006-1c/2006-05/web_1c.htm
  • http://v8.1c.ru/overview/Term_000000286.htm
  • http://1c-dn.com/forum/forum1/topic1184/
  • http://fixin.com.ru/articles/1s_web_services/article.htm
  • http://infostart.ru/public/327963/

Проблемы возникли с доступом к опубликованному web-сервису 1С. Под IIS 7.5 из под Windows 2008R2 после полудня танцев с бубном проблему решить не удалось. Были изучены статьи и ветки форумов:

  • http://infostart.ru/public/75205/
  • http://www.forum.mista.ru/topic.php?id=568905
  • http://www.forum.mista.ru/topic.php?id=665708
  • http://www.forum.mista.ru/topic.php?id=539933
  • и т.д.

но счастье так и не наступило. 

В результате решил, что стоит попробовать поднять web сервис на Apache, поскольку с ним у меня обычно все было несколько проще с настройкой. Итак, на другом порту (8080) на том-же сервере был поднят Apache 2.2.22. В 1С был создан ещё один web сервис и опубликован уже на Apache. С настройками по умолчанию он также не заработал. Разберем ошибки.

Web сервис был опубликован в 1С под именем wsApache.

Публикация web-сервиса 1С

Публикация web-сервиса 1С под Apache

Соответственно, в указанном при публикации каталоге появился файл default.vrd следующего содержания:

В httpd.conf 1С добавила следующие строчки:

# 1c publication

LoadModule _1cws_module "C:/Program Files (x86)/1cv82/8.2.17.153/bin/wsap22.dll"

Alias "/ws" "C:/inetpub/wwwroot/ws/"

<Directory "C:/inetpub/wwwroot/ws/">

    AllowOverride All

    Options None

    Order allow,deny

    Allow from all

    SetHandler 1c-application

    ManagedApplicationDescriptor "C:/inetpub/wwwroot/ws/default.vrd"

</Directory>

В целом, файлы/изменения создаваемые 1С почти рабочие.  Теперь о проблемах.

Правильный линк на сервис

В некоторых статьях путь к web сервису указан как: http://имя_сервера:порт/имя_при_публикации/alias?wsdl.

В моем случае:

  • Имя сервера: s-1s-1-hw
  • Порт: 8080
  • Имя при публикации: wsApache
  • Alias из файла default.vrd: service.1cws

Соответственно, НЕПРАВИЛЬНАЯ ссылка на web сервис 1С такая: http://s-1c-1-hw:8080/wsApache/service.1cws?wsdl

Если использовать такой линк, то 1C 8.2 выдаст сообщение вида:

1C:Enterprise 8 application error:

HTTP: Not found Ошибка при работе с ресурсом /ws/service.1cws

Правильный вариант:

http://имя_сервера:порт/имя_при_публикации/ws/alias?wsdl.

Это обращение эквивалентно обращению по имени сервиса из default.vrd:

http://имя_сервера:порт/имя_при_публикации/ws/name?wsdl.

В моем случае:

  • Name из файла default.vrd: Service

Соответственно, ПРАВИЛЬНЫЙ линк для доступа к web сервису 1С будет такой:

http://s-1c-1-hw:8080/wsApache/ws/service.1cws?wsdl

или такой

http://s-1c-1-hw:8080/wsApache/ws/service?wsdl

Если указать ссылку с суффиксом ?wsdl, то в веб браузере отобразиться XML файл с описанием опубликованного сервиса.

Если указать ссылку без суффикса ?wsdl, то при правильной настройке должна появится страница с гиперссылкой на опубликованный сервис:

http://s-1c-1-hw:8080/wsApache/ws/Service

Авторизация пользователя при обращении к web сервису 1С

Если попытаться получить доступ к web сервису опубликованному под Apache не исправляя файл default.vrd, то появиться стандартный диалог авторизации:

Диалог авторизации на web сервисе 1С

Диалог авторизации на web сервисе 1С

В тестовой базе был заведен тестовый пользователь IUSR с полными правами с пустым паролем. Если ввести в диалог в качестве логина этого пользователя, то авторизация пройдет успешно и отобразиться либо XML файл, либо ссылка на него (см. выше).

Можно исключить запрос авторизационной информации вбив логин и пароль прямо в файл default.vrd, что, конечно, не рекомендуется с точки зрения безопасности, но иногда необходимо.

Это все. В моем случае каких-то дополнительных правок конфиг файлов не потребовалось.

В некоторых статьях указывалось, что нужно убрать из httpd.conf опцию «Options None«. У меня работает в обоих вариантах, т.е. когда строка присутствует и когда она удалена.

Публикация web сервиса 1С на IIS 7.5

Как уже упоминал выше, с публикацией web сервиса на IIS 7.5 с первого раза у меня не задалось, хотя тонкий клиент запускается без проблем. Поскольку пароль в конфигурационном файле по соображениям безопасности меня не устраивал, вернулся к вопросу настройки IIS.  Был опубликован web сервис с именем wsIIS и именем сервиса ServiceIIS и alias-ом serviceIIS.1cws. Галка в чекбоксе «Использовать аутентификацию операционной системы на веб-сервере» для простоты эксперимента была снята.

Публикация web сервиса 1С в IIS 7.5.

Публикация web сервиса 1С в IIS 7.5.

Корректная ссылка в моем случае: http://s-1c-1-hw/wsIIS/ws/ServiceIIS?wsdl. При попытке зайти из Chrome/IE получаем ошибку возвращенную IIS:

Ошибка HTTP 401.2 — Unauthorized

дабы избавиться от ошибки правим web.config сформированный 1С следующим образом:

<?xml version="1.0" encoding="UTF-8"?>

<configuration>

    <system.webServer>

        <handlers>

            <add name="1C Web-service Extension" path="*" verb="*" modules="IsapiModule" scriptProcessor="C:Program Files (x86)1cv82binwsisapi.dll" resourceType="Unspecified" requireAccess="None" />

        </handlers>

        <security>

            <authorization>

                <add accessType="Allow" users="*" />

            </authorization>

        </security>

    </system.webServer>

</configuration>

Эта правка эквивалента изменению через консоль управления IIS для нашего опубликованного приложения с именем wsIIS  правил авторизации пользователя.

Настройки IIS 7.5 для доступа к web сервисам 1C

Настройки IIS 7.5 для доступа к web сервисам 1C

Добавление тегов security в web.config или правка правил авторизации в консоли IIS приводит к тому, что при обращении к сервису по указанной выше ссылке появляется запрос на авторизацию. Вводим нашего тестового пользователя IUSR без пароля и получаем нужный XML файл в ответе сервера.

Прописав в default.vrd логин и пароль пользователя, как было указано выше для Apache, уберем окно авторизации и сервис будет всегда авторизовываться под указанным пользователем. Как проходит авторизация можно посмотреть в логах 1C. Но вариант с прописыванием пользователя в конфигурационный файл — не наш путь, ибо не секьюрно.

Изменим настройки авторизации пользователя (в IIS проверка подлинности), чтобы использовалась Windows авторизация. Сменить можно в консоли управления IIS, либо в конфигурационном  файле. Мне больше нравиться конфигурационный файл. так как проще переносить настройки при миграции на другой сервер.

Поскольку изменения секции web.config <authentication> заблокированы на уровне IIS в файле

%windir%system32inetsrvconfigapplicationHost.config

нужно зайти туда и сменить «Deny» на «Allow» для секции «authentication»:

<sectionGroup name="authentication">

    <section name="anonymousAuthentication" overrideModeDefault="Allow" />

    <section name="basicAuthentication" overrideModeDefault="Allow" />

    <section name="clientCertificateMappingAuthentication" overrideModeDefault="Deny" />

    <section name="digestAuthentication" overrideModeDefault="Deny" />

    <section name="iisClientCertificateMappingAuthentication" overrideModeDefault="Deny" />

    <section name="windowsAuthentication" overrideModeDefault="Allow" />

</sectionGroup>

после чего РАБОЧИЙ web.config для опубликованного web сервиса 1С будет выглядеть следующим образом:

<?xml version="1.0" encoding="UTF-8"?>

<configuration>

    <system.webServer>

        <handlers>

            <add name="1C Web-service Extension" path="*" verb="*" modules="IsapiModule" scriptProcessor="C:Program Files (x86)1cv82binwsisapi.dll" resourceType="Unspecified" requireAccess="None" />

        </handlers>

        <security>

            <authorization>

                <add accessType="Allow" users="*" />

            </authorization>

         <authentication>

            <windowsAuthentication enabled="true" useKernelMode="true">

                    <providers>

                        <clear />

                        <add value="Negotiate" />

                        <add value="NTLM" />

                  </providers>

                    <extendedProtection tokenChecking="Allow" />

            </windowsAuthentication>

            <basicAuthentication enabled="false" />

            <anonymousAuthentication enabled="false" />

         </authentication>

        </security>

    </system.webServer>

</configuration>

Эквивалент последней выполненной операции (настройка <authentication>) — публикация сервиса с включенной галкой в чекбоксе «Использовать аутентификацию операционной системы на веб-сервере». 1С при публикации меняет эту настройку не в web.config, а в настройках IIS через API. В любом случае изменения должны быть видны в консоли управления IIS:

Настройка аутентификации при публикации web сервиса 1С в IIS

Настройка аутентификации при публикации web сервиса 1С в IIS

На всякий случай для проверки настроек при публикации web сервиса имеет смысл в консоли управления IIS зайти в следующие разделы:

Публикация web сервиса 1С в IIS. Настройка через консоль.

Публикация web сервиса 1С в IIS. Настройка через консоль.

После указанной выше настройки web.config, удаляем жестко прописанные логин и пароль из  файла default.vrd. На всякий случай перегружаем IIS. Если для доменных пользователей прописаны корректные соответствия в учетных записях 1С, то авторизация пройдет прозрачно под доменными учетными записями, в чем можно будет убедиться посмотрев в логах авторизации 1С. 

Здесь приводится ряд ошибок IIS (и способы их устранения) которые с высокой вероятностью могут возникнуть при публикации web сервиса 1С на IIS.

Доступ из Visual Studio 2012

Как подробно описано в статье на хабре, чтобы добавить ссылку на опубликованный web сервис 1С в Visual Studio для разработки клиента необходимо создать приложение (например, консольное), кликнуть правой кнопкой мышки на solution и выбрать пункт «Add Service Reference…». Следует обратить внимание на точное указание ссылки непосредственно на WSDL описание, т.е. без указания суффикса ?wsdl Visual Studio ничего не обнаружит.

Добавление reference к web службе 1С из Visual Stiudio.

Добавление reference к web службе 1С из Visual Stiudio.

Далее разрабатываем обычный клиент для web сервиса.

Удачи!!!

Понравилась статья? Поделить с друзьями:
  • Ошибка добавления виджета atv launcher настройка adb доступа
  • Ошибка доступа к файлам приложения 2гис
  • Ошибка добавления linux клиента некорректный сертификат
  • Ошибка доступа к файлам пользовательской игры дота
  • Ошибка доступа к устройству сохранения prototype 2