1 准备工作
1.一个树莓派(在家中通过路由器上网)
2.一台具有公网ip的云主机(这里选用阿里云主机)
3.一个域名,解析到云主机的ip(这里选用在阿里云注册的域名 www.tangke8.com )
2 修改hosts文件
阿里云主机上:
cloud@aliyun:~$ sudo vim /etc/hosts
增加如下内容(你想用的子域名)
127.0.0.1 tangke8.com
127.0.0.1 www.tangke8.com
127.0.0.1 pi.tangke8.com
127.0.0.1 frp.tangke8.com
3 增加DNS解析
https://swas.console.aliyun.com/
在阿里云控制台上增加对子域名的解析(都解析到同一个ip上)
4 树莓派添加虚拟主机
更改树莓派仪表盘的根目录
cloud@server:~ $ sudo mkdir -p /var/www/pi/
cloud@server:~ $ sudo mv /var/www/html/pi-dashboard/ /var/www/pi/html
cloud@server:~ $ cd /etc/nginx/sites-available/
cloud@server:/etc/nginx/sites-available $ sudo vim pi
配置虚拟主机的监听端口、根目录等
server {
listen 55103;
root /var/www/pi/html;
index index.html index.htm index.nginx-debian.html index.php;
server_name pi.tangke8.com;
location / {
index index.html index.htm index.php default.html default.htm default.php;
}
location ~\.php$ {
fastcgi_pass unix:/run/php/php8.0-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
建立软连接
cloud@server:/etc/nginx/sites-available $ cd /etc/nginx/sites-enabled
cloud@server:/etc/nginx/sites-enabled $ sudo ln -s /etc/nginx/sites-available/pi pi
cloud@server:/etc/nginx/sites-enabled $ sudo service nginx restart
5 使用frp将树莓派的80端口映射到公网ip的80端口
关闭阿里云的80端口的服务(如Nginx)
cloud@aliyun:~$ sudo service nginx stop
5.1 配置frp
阿里云frps.ini
[common]
bind_port = 55100
dashboard_port = 55104
dashboard_user = admin
dashboard_pwd = passwd
vhost_http_port = 80
树莓派frpc.ini
[common]
server_addr = ${阿里云ip}
server_port = 55100
admin_addr = 127.0.0.1
admin_port = 55101
admin_user = admin
admin_pwd = passwd
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 55102
[web]
type = http
local_ip = 127.0.0.1
local_port = 80
custom_domains = tangke8.com
[web-www]
type = http
local_ip = 127.0.0.1
local_port = 80
custom_domains = www.tangke8.com
[web-pi]
type = http
local_ip = 127.0.0.1
local_port = 55103
custom_domains = pi.tangke8.com
[web-frp]
type = http
local_ip = ${阿里云ip}
local_port = 55104
custom_domains = frp.tangke8.com
5.2 重启frp
阿里云:
cloud@aliyun:~ $ sudo nohup /opt/module/frp/frps -c /opt/module/frp/frps.ini >> /opt/module/frp/frps.log 2>&1 &
树莓派:
cloud@server:~ $ sudo nohup /opt/module/frp/frpc -c /opt/module/frp/frpc.ini >> /opt/module/frp/frpc.log 2>&1 &
6 访问
通过 http://www.tangke8.com 访问树莓派的80端口提供的web服务
通过 http://pi.tangke8.com 访问树莓派的仪表盘
通过 http://frp.tangke8.com 访问frp的仪表盘
文章有(1)条网友点评
🐎住有空学习