При разработке мобильных приложений на платформе 1С:Предприятие одной из самых распространенных проблем является отсутствие связи между мобильным устройством (смартфоном) и веб-сервером Apache, на котором опубликована информационная база. В этой статье мы подробно разберем, почему возникает ошибка «Превышено время ожидания», и пройдем по всем этапам настройки сети, брандмауэра и самого веб-сервера, чтобы обеспечить стабильное соединение.
Прежде чем приступать к сложным настройкам программного обеспечения, проанализируем физическое и логическое состояние сети. Рассмотрим основные условия, которые должны быть соблюдены:
localhost или 127.0.0.1 работает только внутри самого компьютера. Смартфон — это отдельное устройство, поэтому в настройках мобильной платформы 1С мы должны указывать реальный IP-адрес компьютера в локальной сети (например, http://192.168.1.5/MyMobileApp).Часто проблема кроется в конфигурации самого Apache, который может быть настроен на прослушивание только локальных запросов. Проанализируем файл httpd.conf, который обычно находится в папке conf в каталоге установки Apache.
Найдем директиву Listen. Если вы видите строку:
Listen 127.0.0.1:80
Это означает, что сервер принимает запросы только от самого себя. Чтобы Apache стал доступен для смартфона, изменим эту строку, разрешив прослушивание всех сетевых интерфейсов:
Listen 0.0.0.0:80
Также проверим права доступа в блоке <Directory>. Для корректной работы мобильного приложения 1С доступ должен быть разрешен для внешних устройств. Проверим наличие следующей записи:
<Directory "C:/inetpub/wwwroot/MyMobileApp">
AllowOverride None
Options None
Require all granted
</Directory>
Если вместо Require all granted указано Require local, смартфон получит ошибку доступа при попытке подключения.
Рассмотрим ситуацию, когда сеть настроена верно, но порт закрыт защитными системами. По умолчанию 80-й порт (HTTP) может быть заблокирован брандмауэром Windows. Выполним следующие действия:
80.Важно помнить, что сторонние антивирусы (например, Kaspersky или ESET) имеют собственные сетевые экраны. Попробуем временно отключить антивирус, чтобы убедиться, что проблема не в нем. Если связь появится — необходимо добавить Apache в исключения антивируса.
Проанализируем настройки Wi-Fi роутера. В некоторых современных моделях включена функция AP Isolation (изоляция точки доступа). Эта функция предназначена для безопасности (например, в гостевых сетях кафе), чтобы пользователи не могли получить доступ к устройствам друг друга. В нашем случае она мешает смартфону увидеть компьютер. Проверим настройки беспроводного режима в интерфейсе роутера и убедимся, что изоляция отключена.
Если Wi-Fi соединение по каким-то причинам настроить не удается или сеть нестабильна, разберем альтернативный вариант — подключение через USB-кабель с использованием инструментов разработчика Android (ADB). Это позволит «пробросить» порт компьютера на смартфон.
Выполним пошагово:
adb reverse tcp:80 tcp:80
После выполнения этой команды смартфон будет воспринимать localhost как обращение к вашему компьютеру через кабель. Это один из самых надежных способов отладки для программистов 1С.
Иногда проблема заключается не в сети, а в самой публикации. Посмотрим на файл default.vrd, который формируется 1С при публикации на веб-сервере. Убедимся, что путь к информационной базе указан корректно. Если используется файловая база, путь должен быть доступен процессу, от имени которого запущен Apache (обычно это системная учетная запись SYSTEM).
Для диагностики со стороны смартфона можно использовать любое приложение-сканер портов. Если при сканировании IP-адреса компьютера порт 80 отображается как Closed, значит, проблема в брандмауэре или настройках Listen в Apache. Если порт Open, но база 1С не открывается, следует перепроверить корректность публикации в самой 1С и права доступа к папке с базой.