Files
vServer/Backend/WebServer/http_server.go
Falknat 02ae56b78c Большое обновление GUI интерфейс
Большое обновление GUI интерфейс

- Добавлен фраемворr Walles
- Удалена консольная версия
- Проработан интерфейс и дизайн
- Добавлено кеширование для быстрой реакции.
- Сделан .ps1 сборщик для удобной сборки проекта.
- Обновлён Readme
2025-11-14 08:40:25 +07:00

47 lines
1.2 KiB
Go

package webserver
import (
"net/http"
tools "vServer/Backend/tools"
)
var httpServer *http.Server
var port_http string = "80"
// GetHTTPStatus возвращает статус HTTP сервера
func GetHTTPStatus() bool {
return httpServer != nil
}
// Запуск HTTP сервера
func StartHTTP() {
if tools.Port_check("HTTP", "localhost", port_http) {
return
}
// Создаем HTTP сервер
httpServer = &http.Server{
Addr: ":" + port_http,
Handler: nil,
}
tools.Logs_file(0, "HTTP ", "💻 HTTP сервер запущен на порту 80", "logs_http.log", true)
if err := httpServer.ListenAndServe(); err != nil {
// Игнорируем нормальную ошибку при остановке сервера
if err.Error() != "http: Server closed" {
tools.Logs_file(1, "HTTP", "❌ Ошибка запуска сервера: "+err.Error(), "logs_http.log", true)
}
}
}
// StopHTTPServer останавливает HTTP сервер
func StopHTTPServer() {
if httpServer != nil {
httpServer.Close()
httpServer = nil
tools.Logs_file(0, "HTTP", "HTTP сервер остановлен", "logs_http.log", true)
}
}