diff --git a/src/app.h b/src/app.h
index 95c63225..18b3ca82 100644
--- a/src/app.h
+++ b/src/app.h
@@ -82,6 +82,10 @@ class app : public IApp, public ah::Scheduler {
             mShowRebootRequest = true; // only message on index, no reboot
             mSavePending = true;
             mSaveReboot = reboot;
+            if(reboot) {
+                onWifi(false);
+                ah::Scheduler::resetTicker();
+            }
             once(std::bind(&app::tickSave, this), 3, "save");
             return true;
         }
diff --git a/src/web/web.h b/src/web/web.h
index 9a233a74..d4e58e70 100644
--- a/src/web/web.h
+++ b/src/web/web.h
@@ -600,7 +600,7 @@ class Web {
 
             mApp->saveSettings((request->arg("reboot") == "on"));
 
-            AsyncWebServerResponse *response = request->beginResponse_P(200, F("text/html; charset=UTF-8"), system_html, save_html_len);
+            AsyncWebServerResponse *response = request->beginResponse_P(200, F("text/html; charset=UTF-8"), save_html, save_html_len);
             response->addHeader(F("Content-Encoding"), "gzip");
             request->send(response);
         }