init
This commit is contained in:
48
main.go
Normal file
48
main.go
Normal file
@ -0,0 +1,48 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"embed"
|
||||
"html/template"
|
||||
"log"
|
||||
"net/http"
|
||||
|
||||
"inet.af/tcpproxy"
|
||||
)
|
||||
|
||||
//go:embed templates/*.html
|
||||
var templatesFS embed.FS
|
||||
|
||||
func main() {
|
||||
|
||||
go proxify()
|
||||
|
||||
// Parse templates from the embedded file system
|
||||
tmpl, err := template.ParseFS(templatesFS, "templates/*.html")
|
||||
if err != nil {
|
||||
log.Fatalf("Error parsing templates: %v", err)
|
||||
}
|
||||
|
||||
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
|
||||
data := struct{ Name string }{Name: "Go Embed"}
|
||||
err := tmpl.ExecuteTemplate(w, "index.html", data)
|
||||
if err != nil {
|
||||
http.Error(w, err.Error(), http.StatusInternalServerError)
|
||||
}
|
||||
})
|
||||
|
||||
log.Println("Server starting on :8080")
|
||||
log.Fatal(http.ListenAndServe(":8080", nil))
|
||||
|
||||
}
|
||||
|
||||
func proxify() {
|
||||
var p tcpproxy.Proxy
|
||||
p.AddRoute("127.0.0.1:5555", tcpproxy.To("127.0.0.1:6666"))
|
||||
//p.AddHTTPHostRoute(":80", "foo.com", tcpproxy.To("10.0.0.1:8081"))
|
||||
//p.AddHTTPHostRoute(":80", "bar.com", tcpproxy.To("10.0.0.2:8082"))
|
||||
//p.AddRoute(":80", tcpproxy.To("10.0.0.1:8081")) // fallback
|
||||
//p.AddSNIRoute(":443", "foo.com", tcpproxy.To("10.0.0.1:4431"))
|
||||
//p.AddSNIRoute(":443", "bar.com", tcpproxy.To("10.0.0.2:4432"))
|
||||
//p.AddRoute(":443", tcpproxy.To("10.0.0.1:4431")) // fallback
|
||||
log.Fatal(p.Run())
|
||||
}
|
||||
Reference in New Issue
Block a user