基于ptcms的小说站搭建,及网站无法install ,404或后台验证码 404情况的解决
最近在看小说,又舍不得充钱,偏偏盗版网站的广告又多得烦人,所以便萌生了搭建一个自己的小说站的念头。
1、准备篇
想要搭建一个小说站,需要准备如下:
- 服务器一台(建议使用香港的)操作系统推荐为centos7
- 域名一个(建议在namesilo注册一个便宜的)
- 小说站聚合程序(网络搜索ptcms可下载,注意安全)
2、开搞
一、安装宝塔
首先SSH远程连接服务器(推荐使用xshell),安装宝塔控制面板:
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
如果你的服务器带有额外的磁盘,需要在此之前先进行磁盘挂载:
yum install wget -y && wget -O auto_disk.sh http://download.bt.cn/tools/auto_disk.sh && bash auto_disk.sh
磁盘挂载完成后,再进行宝塔控制面板的安装。
二、配置环境
宝塔控制面板安装完毕后,可在浏览器输入'192.XXX.XXX:8888/XXXXX'进入宝塔控制页面,并根据提供的用户名与密码进行登陆:
登陆成功后,点击左侧菜单栏“面板设置”选项,对‘面板端口’、‘安全入口’、‘面板用户’、‘面板密码’等选项进行修改,尤其是‘面板端口’选项,建议立即修改。
此后,便可根据你新修改的‘安全入口’和用户、密码等登陆该面板。
若不幸忘记了某些项目而无法登陆,可以通过SSH命令:
/etc/init.d/bt default
进行查看
接下来,就要配置小说站需要的运行环境,安装:
- Nginx 1.15
- MySQL 5.6
- PHP 7.3
- DNS云解析 2.1
安装完成后,在【软件商店】页面选择“应用分类”中的“已安装”选项,选择PHP 7.3 的“设置”选项:
- 安装php扩展 fileinfo
- 安装php扩展 memcached
- 安装php扩展 Swoole4
- 删除禁用函数 shell_exec
配置完成之后,选择“文件”选项,在 /www/server/ 目录下新建名为“ptcms”的文件夹,并将下载的ptcms聚合程序中名为【license】和【loader73.so】的文件上传到该目录下。
其后,在PHP 7.3的设置中打开“配置文件”,在文件最底部输入:
extension=/www/server/ptcms/loader73.so
swoole_license_files=/www/server/ptcms/license
之后,重启php 7.3。
三、网站部署
在“网站”页面添加站点,之后进入网站根目录,将ptcms部署文件上传,并解压。
随后,使用“DNS云解析”,将我们的域名与解析到本服务服务器,过程需要20~30分钟(理想状态下)。
回到网站页面,进行网站“设置”,将网站运行目录更改为 /public
随后,设置【伪静态】为:
if (!-e $request_filename) { rewrite ^/(.*) /index.php?s=$1 last; }
并进行保存。
按照网上搜索到的教程,到了这里网站的部署就结束了,之后在浏览器输入 “域名/install.php”就可以进行网站的安装了,
但是如果你真的相信了,就会发现——这TM的网站就是打不开!!!
一直提示 “404”错误!
其实,是有一点他们没有提到的,在设置网站运行目录的界面,有一个选项“防跨站攻击”,我们需要先将其取消勾选,片刻后再进行勾选,如此,才算是彻底完成了这个步骤。
之后,在浏览器输入 “域名/install.php”就可以进行网站的安装了。
。
。。
。。。
在进行了包括网站名、域名、mysql以及管理员账号密码之类的设置之后,我们便进入了网站后台登陆界面:
这时候,可能会有小伙伴发现,为什么我的图形验证码加载不出来!??!
按“F12”看一下,发现这个名为verify.png的图片竟然 404 了!!!
这时候,我们要回到宝塔页面,
将Session的存储模式调整为 files,问题解决。
(其实,PHP 7.3 的Session配置默认便是“files”,正常情况下不会出现这个问题;但是由于我在安装过程中自己瞎jr操作,导致了这个情况。然后当我百度的时候,发现网上并没有关于这个问题的直接答案,直到我在一段解决类似问题的代码中发现关于Session,才初步意识到了问题的所在。)
四、小说采集
在后台选择 采集管理-规则管理-规则导入,然后就可以开始倒入网上下好的采集规则(txt格式的)。
随后在规则管理页面,选择“测试”
可以试验导入的规则是否还能用,不能用的建议删掉,能用的,选择任务选项,增加任务采集(初期书库空的时候建议把采集间隔时间设置的低一点,我设置的是60。但是也不建议太低,毕竟双方的服务器压力也要考虑一下~)
当所有能用的规则都设置了采集任务之后,选择 任务管理-采集任务监控,并点击【启动总进程】按钮
这时候,在按钮的右侧会出现“获取主进程运行状态失败”字样,这时候,回到连接SSH,输入命令:
cd /www/wwwroot/网站根目录/
随后输入
/www/server/php/73/bin/php kx corn:check
便会看到界面显示:
“主进程挂掉,重启主进程
主进程开启成功”
然后,就ok了~,小说站搭建大功告成。
PS:本人小说站:http://www.101yuedu.cloud/
各位嫌麻烦或者因为种种原因未能搭建的朋友可以来试一下,看能否找到自己想看的图书~