前言
最近这段时间都在开发微信服务(公众)号相关技术,对于写了好几年的后端程序的我来说,开发小程序和服务号,刚开始确实有点挑战。不过没办法,项目压在我这里,作为项目的leader,担子我不挑谁挑。
好了,步入正题,微信服务号开发的时候,最大的麻烦处就在于,调试不支持本地调试,项目得部署到服务器上,通过配置的服务器回调地址,才可进行调试。
介此,开发效率大大的降低,而且程序员的经理都浪费到了编译、clean、构建、打包、部署、启动这一系列的操作上,费时又费力。困难是有,但是办法也不是没有,我们可以借助市面上不同的内网穿透工具来解决这个不便。
内网穿透工具
市面上的内网穿透工具,可所谓一搜一大把。
琳琅满目的商品,我们该如何选择呢?我刚开始也不会选,网上好多人推荐用netapp
,于是,我就去看了看。
官方推出了好多方案,免费的收费的都有。并且有人指出免费的不稳定,域名啥的经常换。为了项目的开发稳定,决定拿点真金白银买个付费的吧。结果买完之后配置了下,启动是个空白……
放弃了。
又搜了搜,找到了frp
,配置了下,居然可以了。下面我来分享下配置的方法。
frp配置
下载
首先我们需要去官网上下载一下对应的版本,下载地址:这里
我这边下载了两个,因为一个是本地的windows
计算机,另一个是linux
服务器上需要用到的。
安装
没啥好安装的,直接找个地方将解压出来的文件拉进去就行,记得要放开文件的执行权限哈,不然会报没有权限的错。
服务器:
本地计算机:
这是我所放的地址,你放哪里都没有关系。
注意:
- 放开服务器的6000和7000端口
- 服务器上权限记得改一下
- 服务器上用的是
frps
的文件,frpc
相关的都可以删掉了 - 本地用的是
frpc
的文件,frps
的都可以删掉了
修改配置文件
服务器
打开frps.ini
文件。默认就一个端口,7000的,改不改都行。
[common]
bind_port = 7000
本地
打开frpc.ini
文件,按照下面的格式改:
[common]
server_addr = 你服务器的地址
server_port = 7000
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 你项目的端口,我这边是7890
remote_port = 6000
把内容中的汉字改一下,保存就行。
启动
在服务器中,直接通过终端进入frps
所在的路径下,输入:./ frps -c ./frps.ini
,直接回车即可。
在本地,也是进入frpc
所在的目录下,在地址栏的部分输入:cmd
然后回车,进去DOS
窗口,直接输入命令:frpc -c frpc.ini
,回车即可。
就是这样的,启动成功。
使用 systemd
这一步主要是可以让frps
在linux
后台启动,不然你的服务器启动窗口一关掉,frps
对应的也会关闭,及其不方便。
- 安装
systemd
执行:yum install systemd
- 在本地创建文件
frps.service
,写上如下内容:
[Unit]
Description = frps
After = network.target syslog.target
Wants = network.target
[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /www/xxx/frps-linuxs/frps -c /www/xxx/frps-linuxs/frps.ini
[Install]
WantedBy = multi-user.target
注意:ExecStart
是你的frps
文件所在的路径,不要写错了。-c
前后有空格。
- 将该文件传到服务器的:
/etc/systemd/system/
目录下。 - 现在我们就可以使用
systemd
命令来直接管理frps
啦,常见命令如下:
# 启动frp
systemctl start frps
# 停止frp
systemctl stop frps
# 重启frp
systemctl restart frps
# 查看frp状态
systemctl status frps
- 配置
frps
开机自启。
systemctl enable frps
就这样,就可以啦。欢迎在评论区留言,不错的话,点个赞呗。