由于现在越来越多的宽带服务商不提供公网IP,想要在本地服务器建立网站就会遇到无法访问的问题。下面就是我在群晖nas上搭建网站并通过内网穿透访问的全流程记录。
需要准备:
1.群晖nas并正常联网使用。
2.一台vps服务器。
3.一个域名,解析到服务器地址。
之所以在本地搭建网站,主要是因为我恰好有一台群晖nas,可以用来建站。并且如果购买vps服务器来搭建网站还需要一笔费用,由于个人网站对访问速度的要求也不高,索性就在本地建站。其实真实原因还是穷。 :)
群晖nas使用过的人都比较熟悉,它对于很多常用需求的支持基本实现了自动化部署,此次搭建网站使用的就是群晖的web station套件。
一、在群辉配置wordpress博客
此部分参考文章为→1.群晖建立wordpress 2.通过frp访问群晖
首先需要在群晖套件中心安装以下套件:
-
- Web Station
- Apache HTTP Server 2.4
- PHP 7.2
- MariaDB 10
- phpMyAdmin

安装完成后,在浏览器中输入http://192.168.x.x:phpMyAdmin
注意:1.ip地址为你的群晖服务器内网地址。2.注意phpMyAdmin的大小写
- 账号root
- 密码为安装MariaDB 10套件时设置的密码
- 选择服务器-MariaDB 10


登录够创建网站数据库,点击“新建”→填写数据库名称“wordpress”确定即可。
接下来登录wordpress官网下载最新版主程序,添加web station套件后,群晖目录下会生成一个web文件夹,在web文件夹中创建wordpress文件夹,并将下载的wordpress压缩包内文件放到该文件夹中。
复制完成后,右键wordpress文件夹点击属性,将权限拥有者改为http并勾选应用到子文件夹。


打开webstation,点击php设置,选择7.2版本,点击编辑。将扩展名全选,并确定保存配置。



接下来打开webstation套件,点击虚拟主机,点击新增,选择基于名称,并将你的域名填写到主机名栏,勾选80/443端口。文档根目录选择刚刚创建的web/wordpress文件夹,http后端服务器选择一开始安装的apache http server 2.4,php选择php7.2。


此时,你的网站已经成功部署在你的群晖nas中。但由于我没有公网IP,如果想要访问还需要配置内网穿透。(如果你有公网IP,则可以直接把域名解析到你的IP地址,并做好端口映射,即可通过域名直接访问网站,不需要再做内网穿透。)
二、配置域名解析及frp内网穿透,从外网访问网站
想要做内网穿透,你需要有一个拥有公网IP的vps服务器。此处不再介绍如何购买服务器了。以我的服务器为例,我安装的是Ubuntu 18.04 x86_64 系统。
首先ssh链接到vps,我使用的是xshell。在服务器上安装frp服务端,并配置。
进入安装目录
cd /usr/local
官方下载最新的frp服务端文件(此处可以去frp的开发git查看最新文件地址,自行替换以下代码即可)
wget https://github.com/fatedier/frp/releases/download/v0.28.2/frp_0.28.2_linux_amd64.tar.gz
解压文件
tar -xzvf frp_0.28.2_linux_amd64.tar.gz
创建frps文件夹
mkdir frps
拷贝下载的服务器端文件到frps文件夹
cd frp_0.28.2_linux_amd64
cp frps frps_full.ini frps.ini ../frps
删除无用的文件
cd /usr/local
rm -rf frp_0.24.0_linux_amd64 frp_0.24.0_linux_amd64.tar.gz
编辑frps.ini配置文件(vi命令如何使用可查看此处)
cd frps
vi frps.ini
内容修改为:
[common]
bind_addr = 0.0.0.0
bind_port = 7000
bind_udp_port = 7001
kcp_bind_port = 7000
vhost_http_port = 80 //这里是frps的http监听端口
vhost_https_port = 443 //这里是frps的https监听端口
dashboard_addr = 0.0.0.0
dashboard_port = 6443
dashboard_user = admin //这里设置你的管理面板账号
dashboard_pwd = xxxxxxxxx //这里设置你的管理面板密码
log_file = ./frps.log
log_level = info
log_max_days = 3
token = xxxxxxxxxxxxxx //这里设置你的frp token,填写无特殊要求
token allow_ports = 2000-3000,3001,3003,4000-50000
max_pool_count = 50
max_ports_per_client = 0
subdomain_host = frps.com
tcp_mux = true
注意:某些服务器需开放端口frps才能工作。
编辑完成后保存,并启动frps服务
./frps -c ./frps.ini
保持后台运行frps
nohup ./frps -c ./frps.ini &
配置systemctl来控制frps
首先创建frps.service(若服务器无vim则需先安装vim:apt install vim)
sudo vim /lib/systemd/system/frps.service
在frps.service中添加如下字段
[Unit]
Description=frps service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
ExecStart=/usr/local/frps/frps -c /usr/local/frps/frps.ini //启动服务的命令(此处写你的frps的实际安装目录)
[Install]
WantedBy=multi-user.target
编辑完成后保存,运行frps
sudo systemctl start frps
开启自动启动frps
sudo systemctl enable frps
另外重启、停止及日志查看命令分别为
sudo systemctl restart frps
sudo systemctl stop frps
sudo systemctl status frps
此时你的frp服务端已经部署完成,重启服务器
reboot
重启完成后,打开以下网址查看服务器工作状态(IP为你的vps地址)
http://xxx.xxx.xxx.xxx:6443
如显示以上画面则你的frps已经成功运行。
下面在群晖中安装frp客户端文件,首先需要开启群晖ssh功能
打开:控制面板→打开“终端机和SNMP”→启动ssh功能(安全起见,建议修改22端口为自定义端口)
打开ssh功能后,通过xshell登录群晖
打开ssh功能后,通过xshell登录群晖
ssh 用户名@192.168.x.x
输入密码-回车
sudo -i //获得root权限
输入密码-回车
进入安装目录
cd /usr/local
和安装frp服务端相同,下载frp最新版()
wget https://github.com/fatedier/frp/releases/download/v0.28.2/frp_0.28.2_linux_amd64.tar.gz
解压文件
tar -xzvf frp_0.28.2_linux_amd64.tar.gz
创建frps文件夹
mkdir frps
拷贝下载的frp文件到frps文件夹
cd frp_0.28.2_linux_amd64
cp frps frps_full.ini frps.ini ../frps
删除无用的文件
cd /usr/local
rm -rf frp_0.24.0_linux_amd64 frp_0.24.0_linux_amd64.tar.gz
编辑frps.ini配置文件
cd frps
vi frps.ini
修改配置为
[common]
server_addr = 254.254.254.254 //填写你的服务器IP或者地址
server_port = 7000 //与frps.ini的端口保持一致,默认为7000.
token = xxxxxxxxxxxxx //与frps.ini设置的token保持一致
[web1] //任意命名,不可重复.
type = http //http协议
local_ip = 127.0.0.1 //默认无需修改
local_port = 80 //http使用80端口
custom_domains = www.xxxx.com //填写你的域名
[web2] //任意命名,不可重复
type = https //https协议
local_ip = 127.0.0.1 //默认无需修改
local_port = 443 //https使用443端口
custom_domains = www.xxxx.com //填写你的域名
编辑完成后,保存并运行frpc
./frpc -c ./frpc.ini
保持后台运行frpc命令
nohup ./frpc -c ./frpc.ini &
在群晖中设置自动运行frpc
打开控制面板→选择“任务计划”→新增→触发的任务→用户自定义脚本
打开后在常规标签页填写
任务名称:frpc
用户账号:root
事件:开机
点击任务设置标签,在用户自定义脚本中填写刚才配置的frpc.ini文件路径
/usr/local/frpc/frpc -c /usr/local/frpc/frpc.ini
保存,选中刚才新增的任务,点击运行。然后勾选新增的任务,点击保存。

打开服务器端管理界面,刷新查看是否出现配置(IP为vps服务器地址)
http://xxx.xxx.xxx.xxx:6443




三、配置wordpress网站
此时,你已经可以通过域名访问你的网站了。
在浏览器中输入你的域名,打开wordpress网站


- 数据库名称填写刚才phpMyAdmin创建的数据库
- 用户名root
- 密码填写群晖安装MariaDB 10时设置的密码
- 数据库地址填写localhost:/run/mysqld/mysqld10.sock
- 提交
注意,如不成功,数据库体制可尝试以下几种
localhost:3307/run/mysqld/mysqld10.sock
127.0.0.1:/run/mysqld/mysqld10.sock
127.0.0.1:3307/run/mysqld/mysqld10.sock

提交后开始安装
- 填写站点标题
- 填写用户名
- 填写密码(一定记住,后面要用)
- 填写电子邮件
- 安装WordPress
安装完成后,就可以登录你的后台,开始浏览自己的网站了!
至此,全部流程都已完成。成功在群辉安装wordpress并建立frp内网穿透,通过域名访问。如果你的vps还有其他需求(比如境外vps通过v2ray等上网),占用了443/80端口,那么还需要通过nginx来搭建端口转发,具体流程请查看:
关于如何配置服务器端口转发确保80/443端口正常,请看→这里
最后感谢Stille的教程,相关博客地址:IOIOX
文章评论