Инициализация проекта

Стабильный рабочий проект.
This commit is contained in:
Falknat
2025-10-02 06:02:45 +07:00
commit 7a87617282
47 changed files with 6057 additions and 0 deletions

75
main.go Normal file
View File

@@ -0,0 +1,75 @@
package main
import (
"fmt"
"time"
webserver "vServer/Backend/WebServer"
admin "vServer/Backend/admin/go"
json_admin "vServer/Backend/admin/go/json"
config "vServer/Backend/config"
tools "vServer/Backend/tools"
)
func main() {
if !tools.CheckSingleInstance() {
println("")
println(tools.Color("❌ ОШИБКА:", tools.Красный) + " vServer уже запущен!")
println(tools.Color("💡 Подсказка:", tools.Жёлтый) + " Завершите уже запущенный процесс перед запуском нового.")
println("")
println("Нажмите Enter для завершения...")
fmt.Scanln()
return
}
// Освобождаем мьютекс при выходе (опционально, так как Windows сама освободит)
defer tools.ReleaseMutex()
println("")
println(tools.Color("vServer", tools.Жёлтый) + tools.Color(" 1.0.0", tools.Голубой))
println(tools.Color("Автор: ", tools.Зелёный) + tools.Color("Суманеев Роман (c) 2025", tools.Голубой))
println(tools.Color("Официальный сайт: ", tools.Зелёный) + tools.Color("https://voxsel.ru", tools.Голубой))
println("")
println("🚀 Запуск vServer...")
println("📁 Файлы сайта будут обслуживаться из папки 'www'")
println("")
println("⏳ Запуск сервисов...")
println("")
// Инициализируем время запуска сервера
tools.ServerUptime("start")
config.LoadConfig()
time.Sleep(50 * time.Millisecond)
webserver.StartHandler()
time.Sleep(50 * time.Millisecond)
// Запускаем серверы в горутинах
go admin.StartAdmin()
time.Sleep(50 * time.Millisecond)
webserver.Cert_start()
time.Sleep(50 * time.Millisecond)
go webserver.StartHTTPS()
json_admin.UpdateServerStatus("HTTPS Server", "running")
time.Sleep(50 * time.Millisecond)
go webserver.StartHTTP()
json_admin.UpdateServerStatus("HTTP Server", "running")
time.Sleep(50 * time.Millisecond)
webserver.PHP_Start()
json_admin.UpdateServerStatus("PHP Server", "running")
time.Sleep(50 * time.Millisecond)
webserver.StartMySQLServer(false)
json_admin.UpdateServerStatus("MySQL Server", "running")
time.Sleep(50 * time.Millisecond)
println("")
webserver.CommandListener()
}