请用附件里的Termux,或者从 https://termux.com/ 下载的Termux。不要用从Google Play下载的Termux,那个过期了。
请看文字,别看截图。文字可以修改,截图不能。修改后的才是正确的,或者更好的。
前置条件:如何保持Termux后台运行
可选前置条件:如果你从termux安装软件包很慢,可以切换下载服务器(称为“软件源”)。切换方法见该教程:https://mirrors.tuna.tsinghua.edu.cn/help/termux/
【可选】步骤21:微信推送服务
附加内容:重启手机后怎么快速启动网站?
附加内容:如何停止网站?
附加内容:打开Termux自动启动网站
相关链接:聊天室列表,创建聊天室并发言,底部才会显示聊天室。
遇到这种错误时需要在阿里云OSS控制台开启允许跨域:
如果错误信息为红色,里面有CORS(跨域资源共享)字样,说明是跨域问题。
允许Methods必须勾选POST,建议勾选GET POST PUT HEAD。
来源如果要填域名,必须加协议头,比如http://域名
或者https://域名
。只写域名不会生效。
如果来源填域名没有效果,那就填*
。
附加说明:
为什么首页一直没变,还是nginx默认首页?
因为浏览器不恰当的缓存了这个nginx默认首页,就算刷新也没用,只能清除浏览器缓存。
或者还有一招,改为访问127.0.0.1:
如果你以前没访问过,这样就不会有缓存。
我修改了代码的默认设置,关闭了防CC模块,所以步骤15不再必要。不过如果你想主动打开该功能,还是可以参考步骤15。
步骤2. 问题在于,我没有PHP8.1环境。宝塔安装PHP8.1太慢,我又不想开docker。既然如此,我就先开始教程,装好PHP8.1环境,然后装上虎绿林程序,等它报错,然后再进行修复。
步骤3:安装git
、mysql
、php
、nginx
、memcached
。
注意Termux上的mysql
叫做mariadb
。
此外,和nginx
搭配使用的PHP叫php-fpm
。至于叫做php
的包嘛,它只提供名为php
的命令行程序。我们也需要这个命令行程序,安装虎绿林程序时可以帮我们自动复制几个文件。
下面正式开始操作:
打开termux,依次执行以下命令。
#
开头的不是命令,是注释,执行不是#
开头的行,每行是一条命令。执行命令的方法是,把命令复制粘贴到Termux,然后回车。
# 更新软件包列表
apt update
# 安装软件包
apt install git mariadb php php-fpm nginx memcached
它会问你是否要下载数百MB文件,回复y
截图和文字不一致说明:看文字,别看截图。截图不能修改,文字可以。修改后的才是正确的。
等待下载完成。
步骤4:用git
获取虎绿林源代码。
执行如下命令:
# 回到主目录
cd
# 下载源代码
git clone --recursive https://gitee.com/hu60t/hu60wap6.git
步骤5:启动MySQL。
~/../usr/etc/init.d/mysql start
以下不是步骤,是知识,留给以后备用,不要马上执行。
# 启动MySQL
~/../usr/etc/init.d/mysql start
# 停止MySQL
~/../usr/etc/init.d/mysql stop
# 重启MySQL
~/../usr/etc/init.d/mysql restart
# 查看MySQL状态
~/../usr/etc/init.d/mysql status
呃,好像除了启动,其他命令都没效果,报错说pid文件不存在。不管了,启动了就行。
步骤6:连接mysql,创建数据库和用户,然后导入虎绿林建表语句。
执行mysql
命令,就能自动登录到mysql
里。
mysql
不需要密码。
然后执行以下SQL语句(--
开头的是注释):
-- 创建数据库hu60
create database hu60;
-- 创建用户hu60,密码hu60,并允许它访问数据库hu60
grant all privileges on hu60.* to hu60@localhost identified by 'hu60';
-- 刷新权限,让创建的用户生效
flush privileges;
-- 切换到新建的hu60数据库
use hu60;
-- 导入虎绿林建表语句
source ~/hu60wap6/src/db/mysql.sql
步骤7:继续在mysql
命令里,执行show tables;
看看表创建好了没有,然后执行exit;
从mysql
命令里退出。
-- 查看表有没有创建好
show tables;
-- 从mysql命令里退出
exit;
如果你发现自己不能从mysql命令里退出,请连续输入exit;
别忘了分号,它是关键。或者,你也可以改按CTRL+C快捷键(就是先按Termux显示的CTRL
按钮,再输入字母c
),这也能退出。
步骤8:启动nginx
运行以下命令:
nginx
啥也不会输出。怎么确定启动了nginx?运行以下命令:
pstree
看到nginx了,说明启动了。
然后就能访问如下页面:
内容是这个:
步骤9:把虎绿林源代码链接到网站根目录。
nginx的网站根目录在~/../usr/share/nginx/html
可以通过以下命令查看其内容:
ls ~/../usr/share/nginx/html
我们不想要这些,所以直接重命名,然后把虎绿林源代码的src
链接过去。
注意不是复制过去。链接后文件依然在~/hu60wap6/src
里面,只是在~/../usr/share/nginx/html
也能看到罢了。
执行命令:
# 旧文件夹改名
mv ~/../usr/share/nginx/html ~/../usr/share/nginx/html.default
# 链接虎绿林源代码
ln -s ~/hu60wap6/src ~/../usr/share/nginx/html
# 检查链接是否正确
ls ~/../usr/share/nginx/html
步骤10:看看网站现在的状态。
# 安装curl
apt install curl
# 用curl查看网站状态
curl -v http://localhost:8080/
网站403了,看起来文件权限不正确啊。
下一步就是修复权限。
为什么不用浏览器看?因为浏览器有缓存,看不到最新变化。
更正,403并不是因为文件权限不正确,而是因为nginx目前的配置并不支持PHP,并且默认首页没了,所以得到403。下一步就是启动PHP,然后让nginx支持PHP。
这一步比较复杂,等我研究一下。
步骤11:启动PHP
执行以下命令:
php-fpm
查看php是否启动:
pstree
步骤12:让nginx支持PHP:
下载 nginx.conf(3.20 KB) 替换原始配置文件,方法如下
# 保留原始配置文件备查
cp ~/../usr/etc/nginx/nginx.conf ~/../usr/etc/nginx/nginx.conf.default
# 替换配置文件
curl https://vkceyugu.cdn.bspapp.com/VKCEYUGU-cc8cf08f-49f5-4fc5-83c3-ed2a683704d4/d1a6a650-c38b-4d66-823b-626655cd068b.conf > ~/../usr/etc/nginx/nginx.conf
# 让nginx重载配置文件
nginx -s reload
步骤1,需要由 @老虎会游泳 进行:
修复虎绿林程序和PHP8.1的兼容性问题,并且放弃对PHP5.4的支持(因为修复PHP8.1兼容性问题必然导致和PHP5.4不兼容)。
正在进行中。