Проверяю при помощи обработки, которая вызывает метод веб-сервиса, все работает отлично.
Но это веб-сервис должен быть доступен по внешнему адресу. Админ пробрасывает порт с нашего внешнего адреса:
НашВнешнийIP:10090 ==>> 192.168.32.182:8090
1С запрашивает авторизацию, ввожу логин и пароль, авторизация проходит, появляется ссылка на
http://НашВнешнийIP:10090/base1/ws/lichkab.1cws?wsdl При переходе по ссылке браузер пишет, что не может отобразить страницу
Проверяю обработкой через внешний адрес. Ошибка:
Встроенный язык: Строка 7: Ошибка при вызове метода контекста (GetKvitPdf): Ошибка вызова операции сервиса: {http://www.LichKab.org}:LichKab:GetKvitPdf()
по причине:
Неизвестная ошибка. Ошибка работы с Интернет: Couldn't connect to server
по причине:
Ошибка работы с Интернет: Couldn't connect to server
Собственно вопрос, если по внутреннему адресу работает, то почему может не работать при обращении по внешнему, если проброс идет на этот же внутренний адрес?
Вот тут и ошибка. IIS генерит ссылку на wsdl с портом 8090, а не 10090, по которому я обращаюсь. Это что получается: IIS думает, что он на порту 8090 и при обращении по внешнему адресу пишет не правильный порт для внешнего адреса. Попробовал сделать одинаковые порты - работает.
Конечно можно и так оставить. Но может какую-то настройку сделать в IIS и заработает с разными номерами портов у внутреннего и внешнего адреса?))
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший