合并最新代码
This commit is contained in:
parent
b66cd62c0d
commit
512e601cc9
@ -20,6 +20,8 @@ package assets
|
|||||||
//go:generate go fmt ./frpc/statik/statik.go
|
//go:generate go fmt ./frpc/statik/statik.go
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
statik2 "github.com/fatedier/frp/assets/frpc/statik"
|
||||||
|
"github.com/fatedier/frp/assets/frps/statik"
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"net/http"
|
"net/http"
|
||||||
"os"
|
"os"
|
||||||
@ -34,16 +36,24 @@ var (
|
|||||||
|
|
||||||
// if prefix is not empty, we get file content from disk
|
// if prefix is not empty, we get file content from disk
|
||||||
prefixPath string
|
prefixPath string
|
||||||
|
|
||||||
|
Frpc = 1
|
||||||
|
Frps = 2
|
||||||
)
|
)
|
||||||
|
|
||||||
// if path is empty, load assets in memory
|
// if path is empty, load assets in memory
|
||||||
// or set FileSystem using disk files
|
// or set FileSystem using disk files
|
||||||
func Load(path string) (err error) {
|
func Load(path string, t int) (err error) {
|
||||||
prefixPath = path
|
prefixPath = path
|
||||||
if prefixPath != "" {
|
if prefixPath != "" {
|
||||||
FileSystem = http.Dir(prefixPath)
|
FileSystem = http.Dir(prefixPath)
|
||||||
return nil
|
return nil
|
||||||
} else {
|
} else {
|
||||||
|
if t == Frpc {
|
||||||
|
statik.RegisterFrps()
|
||||||
|
} else {
|
||||||
|
statik2.RegisterFrpc()
|
||||||
|
}
|
||||||
FileSystem, err = fs.New()
|
FileSystem, err = fs.New()
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -54,7 +54,7 @@ type Service struct {
|
|||||||
|
|
||||||
func NewService(pxyCfgs map[string]config.ProxyConf, visitorCfgs map[string]config.VisitorConf) (svr *Service, err error) {
|
func NewService(pxyCfgs map[string]config.ProxyConf, visitorCfgs map[string]config.VisitorConf) (svr *Service, err error) {
|
||||||
// Init assets
|
// Init assets
|
||||||
err = assets.Load("")
|
err = assets.Load("", assets.Frpc)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
err = fmt.Errorf("Load assets error: %v", err)
|
err = fmt.Errorf("Load assets error: %v", err)
|
||||||
return
|
return
|
||||||
|
@ -19,8 +19,13 @@ import (
|
|||||||
"github.com/fatedier/frp/cmd/frps/frps"
|
"github.com/fatedier/frp/cmd/frps/frps"
|
||||||
"github.com/fatedier/frp/utils/version"
|
"github.com/fatedier/frp/utils/version"
|
||||||
"github.com/fatedier/golib/crypto"
|
"github.com/fatedier/golib/crypto"
|
||||||
|
"runtime/debug"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
func init() {
|
||||||
|
debug.SetGCPercent(5)
|
||||||
|
}
|
||||||
|
|
||||||
func RunFrpc(cfgFilePath string) (err error) {
|
func RunFrpc(cfgFilePath string) (err error) {
|
||||||
crypto.DefaultSalt = "frp"
|
crypto.DefaultSalt = "frp"
|
||||||
|
|
||||||
@ -28,6 +33,7 @@ func RunFrpc(cfgFilePath string) (err error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func StopFrpc() (err error) {
|
func StopFrpc() (err error) {
|
||||||
|
defer debug.FreeOSMemory()
|
||||||
return sub.StopFrp()
|
return sub.StopFrp()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -43,6 +49,7 @@ func RunFrps(cfgFilePath string) (err error) {
|
|||||||
|
|
||||||
// StopFrps 停止frps服务
|
// StopFrps 停止frps服务
|
||||||
func StopFrps() error {
|
func StopFrps() error {
|
||||||
|
defer debug.FreeOSMemory()
|
||||||
return frps.StopFrps()
|
return frps.StopFrps()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -124,6 +124,7 @@ func StopFrp() (err error) {
|
|||||||
|
|
||||||
service.Close()
|
service.Close()
|
||||||
log.Info("frpc is stoped")
|
log.Info("frpc is stoped")
|
||||||
|
service = nil
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,3 +1,2 @@
|
|||||||
[common]
|
[common]
|
||||||
bind_port = 7000
|
bind_port = 7000
|
||||||
allow_ports = 7000, 6000
|
|
@ -107,7 +107,7 @@ func NewService() (svr *Service, err error) {
|
|||||||
svr.rc.TcpGroupCtl = group.NewTcpGroupCtl(svr.rc.TcpPortManager)
|
svr.rc.TcpGroupCtl = group.NewTcpGroupCtl(svr.rc.TcpPortManager)
|
||||||
|
|
||||||
// Init assets
|
// Init assets
|
||||||
err = assets.Load(cfg.AssetsDir)
|
err = assets.Load(cfg.AssetsDir, assets.Frps)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
err = fmt.Errorf("Load assets error: %v", err)
|
err = fmt.Errorf("Load assets error: %v", err)
|
||||||
return
|
return
|
||||||
|
Loading…
Reference in New Issue
Block a user