Я использую ESP8266 веб-сервер . Я создаю точку доступа Wifi и использую веб-сервер для размещения веб-сайта, к которому я хочу получить доступ из браузера моего мобильного телефона:
void wifi::access_point::begin() {
WiFi.mode(WIFI_AP_STA);
WiFi.softAPConfig(ap_ip, ap_gateway, ap_subnet);
WiFi.softAP(ap_ssid, ap_password);
server.on ( "/", [this]() {
handle_root();
});
server.on( "/submit", [this]() {
handle_submit();
});
server.begin();
dns_server.start(dns_port, "my_wifi_config.com", ap_ip);
}
void wifi::access_point::handle_root() {
char html[1000];
snprintf (html, 1000,
"<html>\
<head>\
<title>Wifi Configuration</title>\
<style>\
body { background-color: #cccccc; font-family: Arial, Helvetica, Sans-Serif; font-size: 1.5em; Color: #000000; }\
h1 { Color: #AA0000; }\
</style>\
</head>\
<body>\
<center>\
<h1>Wifi Configuration</h1>\
<form action='/submit' method='POST'>\
<p> Wifi SSID: </p>\
<input type='text' name='ssid'>\
<p> Wifi password: <\p>\
<input type='text' name='password'>\
<br>\
<input type='submit' name='Submit'>\
</form>\
</center>\
</body>\
</html>"
);
server.send(200, "text/html", html);
}
Со своего рабочего стола я могу подключиться к точке доступа и получить доступ к ap_ip
, и все работает нормально. В моем телефоне я также могу подключиться к точке доступа WiFi, но если я подключен к мобильной сети, браузер не загружает веб-сайт, он говорит «веб-страница не найдена». Если он выключен, сайт загружается нормально.
Мне нужно было бы иметь возможность загружать веб-сайт, размещенный на моем веб-сервере ESP8266, без необходимости отключения мобильных данных. Есть идеи, почему это происходит и как я могу избежать этой проблемы?