2022-10-04 12:36:03 +00:00
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
|
|
|
"net/http"
|
|
|
|
"os"
|
|
|
|
|
|
|
|
"github.com/dunglas/frankenphp"
|
2022-10-04 15:42:45 +00:00
|
|
|
"go.uber.org/zap"
|
2022-10-04 12:36:03 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
func main() {
|
2022-10-04 15:42:45 +00:00
|
|
|
logger, err := zap.NewDevelopment()
|
|
|
|
if err != nil {
|
|
|
|
panic(err)
|
|
|
|
}
|
|
|
|
|
|
|
|
if err := frankenphp.Init(frankenphp.WithLogger(logger)); err != nil {
|
2022-10-04 12:36:03 +00:00
|
|
|
panic(err)
|
|
|
|
}
|
|
|
|
defer frankenphp.Shutdown()
|
|
|
|
|
|
|
|
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
|
|
|
|
cwd, err := os.Getwd()
|
|
|
|
if err != nil {
|
|
|
|
panic(err)
|
|
|
|
}
|
|
|
|
|
2022-10-04 15:42:45 +00:00
|
|
|
req := frankenphp.NewRequestWithContext(r, cwd, nil)
|
2022-10-04 12:36:03 +00:00
|
|
|
if err := frankenphp.ServeHTTP(w, req); err != nil {
|
|
|
|
panic(err)
|
|
|
|
}
|
|
|
|
})
|
|
|
|
|
|
|
|
port := os.Getenv("PORT")
|
|
|
|
if port == "" {
|
|
|
|
port = "8080"
|
|
|
|
}
|
|
|
|
|
2022-10-04 15:42:45 +00:00
|
|
|
logger.Fatal("server error", zap.Error(http.ListenAndServe(":"+port, nil)))
|
2022-10-04 12:36:03 +00:00
|
|
|
}
|