適用環境和主要流程:
家庭內網機器(沒有公網IP或者不固定)搭建網站
采用FRP穿透到公網IP服務器(或者VPS等)
公網IP服務器通過寶塔反代FRP網站端口並配置SSL。
步驟:
1、公網IP服務搭安裝寶塔面板,過程掠過,安裝后記錄信息。
2、公網IP服務器搭建FRPS,推薦采用frps-onekey,地址:https://github.com/MvsCode/frps-onekey
按照GITHUB教程完成安裝,注意WEB端口選擇非443和80
記錄安裝完畢后的信息。
例子:
You Server IP : 152.70.000.000
Bind port : 5443
KCP support : true
vhost http port : 8080
vhost https port : 8443
Dashboard port : 6443
token : xxx
subdomain_host : 152.70.000.000
tcp_mux : true
Max Pool count : 50
Log level : info
Log max days : 3
Log file : enable
3、內網服務器安裝寶塔面板,創建網站,綁定域名abc.com 。
4、內網服務器安裝FRP,根據內網服務器類型選擇FRP包,WIN\LINUX\ARM等,下載地址:https://github.com/fatedier/frp/releases
將下載的包傳到相應的目錄,比如/WWW/FRP目錄下
1)登錄內網服務器寶塔面板后台,選擇文件功能,切換到/WWW/FRP目錄下,編輯FRPC.INI文件,輸入相關配置:
配置例子:
[common]
server_addr = 152.70.000.000 #服務器IP地址
server_port = 5443 #服務器BIND端口號
token = xxx #服務器TOKEN[web]
type = http
local_port = 80
#內網服務器WEB運行端口,可自定義
custom_domains = abc.com
#域名或服務器IP,用來外網訪問,解析到服務器IP
2)然后啟動內網服務器的FRPC,啟動命令:
CD到FRP目錄,例如:CD /WWW/FRP
修改權限,防止出現未知錯誤:chmod 777 frpc
chmod 777 frpc.ini
啟動命令:# 前台啟動 ./frpc -c ./frpc.ini #
后台啟動 ./frpc -c ./frpc.ini &
5、將abc.com的A記錄解析到公網服務器IP,例如:152.70.000.000
6、此時,通過瀏覽器訪問abc.com:8080 應該是可以正常訪問內網服務器的網站了。
7、登錄到公網IP服務器的寶塔后台,創建網站,綁定域名abc.com。
然后點開相應網站的設置,反向代理,添加反向代理,輸入目標URL: http://abc.com:8080,域名會自動代入,其他留空,點擊保存。
此時應該可以通過abc.com直接訪問了,不再需要端口號。
8、配置SSL,登錄到公網IP服務器的寶塔后台,切換到網站,選擇相應網站的設置,切換到SSL,選擇Let's Encrypt 直接申請,然后點擊窗口右上角的強制HTTPS,此時就完成了SSL的配置。
9、完畢。