下面举例子用我的测试域名test.java-er.com 进行穿透
服务器上frps.ini文件增加vhost_http_port=82
[common]
bind_port = 7000
vhost_http_port = 82 #端口自己喜好来定
客户端机器 frpc.ini文件增加节点[web]
[common]
server_addr = 47.95.XX.XX #服务器IP
server_port = 7000
[web]
type = http
local_port = 80 #本地http服务端口
custom_domains = test.java-er.com #服务器的域名
本地客户端机器apache配置文件端口为80,但是域名为test.java-er.com
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/Users/ge/ge/web/php/ge/javaer/h5"
ServerName test.java-er.com
# ServerAlias www.dummy-host.example.com
ErrorLog "logs/dummy-host.example.com-error_log"
CustomLog "logs/dummy-host.example.com-access_log" common
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
最终访问的地址不是80,是通过了服务器的test.java-er.com:82穿透到本地http的80端口,所以外网访问地址为test.java-er.com:82
我在本地放一个文件index.php
';
echo '我是月小升本地机器的php文件index.php, 访问我的地址test.java-er.com:82';
?>
2019-7-21更新
https配置
# frpc.ini
[common]
server_addr = x.x.x.x
server_port = 7000
[test_htts2http]
type = https
custom_domains = test.yourdomain.com
plugin = https2http
plugin_local_addr = 127.0.0.1:80
# HTTPS 证书相关的配置
plugin_crt_path = ./server.crt
plugin_key_path = ./server.key
plugin_host_header_rewrite = 127.0.0.1
1.本地的服务依然是http
2.https的key和crt 存在本地,配置给frp,不用在apache里配置,apache配置依然是http的。frp会帮助我们转化http为https
2019-08-15 内网机器断电重启动,https服务失效,查了半天
plugin_crt_path = ./server.crt
plugin_key_path = ./server.key
找不到ssl认证文件了。 所以以后配置路径开始就写全路径 /home/ssl/server.crt 就好了。
You must be logged in to post a comment.
请问域名的DNS是不是需要设置什么?
小白求指点…
域名解析到中转服务器上
为啥我会出现《无法访问此网站 xxxxx拒绝了我们的连接请求。》,然后如果我在frpc里面加#host_header_rewrite=xxxx,确实能访问,但是页面缺失,而且地址还是内网的192.168.x.xxx
看不太懂,先不要rewrite试试。写个普通的php