wget *.tar.gz
tar -zxvf *.tar.gz
解壓後的目錄如下
total 21112
-rwxrwxr-x. 1 1000 1000 10400928 mar 26 19:33 frpc
-rw-rw-r--. 1 1000 1000 6450 mar 26 19:35 frpc_full.ini
-rw-rw-r--. 1 1000 1000 285 mar 28 09:26 frpc.ini
-rw-rw----. 1 root root 115 mar 28 09:08 frpc.log
-rwxrwxr-x. 1 1000 1000 11129280 mar 26 19:33 frps
-r--r-----. 1 root root 20296 mar 27 18:43 frps.2019-03-27.log
-rw-rw-r--. 1 1000 1000 2212 mar 27 18:11 frps_full.ini
-rw-rw-r--. 1 1000 1000 26 mar 28 09:03 frps.ini
-rw-rw----. 1 root root 17209 mar 28 11:24 frps.log
-rw-rw-r--. 1 1000 1000 11358 mar 26 19:35 license
drwxrwxr-x. 2 1000 1000 88 mar 26 19:35 systemd
frps啟動需要指向*.ini配置檔案,在目錄下我們選擇frps_full.ini作為我們的配置檔案
配置檔案中大多數配置不需要修改,需要注意的是下面賬戶和密碼,需要在c端保持一致
dashboard_user = admin
dashboard_pwd = admin
唯一乙個需要修改的地方token,預設是12345678,我們需要修改為我們自己配置的,保證服務端的安全性
token = 自己配置的token密碼
啟動frps的時候我們選擇後台啟動,防止我們關閉shell或者關閉ssh服務後frps停止
frps_full.ini : 是我們啟動的時候指向的配置檔案,
當然如果你選擇的配置檔案是frps.ini,就指向到frps.ini
nohup ./frps -c frps_full.ini &
使用命令列 tail -f nohup.out 檢視啟動日誌,一般日誌檔案下沒有啟動資訊,暫時沒有找到原因
注意:資料夾內是沒有frp.vbs檔案的,下面我會描述下此檔案
修改frpc配置檔案: frpc.ini
我們需要修改 [common]內的資訊,其他的不需要修改,預設即可
[common]
server_addr = 上方搭建frps服務的虛擬機器的ip
server_port = 7000
token = frps配置檔案中的token值
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
當我們直接雙擊frpc.exe的時候,黑視窗會告訴我們:
請進入到cmd視窗執行此檔案
this is a command line tool.
you need to open cmd.exe and run it from there.
開啟cmd視窗進入到frp的資料夾內執行frpc.exe
microsoft windows [版本 10.0.17134.648]
(c) 2018 microsoft corporation。保留所有權利。
d:\program files\frp\frp_0.25.3_windows_amd64>frpc.exe
2019/03/28 13:19:49 [i] [service.go:221] login to server success, get run id [f75fd636b5f34848], server udp port [7001]
2019/03/28 13:19:49 [i] [proxy_manager.go:137] [f75fd636b5f34848] proxy added: [ssh]
2019/03/28 13:19:49 [w] [control.go:142] [ssh] start error: port already used
2019/03/28 13:19:49 [w] [control.go:142] [gk-admin] start error: port already used
如上所示,便是啟動成功
這時候就出現乙個問題了,我們一直保證cmd視窗開啟,很影響我們使用和操作
我在這裡是寫了乙個frp.vbs指令碼來實現後台啟動frpc.exe,注意這個frp.vbs必須放在frp的目錄下,因為我在指令碼中使用的是相對路徑
frpc.exe -c frpc.ini代表的就是使用frpc.ini配置檔案啟動frpc.exe
如下所示:
dim objshell
set objshell=wscript.createobject("wscript.shell")
ireturncode=objshell.run("frpc.exe -c frpc.ini",0,true)
雙擊frp.vbs
雙擊此檔案是沒有反應的,不要著急,在任務管理器中看到以下服務便是啟動成功了
配置http穿透由兩種方式:
第一種是http穿透,這個比較麻煩,如果只是平常測試使用不建議使用此方法,此方法的關鍵是把本地ip網域名稱解析到frps服務端
這裡我描述下第二種方法,使用tcp方法穿透http訪問
local_ip: 代表客戶端的ip
local_port: 代表http服務的埠號
remote_port: 代表對映到服務端的埠號
[服務名稱]
type = tcp
local_ip = 127.0.0.1
local_port = 8089
use_encryption = false
use_compression = false
remote_port = 8089
在你本地啟動http服務,使用以下請求方式即可訪問到本地的http
http:// 服務端的ip : 服務端的port / 補全完整的http請求
前端實現路由
後端實現的路由本質是通過伺服器 與路徑的配合去訪問伺服器上的靜態資源。而我們現在的專案都是單頁面,路由控制權都是放在前端了。前端框架現在都是單頁面模式,了解他們實現的本質變得重中之重。前端實現路由有兩種方式 hash 與 history hash原本是作為頁面定位使用,本身會在url後攜帶 切換路由...
Flask 路由實現
flask路由實現 處理url和函式之間繫結關係的程式 路由控制訪問的路徑,路徑能訪問到什麼是由後端來控制的 裝飾器新增路由表實現路由 路由對映表 path map defroute url,kwargs def decorator f path map url f return f return ...
路由的基本實現 hash路由
vue react在路由的實現上,都有基於hash的路由。那麼如何使用原生來實現呢?比如類似下面這樣的路由 hash實現路由的時候,最本質的原理就是hash值的變化,會引發乙個hashchange事件,可以根據這個hash值的變化,載入不同的dom。html divclass box flex bo...