如何使用宝塔面板搭建Tipask问答社区网站并发布公网远程访问

文章目录

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

前言

我们的生活和工作中,碰到问题的时候通常都会到网上寻找答案,但网上寻找到的答案要么答非所问,要么全是广告,真正有价值的回答少之又少,这就让人很头疼。也正是这个痛点,催生了如“某乎”这样的问答平台,让我们能轻松快速的找到想要的答案。

本文主要跟大家介绍,如何使用Cpolar+Tipask,在Ubuntu系统上搭建一个私人问答网站并实现随时随地远程访问本地站点,无需公网ip也不用购买域名服务器。

1.Tipask网站搭建

Tipask是一款基于php开发的开源问答系统,支持多种数据库,并且能与支付宝、微信、极验验证、阿里云视频、钉钉等多端整合,大大扩展了Tipask的应用场景范围。最重要的是,Tipask的部署很简单,像笔者这样的新手也能轻松完成设置和安装

1.1 Tipask网站下载和安装

以其他软件一样,Tipask也有自己的官网(www.tipask.com/),我们可以在这里看到关于Tipask的各种信息,如果在安装和使用中碰到什么问题,也可以在这里站到答案或发出提问。

img

在tipask的官网,我们可以看到tipask是php问答系统,能够支持多种数据库,也就意味着我们需要先在宝塔面板上安装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几项软件的安装后,我们可以点击软件商店页面上方的“已安装”按钮,查看已经安装的软件。同时,也可以在这里切换每个软件的版本。

img

接着,我们就可以进行下一步的网站部署。通常网站部署的步骤是将下载的网站源代码,放置到宝塔面板的wwwroot文件夹下,不过好在tipask在宝塔面板中提供了“一键部署”模式,又为笔者省了不少事。

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

img

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

域名(输出端口) - 在“域名”栏位,通过“打算设置的域名:打算使用的端口”形式设置;在这里笔者将tipask的输出端口设置为诶81(127.0.0.1:81)

根目录 – 这个栏位可改可不改,但这个根目录内容会与“域名”栏位联动,为防止混淆,笔者还是将其更改为tipask

数据库 – 这里填入打算设置的数据库信息即可;

PHP版本 – 对于某些网站可能会要求使用特定版本的PHP,我们就可以在PHP版本栏位修改(前提是已经安装了对应版本的PHP软件)。为保证稳定性,笔者选择php7.2版本

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

img

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

img

下一步打开ubuntu的宝塔面板,在软件主界面左侧点击“网站”按钮,进入网站列表页面,就能看到刚刚安装上线的tipask网站。使用宝塔面板进行一键部署tipask网站的最大好处,就是宝塔面板会自动开启tipask所需的php扩展和需要禁用的函数,省去了我们自己进行设置的麻烦。

img

此时我们在ubuntu的浏览器地址栏输入设置好的tipask网站地址,就能进入tipask网站设置页面。我们继续根据网站显示页面的提示,进行具体的网站设置工作。

img

在开始安装前,tipask会对网站运行环境进行自检,由于我们使用的是一键安装模式,因此宝塔面板会自动设置好所需的PHP扩展和禁用函数项目。

img

接下来就是填入数据库信息,我们只需要将创建tipask网站时设置的数据库信息填入即可。

img

最后我们设置好tipask的管理员账号,就能完成tipask网站的安装流程。为方便演示,笔者将管理员账号设为admin。

img

img

1.2 Tipask网页测试

在本地完成tipask网站的安装后,我们再在ubuntu的浏览器中输入设置好的tipask网站地址(这个例子中为127.0.0.1:81),就能访问到tipask的主页面。

img

1.3 cpolar的安装和注册

完成网页的部署后,就可以转入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官网:https://www.cpolar.com

右上角点击“用户注册”,在注册页面填入必要信息,就能完成注册。

img

img

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

img

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

img

2. 本地网页发布

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

2.1 Cpolar临时数据隧道

为满足部分客户需要的网页临时测试功能,cpolar可以直接在cpolar户端创建临时数据隧道(每隔24小时重置一次公共互联网地址,)。要创建临时数据隧道,我们直接在本地设备上登录cpolar客户端(在浏览器地址栏输入localhost:9200),并在cpolar客户端主界面点击“隧道管理”项下的“创建隧道”按钮,进入创建隧道设置页面。

img

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

隧道名称 – 可以看做cpolar客户端的隧道信息注释,只要方便我们分辨即可;

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

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

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

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

img

完成这些设置后,就可以点击页面下方的“创建”按钮,建立起一条临时数据隧道。临时数据隧道创建完成后,cpolar客户端会自动跳转至“隧道管理”项下的“隧道列表”页面,在这里我们可以看到cpolar本地的所有数据隧道(无论临时还是长期)。我们也可以在这里,对数据隧道进行管理,包括开启、关闭或删除这条隧道,也可以点击“编辑”按钮,最这条数据隧道的信息进行修改。

img

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

img

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

img

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

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

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

img

Cpolar升级后,就可以登录cpolar的官网(只要注册了cpolar用户,无论是否是付费用户,都可以登录cpolar官网,只是在里我们需要以付费用户身份登录cpolar官网,进行预留数据隧道操作)。

img

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

img

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

img

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

img

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

img

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

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

在本地设备上打开并登录cpolar客户端(可以在浏览器中输入localhost:9200直接访问)。点击客户端主界面左侧“隧道管理”项下的“隧道列表”按钮,进入本地隧道的页面,再点击对应隧道的“编辑”按钮。

img

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

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

img

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

3. 公网访问测试

最后,我们再次进入“在线隧道列表”页面,这时我们就会发现tipask的公共互联网地址已经发生了变化,我们将更新后的tipask网站公共互联网地址粘贴到浏览器中,就能使用新地址访问到本地ubuntu系统上的tipask网站。

img

img

4.结语

Tipask网站从基本上看,实际与论坛网站很相似,因此在安装和部署上并没有太大的难度。而这样的较低难度的网站部署,则对每隔用户都很友好,我们可以将家中闲置的硬件,安装运行资源要求较少的ubuntu系统,搭配cpolar创建的内网穿透数据隧道,让闲置的硬件成为我们私人专属的服务器,部署各种我们所需的网站。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FreeRTOS基础(四):静态创建任务

上一篇博客,我们讲解了FreeRTOS中如何动态创建任务,那么这一讲,我们从实战出发,规范我们在FreeRTOS下的编码风格,掌握静态创建任务的编码风格,达到实战应用! 目录 一、空闲任务和空闲任务钩子…

MT8781安卓核心板_MTK联发科Helio G99核心板规格参数

MT8781安卓核心板采用先进的台积电6纳米级芯片生产工艺,配备高性能Arm Cortex-A76处理器和Arm Mali G57 GPU,加上LPDDR4X内存和UFS 2.2存储,在处理速度和数据访问速度上都有着出色的表现。 MT8781还支持120Hz显示器,无需额外的DSC…

TK防关联引流系统:全球TikTok多账号运营的神器

在TikTok的生态中,高效运营多个账号已成为品牌全球推广的必经之路。为此,TK防关联引流系统应运而生,它是一款专为TikTok设计的效率神器,助您迅速搭建并管理全球多账号矩阵。该系统由先进的“防关联智能终端”硬件和智能的“TK防关…

随身wifi网络卡顿怎么解决?随身WiFi哪个牌子的最好用?排名第一名的随身WiFi!

对于随身wifi靠不靠谱这个问题,网上一直存在争议。很多人的随身wifi网速不稳定,信号看着满格就是上不了网。关于随身wifi卡顿到底该怎么解决呢? 1.如果是设备网络在一个地方上网速度很快,换一个地方网络就不行了,很可能…

常用中间件各版本下载

常用中间件下载地址 前言分布式中间件负载均衡中间件缓存中间件数据库中间件其他中间件1、Maven下载地址2、Git下载地址2、JDK下载地址3、MySQL下载地址4、Redis下载地址5、Nacos下载地址6、Tomcat下载地址7、Nginx下载地址8、RocketMQ下载地址8、RabbitMQ下载地址8、Erlang下载…

新设立湖北投资管理公司流程和要求

在湖北投资管理企业进行注册时,需要准备一系列的材料并按照一定的流程进行办理。本文将从注册材料及注册流程两方面来介绍,帮助您了解注册投资管理企业的步骤和所需的具体材料。详情致电咨询我或者来公司面谈。 新注册材料要求: 企业名称申请书:要求提供…

Day 9:2829. k-avoiding 数组的最小总和

Leetcode 2829. k-avoiding 数组的最小总和 给你两个整数 n 和 k 。 对于一个由 不同 正整数组成的数组,如果其中不存在任何求和等于 k 的不同元素对,则称其为 k-avoiding 数组。 返回长度为 n 的 k-avoiding 数组的可能的最小总和。 n 个不同正整数的最…

树形结构-CRUD接口

先看一下效果:整体的效果 新增效果 --默认值是 default 修改效果 - 大致效果如上 --------------------------------------------------------------------------------------------------------------------------------- 下面讲解代码如何实现的 根据你使用…

Selenium+Java 环境搭建

selenium 介绍 Selenium 是 web 应用中基于 UI 的自动化测试框架,支持多平台、多浏览器、多语言。 早期的 selenium RC 已经被现在的 webDriver 所替代,可以简单的理解为selenium1.0webdriver 构成 现在的 Selenium2.0 。现在我们说起 selenium &#xf…

AI大模型探索之路-实战篇12: 构建互动式Agent智能数据分析平台:实现多轮对话控制

系列篇章💥 AI大模型探索之路-实战篇4:深入DB-GPT数据应用开发框架调研 AI大模型探索之路-实战篇5:探索Open Interpreter开放代码解释器调研 AI大模型探索之路-实战篇6:掌握Function Calling的详细流程 AI大模型探索之路-实战篇7…

【机器学习300问】106、Inception网络结构如何设计的?这么设计的目的是什么?

谷歌的Inception网络,也被称为GoogLeNet,是Google在2014年推出的一种深度卷积神经网络(CNN)模型,在这之前的AlexNet、VGG等结构都是通过增大网络的深度(层数)来获得更好的训练效果,但…

vue3简单快速实现主题切换功能

⛰️个人主页: 蒾酒 🔥系列专栏:《vue3实战》 目录 内容概要 实现步骤 1.定义不同主题的css样式变量 2.入口main.ts中引入这个样式文件 3.主题样式css变量引用 4.设置默认主题样式 5.实现点击按钮主题切换 总结 最近发现了一个巨牛的人工智…

JS-Lodash工具库

文档:Lodash Documentation orderBy函数:根据条件进行排序 注:第一个是要排序的数组,第二个是根据什么字段进行排序,第三个是排序的方式(desc倒序) 安装方式:Lodash npm i lodash…

python判断文件是否存在

import os test_path "/Users/yxk/Desktop/test/GrayScale.tif" if(os.path.exists(test_path)):print(文件存在!!!!) else:print("文件不存在!!!!")结果如下 …

ABAP 借助公司封装的钉钉URL,封装的RFC给钉钉发送消息

FUNCTION ZRFC_BC_SMSSEND_DINGTALK. *"---------------------------------------------------------------------- *"*"本地接口: *" IMPORTING *" VALUE(DESTUSRID) TYPE CHAR255 *" VALUE(CONTENT) TYPE CHAR255 *&quo…

Linux 的权限

目录 Linux 的用户 root 用户 和 普通用户 如何新建普通用户? 如何切换用户? 一开始是以 root 用户登录: 一开始以普通用户登录: 如何删除用户? Linux文件权限 什么是读权限( r )&#…

自然语言处理学习路线

学习目标 NLP 系统知识(从入门到入土) 学习内容 NLP的基本流程:(待更)文本预处理(标点符号处理、繁体转简体、分词Tokenizer):(待更)词袋模型(TF…

校园志愿者|基于SprinBoot+vue的校园志愿者管理系统(源码+数据库+文档)

校园志愿者管理系统 目录 基于SprinBootvue的校园志愿者管理系统 一、前言 二、系统设计 三、系统功能设计 1 系统功能模块 2管理员功能 3志愿者功能 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取: 博主介绍&a…

关于FPGA 使用SPI FLASH固化时如何配置固化参数

关于FPGA 使用SPI FLASH固化时如何配置固化参数 EDA工具:Vivado 关于FPGA 使用SPI FLASH固化时如何配置固化参数一、引言二、如何设置固化参数:使用50M的速度 ,SPI为X4 ,以及bit压缩第一:点open implenment design第二…

万字长文,小白新手怎么开始做YOLO实验,从零开始教!整体思路在这里,科研指南针!

最近专栏来了很多的新手小白,对科研实验的过程感到困惑和无从下手,这篇文章就来讲解一下整体的科研流程,从选择数据集到发表论文的各个步骤,并针对大家在实验中常犯的错误进行解答。并且为大家提供通向我其他相关博客的指引&#…