есть локальная машина на ней Крутится база 1с(допустим локальная, серверная не проблема, но думаю проблема не в этом)
Есть Другая локальная машина на ней крутится Веб-Сервер IIS
в 1с создал веб-сервис и при попытки публикации пишет:
"Web серверы не обнаружены"
и собственно вопрос, можно ли как-нибудь опубликовать веб-сервис на стороннем веб сервере, чтобы не поднимать еще веб сервер на машине где крутится 1с
Мне кажется нет (хотя не уверен), просто при попытке публикации, платформа ищет сервера на компьютере. А чем проблема развернуть на этом компьютере еще один сервер?
Вообщем оказалось возможно, надо при установке указать установить веб расширение и тогда будет доступна из каталог BIN вот это:
Для публикации на удаленном компьютере можно также использовать утилиту webinst. Данная утилита должна запускаться из каталога двоичных файлов платформы (для ее запуска требуется наличие динамических библиотек, входящих в состав платформы):
webinst servertype -wsdir VirtualDir -dir Dir -connstr connStr -confPath confPath
servertype - тип веб-сервера. Может принимать следующие значения:
iis - публикация веб-клиента для IIS 5.1, IIS 6.0;
apache2 - публикация веб-клиента для Apache 2.0;
apache22 - публикация веб-клиента для Apache 2.2.
VirtualDir - виртуальный каталог, куда будет установлена поддержка Web-сервисов\n ;
Dir - физический каталог, в который будет отображен виртуальный каталог;
confPath - полный путь к конфигурационному файлу Apache (только для публикации на Apache).
У нас работает такая схема: сервер 1С на одном сервере, а web-сервер (apache) на другом.
На сервер с apache установлена 1С, хотя я думаю что достаточно нескольких библиотек (в частности /bin/wsap22.dll) или так как указано в (4). На сервере (тот, что с apache), на локальном диске лежит файлик описания *.vrd в котором указаны опубликованные web-сервисы другого сервера.
(12) Stackmann, Здаравствуйте! У нас вот такая схема, сервер 1с и IIS стоят на одном сервере,опубликовали-необходима отладка в веб-клиенте,работает.Хотим чтобы на терминальном сервере заработала отладка-хотим подтянуть на терминале(из 1с) настройки опубликованного веб-сервиса,подскажите как это реализовать?
возник точно такой же вопрос ...
правильно ли я понял - что можно поднять веб-сервер на другом компьютере, и не устанавливать на нем 1С,
при этом на компьютере с 1С не нужны никакие веб-сервера, и все это будет каким-то образом прекрасно работать ?
как они друг друга увидят ? если ни один из них не открыт в сеть например ?
Сделал простенький веб-сервис GetMyData, опубликовал на сетевой диск. vrd-файл получился. Пытаюсь прочитать ws-описание этого веб-сервиса, а он пишет, что файл не обнаружен.
Ввожу строку вида "http://localhost/MyBase/ws/GetMyData.1cws?wsdl" (причём MyBase - строго так, как в vrd-файле в ветке "base".
Насколько знаю, папки может и не быть, лишь бы адрес был валидным с точки зрения http.
Спасибо за совет, попробую поискать в эту сторону.
Что характерно, для файловых баз этот же подход отлично работает.
Опять же таки не адрес а сам ВСДЛ файл(его валидную структуру, если можно так сказать), есть некоторые языки\программы которые его формирую явно и можно указать путь аля
"C:\\my_wsdl.?wsdl"
а и в чем вы видели отличие файловой или серверной базы для Веб сервиса? или простите я не понял последние предложение... =)
Если вдруг кому поможет,
1с -стоит на компе с Win Server (1c_server)
Apach 2.2 -стоит на компе с Win Server (web_server)
вот мой вариант подключения:
webinst -apache22 -wsdir bk -dir \\web_server\web -connstr "Srvr=1c_server;Ref=bp;" -confPath \\web_server\conf\httpd.conf
-apache22 --- т.к. Апач версии 2.2 bk --- имя базы при подключении типа http://web_server:666/bk c:/web --- папка на стороне сервера с Апачем (для работы необходимо предоставить доступ пользователю из под которого работает сервер 1с "Srvr=1c_server;Ref=bp;" --- тут все ясно, 1c_server - адрес компа на котором работает сервер 1с, bp имя базы \\web_server\conf\httpd.conf --- папка на стороне сервера с Апачем, здесь хранятся его настройки (для работы необходимо предоставить доступ пользователю из под которого работает сервер 1с
Далее запускаю командную строку, командой cd C:\Program Files (x86)\1cv8\8.3.7.1759\bin перехожу в папку с бинарниками 1с, от туда запускаю это чудо:
webinst -apache22 -wsdir bk -dir \\web_server\web -connstr "Srvr=1c_server;Ref=bp;" -confPath \\web_server\conf\httpd.conf
Пытаюсь перезапустить Апач, а мне он говорит, что не получается, тогда иду в папку c:/conf/httpd.conf и там правлю так:
\\web_server\web заменяю на c:/web
\\web_server\conf\httpd.conf заменяю на c:/conf/httpd.conf
Пробую завести Апач - завелся.
Далее иду в конфигуратор с базой, надеясь, что в списке возможных Веб-серверов появиться Апач, но там пусто!
Тем не менее попытка зайти по адресу http://web_server:666/bk увенчалась успехом. Вот такие дела.