说明:之前看有童鞋需要个点播系统,恰好就看到个不错的MeEdu
,一个开源免费的在线点播,电子书和会员收费三大模块为一的整合系统,该系统主要的目的是让每位身负技能的人都可以通过MeEdu
来构建自己的知识付费应用,通过MeEdu
将自己的知识进行变现,而且功能也很多,具体的下面会列举出来,这里就发个搭建教程。
截图
功能
- 视频点播板块
- 手机号注册
- 视频收费
- 视频评论互动
- 课程收费
- 课程评论互动
- 会员收费
- 站内消息
- 邮件通知
- 有赞云支付系统
- 邮件订阅
- 后台系统
- 单元测试
- 系统公告
- 数据表格导出
SEO
优化- 数据定时备份
- 电子书板块
API
接口- 微信小程序
- 广告系统
- 友情链接
安装
Github地址:https://github.com/Qsnh/meedu
环境要求:PHP >= 7.2
、MySql >= 5.6
、Composer
。
PHP扩展:Zip
、OpenSSL
、PDO
、Mbstring
、Tokenizer
、XML
、Fileinfo
。
1、安装宝塔
代码语言:javascript复制#CentOS系统
wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
#Ubuntu系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
#Debian系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh
安装完成后,进入面板,点击左侧软件管理,然后安装PHP 7.2
(这里先建议使用PHP 7.2
)、Nginx
、Mysql 5.6
。
接下来再找到左侧软件管理-PHP
管理-设置-安装Fileinfo
扩展。
#如果Fileinfo拓展安装失败,就是内存太小,我们可以添加swap,不适用于ovz
1、脚本添加,脚本地址:https://www.moerats.com/archives/722/。
2、面板添加,找到左侧软件管理-系统工具-安装Linux工具箱,然后进入工具箱添加。
然后同样的在PHP
设置里找到禁用函数,删除proc_open
和symlink
函数,再重启PHP
。
2、安装Zip扩展
代码语言:javascript复制提示:安装PHP 7.2的可以跳过该步骤。
一般安装宝塔的时候,PHP
一些常用的扩展都会顺便给你装上,但目前7.3
版本的貌似还没zip
扩展,以后说不准,所以在安装之前可以使用php -m
检查下扩展,然后再确定要不要安装。
这里就选择编译安装该扩展。编译之前需要先安装libzip
,考虑到一些版本过低的问题,这里都采用编译安装或升级。
由于这里是编译最新版的libzip
,需要CMake 3.0.2
,可以查看下版本,使用命令:
cmake --version
一般情况下是低于这个版本的,这里我们开始升级CMake
版本,使用命令:
#CMake下载地址:https://cmake.org/files
cd ~
wget https://cmake.org/files/v3.13/cmake-3.13.4.tar.gz
tar -zxvf cmake-3.13.4.tar.gz && cd cmake-3.13.4
./configure
make && make install
开始安装libzip
,使用命令:
#libzip下载地址:https://libzip.org/download/
cd ~
wget https://libzip.org/download/libzip-1.5.1.tar.gz
tar -zxvf libzip-1.5.1.tar.gz && cd libzip-1.5.1
mkdir build && cd build && cmake ..
make && make install
再安装zip
,使用命令:
#zip下载地址:http://pecl.php.net/package/zip,这里以最新版1.15.4为准
cd ~
wget http://pecl.php.net/get/zip-1.15.4.tgz
tar -zxvf zip-1.15.4.tgz && cd zip-1.15.4
phpize
./configure --with-php-config=/www/server/php/73/bin/php-config
make && make install
echo "extension=zip.so;" >> /www/server/php/73/etc/php.ini
3、安装Composer
代码语言:javascript复制curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
4、安装程序 我们先点击左侧网站,添加域名;然后再点击左侧数据库-添加数据库。
运行命令:
代码语言:javascript复制#进入网站根目录,将路径修改成自己的再运行
cd /www/wwwroot/www.moerats.com
#安装meedu
composer create-project qsnh/meedu=dev-master
#将源码移动到根目录
mv meedu/{,.}* ./
#编辑环境变量
nano .env
修改相关信息:
代码语言:javascript复制#数据库信息
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=moerats
DB_USERNAME=moerats
DB_PASSWORD=moerats
#其它信息
APP_NAME=MeEdu
APP_ENV=local(这里如果正式运行,请修改为:production)
APP_KEY=
APP_DEBUG=true(如果安装没问题,建议改为false)
APP_LOG_LEVEL=debug
APP_URL=http://localhost(这里修改你自己的域名地址)
接着再使用命令:
代码语言:javascript复制#创建上传目录软链接
php artisan storage:link
#设置storage目录权限为777
chmod -R 0777 storage
#安装数据表
php artisan migrate
#初始化系统权限
php artisan install role
#初始化管理员,安装提示输入管理员的账号和密码!
php artisan install administrator
#初始化后台菜单
php artisan install backend_menu
#生成安装锁
php artisan install:lock
5、设置伪静态
点击域名设置-网站目录,运行目录选择public
,并把防跨站的勾去掉并重启PHP
。然后点击伪静态,输入以下代码:
location / {
try_files $uri $uri/ /index.php$is_args$query_string;
}
然后就可以正常访问网站了,后台地址/backend/login
。
6、设置定时任务
点击宝塔面板左侧计划任务,设置为每1
分钟执行一次,执行内容为:
#修改为自己的域名再设置
php /www/wwwroot/www.moerats.com/artisan schedule:run >> /dev/null 2>&1
7、配置队列监听器
安装Supervisor
:
pip install supervisor
wget -N -P /etc/ --no-check-certificate https://coding.net/u/cvc/p/supervisor/git/raw/master/supervisord.conf
新增配置代码:
代码语言:javascript复制#以下为一整条命令,先修改为自己的域名,再一起复制到SSH运行
echo "[program:meedu]
process_name=%(program_name)s_%(process_num)02d
command=php /www/wwwroot/www.moerats.com/artisan queue:work --sleep=3 --tries=3
autostart=true
autorestart=true
user=root
numprocs=4
redirect_stderr=true
stdout_logfile=/www/wwwroot/www.moerats.com/storage/logs/supervisor.log" >> /etc/supervisord.conf
启动服务:
代码语言:javascript复制/usr/bin/supervisord -c /etc/supervisord.conf
如果配置正确,你会看到supervisor
的输出日志,日志路径就是上面配置的stdout_logfile
的值。
再设置supervisor
开机自启,如果你是Debian 9
、Ubuntu 17
,需要先使用命令:
1、添加rc-local.service,以下为一整条命令,一起复制运行
cat > /etc/systemd/system/rc-local.service <<EOF
[Unit]
Description=/etc/rc.local
ConditionPathExists=/etc/rc.local
[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
[Install]
WantedBy=multi-user.target
EOF
2、新建rc-local文件,以下为一整条命令,一起复制运行
cat > /etc/rc.local <<EOF
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
EOF
3、添加权限并设置开机自启
chmod x /etc/rc.local
systemctl start rc-local
systemctl enable rc-local
再将启动命令加入rc.local
文件,使用命令:
#CentOS 7系统
echo "/usr/bin/supervisord -c /etc/supervisord.conf" >> /etc/rc.d/rc.local
chmod x /etc/rc.d/rc.local
#CentOS 6、Debian、Ubuntu系统
echo "/usr/bin/supervisord -c /etc/supervisord.conf" >> /etc/rc.local
chmod x /etc/rc.local
如果需要开启微信小程序,需要执行命令:
代码语言:javascript复制php artisan passport:install
该命令是生成RSA
加密密钥和小程序端的ID
和Secret
。注意将输出的id
和secret
填写到小程序配置文件中。