当前位置: 首页 > news >正文

Linux使用宝塔面板+Discuz+cpolar内网穿透工具搭建可公网访问论坛

Linux宝塔面板搭建Discuz论坛, 并内网穿透实现公网访问

文章目录

    • Linux宝塔面板搭建Discuz论坛, 并内网穿透实现公网访问
    • 前言
        • 1.安装基础环境
        • 2.一键部署Discuz
        • 3.安装cpolar工具
        • 4.配置域名访问Discuz
        • 5.固定域名公网地址
        • 6.配置Discuz论坛

前言

Crossday Discuz! Board(以下简称 Discuz!)是一套通用的社区论坛软件系统,用户可以在不需要任何编程的基础上,通过简单的设置和安装,在互联网上搭建起具备完善功能、很强负载能力和可高度定制的论坛服务。

下面我们在Linux上使用宝塔面板+Discuz+cpolar内网穿透工具结合,搭建一套发布到互联网环境的论坛服务,无需公网IP服务器、也无需设置路由器。

1.安装基础环境

安装PHP版本,由于Discuz支持的最高PHP7.4版本环境,我们在面板中安装PHP7.0版本,搜索PHP,即可看到,然后点击安装即可

image-20230315114812470

安装一个数据库,如果已经安装,可以跳过,点击面板上数据库,点击安装

image-20230314180023904

然后修改一下数据库密码,改成自己能记住的密码,用户名为root

image-20230314180357402

2.一键部署Discuz

在面板中搜索一下关键字Discuz,然后点击一键部署

image-20230315132925646

设置参数,域名设置本机域名127.0.0.1,端口号可以自定义,然后设置数据库账号密码,数据库用户名和密码自己设置,点击提交,然后等待下载完成

image-20230315141442776

然后我们点击面板中的网站,即可看到我们刚刚部署的站点,

image-20230315140745617

接下来在面板中开放一个端口:8089

image-20230315141732450

打开浏览器,使用Linux 局域网ip+:8090(上面设置的端口号)进行访问,出现安装向导界面表示成功

image-20230315141848464

3.安装cpolar工具

打开宝塔终端命令窗口,使用cpolar一件安装脚本:

curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash

image-20230303183721806

token认证

登录cpolar官网www.cpolar.com,点击左侧的验证,查看自己的认证token,之后将token贴在命令行里

cpolar authtoken xxxxxxx

20230111103532

向系统添加服务

sudo systemctl enable cpolar

启动cpolar服务

sudo systemctl start cpolar

在宝塔面板中选择安全.然后开放9200端口

image-20230303184430176

然后数据Linux局域网ip+:9200端口即可出现cpolar管理界面

image-20230303184618711

输入官网注册的账号登陆即可对隧道进行操作.

4.配置域名访问Discuz

我们在cpolar管理界面创建一个随机的8089的隧道:

  • 隧道名称:可自定义,注意不要重复
  • 协议:http
  • 本地地址:8089
  • 端口类型:随机域名
  • 地区:China vip

点击创建

image-20230315144256453

然后打开在线隧道列表,查看创建隧道的公网地址,复制地址

打开浏览器,使用上面的公网地址访问,既然出现了欢迎页,表示成功

image-20230315144954997

5.固定域名公网地址

需升级至基础套餐或以上才支持配置固定域名

登录cpolar官网后台,点击左侧仪表盘的预留,找到保留二级子域名,为http隧道保留一个二级子域名。

  • 地区:选择服务器地区
  • 名称:填写您想要保留的二级子域名(可自定义)
  • 描述:即备注,可自定义填写

image-20230315150417685

本例保留一个名称为DiscuzTest的二级子域名。子域名保留成功后,我们将子域名复制下来,接下来需要将其配置绑定到隧道中去。

image-20230315150447911

登录cpolar web ui管理界面。点击左侧仪表盘的隧道管理——隧道列表,找到需要配置二级子域名的隧道(本例中为Discuz隧道),点击右侧的编辑

image-20230315145802386

修改隧道信息,将二级子域名配置到隧道中:

  • 域名类型:改为选择二级子域名
  • Sub Domain:填写我们刚刚所保留的二级子域名(本例为typechoTest

修改完成后,点击更新

image-20230315150653173

隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,可以看到DiscuzTest隧道的公网地址,已经更新为二级子域名了,将公网地址复制下来。

image-20230315150728034

打开浏览器,我们来测试一下访问配置成功的二级子域名,出现安装向导界面表示成功,可以正常访问。现在,我们全网唯一的私有二级子域名,就创建好了。

image-20230315151503791

6.配置Discuz论坛

点击我同意后,出现提示信息说版本太老,取消即可继续安装

image-20230315151647274

点击下一步

image-20230315151742613

选择全新安装

image-20230315151912495

然后需要配置数据库,我们填写数据库root用户名和root的密码,然后设置管理员密码,点击下一步

image-20230315152402908

然后就安装完成啦,点击访问

image-20230315152500793

然后我们已经搭建好了Discuz论坛,并且结合了cpolar映射的公网域名地址,可以远程访问啦,不受局域网络限制

image-20230315152701056

相关文章:

  • ASP.NET Core 启用CORS
  • 入选数据结构与算法领域内容榜第26名
  • 在线定制印刷系统源码/定制云印刷/个性印刷在线DIY定制商城系统/全站DIV+CSS 布局+手机、PC端
  • 【机器学习 | ARIMA】经典时间序列模型ARIMA定阶最佳实践,确定不来看看?
  • 精准人脉引流软件的开发流程与涉及到的技术
  • 学习Pandas 二(Pandas缺失值处理、数据离散化、合并、交叉表与透视表、分组与聚合)
  • NeurIPS 2023 | RGIB:对抗双边图噪声的鲁棒图学习
  • ssh远程连接不了虚拟机ubuntu
  • Android 11.0 默认开启USB调试功能
  • 带记忆的超级GPT智能体,能做饭、煮咖啡、整理家务!
  • 正则表达式(Java)(韩顺平笔记)
  • 【数据结构 —— 堆的实现(顺序表)】
  • Node.js入门指南(三)
  • 雅可比矩阵(Jacobian Matrix)
  • 振南技术干货集:制冷设备大型IoT监测项目研发纪实(2)
  • @angular/forms 源码解析之双向绑定
  • 2017年终总结、随想
  • Facebook AccountKit 接入的坑点
  • Java IO学习笔记一
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • Mac转Windows的拯救指南
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • 翻译:Hystrix - How To Use
  • 高度不固定时垂直居中
  • 罗辑思维在全链路压测方面的实践和工作笔记
  • 前端面试总结(at, md)
  • 深入浏览器事件循环的本质
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 微信小程序上拉加载:onReachBottom详解+设置触发距离
  • Python 之网络式编程
  • 扩展资源服务器解决oauth2 性能瓶颈
  • 如何用纯 CSS 创作一个菱形 loader 动画
  • #微信小程序:微信小程序常见的配置传旨
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • $forceUpdate()函数
  • $NOIp2018$劝退记
  • (二)springcloud实战之config配置中心
  • (分布式缓存)Redis持久化
  • (附源码)SSM环卫人员管理平台 计算机毕设36412
  • (附源码)ssm基于jsp高校选课系统 毕业设计 291627
  • (每日持续更新)jdk api之StringBufferInputStream基础、应用、实战
  • (转)MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在
  • (总结)Linux下的暴力密码在线破解工具Hydra详解
  • .Net 知识杂记
  • .NET是什么
  • .Net中间语言BeforeFieldInit
  • .sdf和.msp文件读取
  • @RequestBody与@ResponseBody的使用
  • @SuppressLint(NewApi)和@TargetApi()的区别
  • [].shift.call( arguments ) 和 [].slice.call( arguments )
  • [20171102]视图v$session中process字段含义
  • [C#]OpenCvSharp使用帧差法或者三帧差法检测移动物体
  • [C/C++]数据结构 堆的详解
  • [CC2642r1] ble5 stacks 蓝牙协议栈 介绍和理解
  • [CF494C]Helping People