修改FRP默认的http404页面后自行编译
配置Go环境
安装依赖
# Ubuntu $ sudo apt-get install bison ed gawk gcc libc6-dev make # CentOS $ sudo yum install gcc
下载安装Go
Golang各版本的下载地址 https://golang.org/dl/
# 下载当前最新版的 $ wget https://golang.org/dl/go1.16.2.linux-amd64.tar.gz # 解压到/usr/local $ sudo tar -C /usr/local -xzf go1.16.2.linux-amd64.tar.gz
# 添加环境变量 $ vim /etc/profile 在文件的底部添加以下两行: export PATH=$PATH:/usr/local/go/bin export GOPATH=/usr/local/gopath :wq 保存退出后,重新加载profile文件 $ source /etc/profile
测试Go环境,有输出即可
$ go version
下载修改frp
下载frp
$ go get github.com/fatedier/frp
go get是默认下载到go环境的gopath目录下面.当前最新frp是v0.36.2,如果frp有版本号更新可以自行到进入到目录
(建议直接最新版)
$ cd /usr/local/gopath/pkg/mod/github.com/fatedier/frp@v0.36.2
frp 的http 404页面写死在frp目录的pkg/util/vhost/resource.go文件里
$ cd /usr/local/gopath/pkg/mod/github.com/fatedier/frp@v0.36.2/pkg/util/vhost $ vi resource.go
在resource.go文件里面的const这节,可以很清楚看到http 404的html配置,做一下简单的修改,去掉能暴露出来的frp的标识。
原文件内容是
根据需求简单修改
:wq! 强制修改保存退出
重新编译
修改完文件,返回到frp目录
$ cd /usr/local/gopath/pkg/mod/github.com/fatedier/frp@v0.36.2 $ make
稍等一会,会有一堆输出。编译完之后,frpc和frps在fatedier/frp@v0.36.2/bin目录里
$ cd /usr/local/gopath/pkg/mod/github.com/fatedier/frp@v0.36.2/bin
因为我们只需要修改frps的404页面,替换编译好的frps就行了。frp在有http 404错误就是我们修改过的页面