轻松部署高颜值社区,在Ubuntu上搭建Cpolar+HYBBS论坛指南

news2024/12/22 20:14:53

文章目录

  • 前言
    • 1. HYBBS网站搭建
      • 1.1 HYBBS网站安装
      • 1.2 HYBBS网站测试
      • 1.3. cpolar的安装和注册
    • 2. 本地网页发布
      • 2.1.Cpolar临时数据隧道
      • 2.2.Cpolar稳定隧道(云端设置)
      • 2.3.Cpolar稳定隧道(本地设置)
    • 3.公网访问测试
    • 总结

在这里插入图片描述

前言

在国内互联网刚刚起步时,网上的内容远没有现今这般丰富,甚至当下耳熟能详的各个互联网大厂,彼时都还没有诞生。那时候的网民上网,大多数时候只能浏览门户网站的新闻,或者到各个BBS上灌水发帖。随着时代发展,互联网的内容和应用逐渐丰富,曾经风光无二的BBS论坛,也都退去光环,逐渐成为远古的记忆。但BBS论坛这种交流方式,并没有随着即时通讯的兴起而被尘封。不少情况下,在论坛BBS上发帖公布信息,仍是与志同道合的陌生人(或行业、公司内部)交流的有效方式。今天,笔者就为大家介绍,如何使用Cpolar+HYBBS,在Ubuntu系统上搭建一个好看、轻巧且扩展功能强大的论坛网站。

1. HYBBS网站搭建

HYBBS是一款比较著名的开源BBS网页,虽然是轻量化的论坛程序,但其功能并不弱,并且可以通过安装功能插件和外观模板,为HYBBS添加更多功能和外观界面。最重要的是,HYBBS的轻量化设计,不会为笔者老旧的电脑设备添加太多负担。

1.1 HYBBS网站安装

HYBBS论坛的使用群体并不小,因此有自己的官方网站(flarum.hyphp.vip/),我们可以在这里与其他HYBBS使用者进行交流,获取各种技术支持和疑难解答。

img

在HYBBS官网,我们可以看到HYBBS支持多个版本的php(至少5.4及以上),但必须使用MySQL数据库软件。

为构建HYBBS所需的运行环境,我们需要先在宝塔面板上安装Apache、MySQL、PHP(即所谓的LAMP,如果是在Linux下安装Nginx、MySQL、PHP,则称为LNMP)。

通常第一次登录宝塔面板,只要本地硬件设备上没有安装过Apache、MySQL、PHP这些软件,宝塔面板就会自动弹出询问,选择安装哪些网页运行程序。

img

我们也可以在宝塔面板的主页(可以在浏览器中输入本地地址:宝塔面板输出端口号)左侧,找到“软件商店”按钮,点击进入软件商店页面。在这个页面,我们可以找到常用的网站运行支持程序,包括Nginx、Apache、MySQL、PHP、phpMyadmin、Tomcat、Docker管理器、Redis等等。我们找到所需的软件,点击该软件条目右侧的“安装”,即可将其安装至ubuntu系统上。

img

完成Apache、MySQL、PHP几项软件的安装后,我们可以点击软件商店页面上方的“已安装”按钮,查看已经安装的软件。同时,也可以在这里切换每个软件的版本。

HYBBS网站所需的运行环境构建完成后,就可以进入HYBBS网站的搭建工作。一般来说,我们需要将网站源码放入宝塔面板的wwwroot文件夹下,再运行网站安装程序。不过好在HYBBS可以在宝塔面板的“一键部署”页面进行快捷安装,这就为笔者省了不少事。

我们点击宝塔面板主界面左侧的“软件商店”。进入软件商店后,在页面上方找到“一键部署”按钮,进入可以一键部署的网站分页,从中选取“HYBBS”条目,点击该条目右侧的“一键部署”按钮,

img

接下来会弹出网站基本设置窗口,在这里我们可以指定网站的基本信息,这些信息包括:

输出端口号 - 在“域名”栏位,通过“打算设置的域名:打算使用的端口”形式设置;这里笔者选择83端口输出HYBBS网站

根目录 – 这个栏位可改可不改,但这个根目录内容会与“域名”栏位联动,因此笔者将其更改为hybbs

数据库 – 这里填入我们之前设置的数据库信息即可;

PHP版本 – 对于某些网站可能会要求使用特定版本的PHP,我们就可以在PHP版本栏位修改(前提是已经安装了对应版本的PHP软件),比如该网站,就要求php5.4,因此这里也选择php5.4

完成这些设置后,就可以点击窗口下方的“提交”按钮,创建HYBBS网站。

img

网站创建完成后(几乎是一瞬间的事),宝塔面板会弹出已创建网站的地址,重要的网站信息(可能是数据库信息,或是网站后台登录信息)。

img

下一步在ubuntu的宝塔面板左侧,点击“网站”按钮,进入网站列表页面,就能看到刚刚安装上线的HYBBS网站。

img

1.2 HYBBS网站测试

我们在ubuntu的浏览器地址栏输入之前设置的HYBBS网站地址,就能访问到本地HYBBS网站。

img

虽然现在的网站看着很简单,但我们可以登录HYBBS网站的后台,对论坛添加插件和模板,进行内容丰富和外观更改。

img

img

1.3. cpolar的安装和注册

完成HYBBS网站的部署后,就可以安装cpolar。要在ubuntu系统上安装cpolar,可以使用简便的一键安装脚本进行安装。只要在ubuntu的命令行界面输入以下命令,就可以自动执行安装程序(需要注意的是,可能有的ubuntu版本没有安装curl工具,因此最好先执行命令“sudo aptinstall curl”安装curl工具)。

Cpolar一键安装脚本:

“curl -L

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

img

Cpolar安装完成后,就可以再输入命令“systemctl start cpolar”,启动cpolar。

img

这时ubuntu系统会跳出启动服务的认证框,我们输入ubuntu系统的密码即可。

img

当然,我们也可以不使用systemctl级别命令,而是输入“cpolar version”查询本地cpolar的版本号,只要能显示出版本信息,就说明cpolar安装完成。

img

为保证cpolar能在ubuntu系统上长期运行,以此保证数据隧道的稳定存续,最好将cpolar添加进ubuntu开机自启列表。只要在ubuntu的命令行界面,输入命令“sudo systemctl status cpolar”,就能将cpolar添加进自启列表中。

img

为保证每位用户的数据安全,并为每位客户创建单独的数据隧道,cpolar以用户密码和token码进行用户验证,因此我们在使用cpolar之前,需要进行用户注册。注册过程非常简单,只要在cpolar主页右上角点击“用户注册”,在注册页面填入必要信息,就能完成注册。

img

img

完成cpolar用户注册后,我们就可以使用每位用户唯一的token码,激活cpolar的客户端。只要在cpolar官网登录后,就可以在“验证”页面(或是“连接您的账户”窗口),找到用户唯一的token码。

img

将这个token码复制粘贴到ubuntu的命令行界面,cpolar客户端就会将这个token码写入本地cpolar.yml文件中(token码激活只需要进行一次即可),以此作为用户数据隧道的识别信息。具体命令格式为“cpolar authtoken 用户唯一的token码”。

img

2. 本地网页发布

此时我们在本地设备上安装了网页,也安装了cpolar内网穿透程序,接下来我们就可以使用cpolar,为本地HYBBS网站创建一个安全高效的数据隧道,让我们本地的网页能够在公共互联网上访问到。

2.1.Cpolar临时数据隧道

围板欧证我们的HYBBS网站能够正常运行,cpolar可以直接在cpolar户端创建临时数据隧道,对网页进行测试(每隔24小时重置一次公共互联网地址)。要创建临时数据隧道,我们直接在本地设备上登录cpolar客户端(在浏览器地址栏输入localhost:9200),并在cpolar客户端主界面点击“隧道管理”项下的“创建隧道”按钮,进入创建隧道设置页面。

img

在“创建隧道”页面,我们需要对几项信息设置,这些信息设置包括:

隧道名称 – 可以看做cpolar客户端的隧道备注,只要方便我们分辨即可,这里我们填入HYBBS测试;

协议 –HYBBS网站是网页程序,因此选择http协议;

本地地址 – 本地地址即为本地网站的输出端口号,此处依照我们之前的设置,填入83;

域名类型 –这里我们可以选择打算建立的数据隧道是临时使用,还是长期存续。此时我们只是先进行临时HYBBS访问测试,因此选择“随机域名”(二级子域名和自定义域名都是长期稳定隧道,需要在cpolar云端预留公共互联网地址)。

地区 – 即服务器所在位置,我们依照实际使用地就近填写即可;

img

完成这几项设置后,就可以点击页面下方的“创建”按钮,建立起一条临时数据隧道。临时数据隧道创建完成后,cpolar客户端会自动跳转至“隧道管理”项下的“隧道列表”页面,在这里我们可以看到cpolar本地的所有数据隧道(无论临时还是长期)。

我们也可以在这里对数据隧道进行管理,包括开启、关闭或删除这条隧道,也可以点击“编辑”按钮,、对这条数据隧道的信息进行修改。

img

我们创建的能够连接本地网站的临时公共互联网网址,则可以在“状态”项下的“在线隧道列表”中找到。

img

将这里显示的公共互联网地址粘贴到Ubuntu的浏览器地址栏,就能访问到本地的HYBBS网站页面。

img

不过,此时的数据隧道只是临时数据隧道,每24小时就会重置一次。数据隧道重置后,cpolar生成的公共互联网地址就会变化,如果打算再次访问这个网页,就需要使用新生成的地址。

2.2.Cpolar稳定隧道(云端设置)

如果想要为本地网站设置能长期稳定存在的数据隧道,我们需要先将cpolar升级至VIP版。

img

Cpolar升级至付费版后,就可以登录cpolar的官网,并在用户主页面左侧找到“预留”按钮,点击进入cpolar的数据隧道预留页面,在这里生成一个公共互联网地址(或称为数据隧道的入口)。此时这个地址没有连接本地的软件输出端口,因此可以看做是一条空白的数据隧道。

img

在预留页面,我们可以保留使用多种协议的数据隧道,这里我们选择“保留二级子域名”栏位。

img

在“保留二级子域名”栏位,需要进行几项信息的简单设置,即“地区”(服务器所在区域,就近选择即可)、“二级域名”(会最终出现在生成的公共互联网地址中,作为网络地址的标识之一)和“描述”(可以看做这条数据隧道的描述,能够与其他隧道区分开即可)。完成这几项设置后,就可以点击右侧的“保留”按钮,将这条数据隧道保留下来。

img

当然,如果这条数据隧道不打算再使用,还可以点击右侧的“x”将其轻松删除,节约宝贵的隧道名额。

img

2.3.Cpolar稳定隧道(本地设置)

完成cpolar云端的设置,并保留了空白数据隧道后,我们回到本地的cpolar客户端,将云端生成的空白数据隧道与本地的测试页面连接起来。

在本地设备上打开并登录cpolar客户端(可以在浏览器中输入localhost:9200直接访问)。

进入本地cpolar客户端后,点击客户端主界面左侧“隧道管理”项下的“隧道列表”按钮,进入本地隧道的页面,再点击对应隧道的“编辑”按钮。

img

在本地隧道的“编辑”页面(与创建本地临时隧道的页面一样),我们只要对“域名类型”进行修改,就能将cpolar云端设保留的公共互联网地址,与本地cpolar创建的HYBBS网站数据隧道连接起来。

由于我们已经在cpolar云端预留了二级子域名的数据隧道,因此改选为“二级子域名”(如果预留的是自定义域名,则勾选自定义域名),并在下一行“Sub Domain”栏中填入预留的二级子域名,这里我们填入“HYBBStest”。

img

完成“域名类型”的更改后,就可以点击页面下方的“更新”按钮,将cpolar云端的空白数据隧道与本地HYBBS网站连接起来,创建新的能够长期稳定存续的数据隧道。

3.公网访问测试

最后,我们再次进入“在线隧道列表”页面,就会发现HYBBS网站的公共互联网地址已经发生了变化,此时本地HYBBS网站的数据隧道就能够长期稳定存续,让互联网访客能随时访问到本地HYBBS网站。

img

img

总结

从整体的操作来看,在本地搭建一个HYBBS论坛网站,并使用cpolar将其发布到公共互联网上的步骤并不复杂。使用搭建HYBBS论坛的思路,我们还可以在本地搭建其他类型的网站,并使用cpolar创建的数据隧道,将其发布到公共互联网上,让大家都能访问位于本地Ubuntu上的网站。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1000401.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

可靠又稳定些的微信管理系统

微信管理系统 --- 简单点说就是:微信的管理和营销系统。再通俗一些就是:利用微信与管理营销相结合的一种新型的办公方式。 不用下载任何软件,不需要多部手机,对手机型号没有任何要求,不需要刷机等等,并且稳…

腾讯云4核8G云服务器租用价格选轻量还是CVM?性能如何?

腾讯云4核8G云服务器可以选择轻量应用服务器或CVM云服务器标准型S5实例,轻量4核8G12M服务器446元一年,CVM S5云服务器935元一年,相对于云服务器CVM,轻量应用服务器性价比更高,轻量服务器CPU和CVM有区别吗?性…

c高级 day4

实现一个对数组求和的函数,数组通过实参传递给函数 #!/bin/bashread -p "请输入数组:" -a arrfunction sum() {sum0for i in ${arr[*]}do((sumsumi))doneecho "数组和:"$sum }sum写一个函数,输出当前用户的uid和gid,并使…

【Java】过滤器和拦截器区别

文章目录 前言1、过滤器 (Filter)2、拦截器 (Interceptor)3、我们不一样3.1、实现原理不同3.2、使用范围不同3.3、触发时机不同 4、拦截的请求范围不同5、注入Bean情况不同6、控制执行顺序不同总结 前言 准备环境 我们在项目中同时配置 拦截器 和 过滤器。 1、过滤器 (Filter…

Nginx反向代理联动Tomcat实现多实例部署、动静分离、负载均衡

文章目录 1. 配置反向代理1.1 前置准备1.2 代理服务器配置1.3 真实服务器配置1.4 客户机配置 2. Tomcat 多实例部署2.1 部署JDK2.2 设置JDK环境变量2.3 部署Tomcat服务2.4 路径启动 3. Nginx联动Tomcat实现动静分离、负载均衡3.1 基本原理3.2 前置准备3.3 配置nginx1实现四层代…

2023.9.8 基于传输层协议 UDP 和 TCP 编写网络通信程序

目录 UDP 基于 UDP 编写网络通信程序 服务器代码 客户端代码 TCP 基于 TCP 编写网络通信程序 服务器代码 客户端代码 IDEA 打开 支持多客户端模式 UDP 特点: 无连接性:发送端和接收端不需要建立连接也可相互通信,且每个 UDP 数据包都…

sql注入基本概念

死在山野的风里,活在自由的梦里 sql注入基本概念 MYSQL基本语法union合并查询2个特性:order by 排序三个重要的信息 Sql Server MYSQL 基本语法 登录 mysql -h ip -u user -p pass基本操作 show databases; 查看数据库crea…

串行数据发送器

框图 THR:发送保持寄存器 定义了两种状态:空,满数据写入端口地址:00H状态读出端口地址:00H当THR不满时,可以向THR写入数据 TSR:发送移位寄存器 一旦TSR空而THR中有数据时,THR中的数…

Ubuntu服务器安装Nvidia显卡驱动各类失败问题的解决方案集合

前言 给实验室服务器安装显卡驱动,总是遇到各种各样的问题。故而专门开一个文章记录一下遇到的各类问题。 正常安装方法 在这里安装CUDA,选择最新版本后根据系统配置点选即可,会自动生成对应的链接,如下图。这里选runfile&…

Mysql join用法详解

本篇文章旨在详细讲解Mysql 中join的用法,并附上例题。 一. left join 首先附上图 这个查询语句最根本的是要找出A表中所有的行, 所以如图所示,A表整个被涂蓝 A与B交叉的那部分可以视为ON后所跟的条件 重点是: 如果A表中有一条…

C#学习 - 方法的定义、调用、调试

方法 方法&#xff08;Method&#xff09;是由C/C中的函数&#xff08;Function&#xff09;发展而来的 //C语言 #include <stdio.h> int Add(int x, int y) {return x y; }//函数 int main(void) {int a 4;int b 2;int c Add(a, b);printf("%d %d %d\n&quo…

mysql 删除索引 索引长度还在,数据内存 索引内存没有减少

在我们针对数据表进行了大量删除或者删除掉某个无用的索引之后&#xff0c;该表占的数据内存或者索引并没有明显的变换&#xff0c;这是因为删除操作后在数据文件中留下碎片所致。 查看数据与索引 SELECTTABLE_NAME,concat( TRUNCATE ( data_length / 1024 / 1024, 2 ), MB …

腾讯云4核8G服务器CVM S5性能测评(CPU/流量/系统盘)

腾讯云4核8G服务器CVM标准型S5实例性能测评&#xff0c;包括CPU型号、内存、系统盘、CVM实例规格性能测评&#xff0c;腾讯云4核8G租用优惠价格表&#xff0c;腾讯云服务器网分享腾讯云4核8G服务器CVM S5性能测评和租用费用&#xff1a; 目录 腾讯云4核8G服务器CVM S5性能测评…

【C++】简单理解:将整数(浮点数)转换为字符串(string),将字符串(string)转换为整数(浮点数)方法

用stringstream类&#xff0c;口诀&#xff1a;过滤一下就转化 头文件#include<sstream> 例子&#xff1a;将整数12和浮点数12.34转化为字符串 int main() {int x 12;double d 12.34;string s;//创建一下对象strstringstream str;//过滤一下就转化str << x;st…

分享芯片行业有趣的小知识

随着拜登签署《芯片与科学家法案》&#xff0c;全球芯片争夺战进一步升温&#xff0c;我国芯片市场再次面临霸权主义的挑战。尽管困难重重&#xff0c;我们决不会停止在芯片领域的探索与发展&#xff0c;这彰显了芯片对国家的至关重要性。除了其重要性&#xff0c;芯片还有许多…

矿山边坡安全监测及预警系统解决方案

1.建设背景 近年来&#xff0c;矿山安全问题一直受到国家和社会的高度关注。为了全面提升矿山安全生产水平&#xff0c;国家矿山安全监察局和各省级非煤矿山安全监管部门开展了一项重大举措&#xff1a;推广并实施露天矿山边坡监测系统。 矿山边坡和排土场安全是露天矿山安全生…

vs2019配置sfml外部库出现的问题

问题描述 在debug模式下程序正常运行&#xff0c;在release模式中报错 解决 C/C Windows环境下 boost 安装使用教程 Debug 通常称为调试版本&#xff0c;它包含调试信息&#xff0c;并且不作任何优化&#xff0c;便于程序员调试程序。 Release&#xff1a;Release通常称为发…

【HCIE】03.BGP高级特性

每一条BGP路由都可以携带多个路径属性&#xff0c;针对其属性也有特有的路由匹配工具&#xff0c;包括&#xff1a;AS Path Filter和Community Filter。 import方向的属性&#xff0c;出现在如策略里面&#xff0c;加入到BGP路由表中&#xff0c;再传给路由表里&#xff0c;出去…

产品波士顿矩阵

随着公司产品的增多&#xff0c;每个产品的生命周期节点各不相同&#xff0c;很多时候我们往往在产品结构、资源分配方面会产生各种问题&#xff0c;导致需要发展的产品得不到资源&#xff0c;消耗资源的产品却有无法增长&#xff0c;所谓不聚焦导致的问题其实是资源和发展错配…

RP9学习-1

一.基础 1.10个面板位置示意图&#xff1a; 2.常用英文 1.鼠标点击&#xff1a;click or tap 3.工作区 1.恢复默认工作区&#xff1a; view-->reset view 2.自定义工作区&#xff1a; 可以用鼠标左键拖动面板到独立的位置或者吸附到其他面板上 3.自定义工具栏 view-->T…