By烟花易冷

RyShop 一套自制/自娱自乐的主机销售/管理系统
2017-08-15

这篇文章,已经迟到了将近两个星期了。这套主机系统我自己也跑起来五天了,暂没发现任何问题(主要可能是没人来试买东西吧..)现在正式来介绍介绍。

简介

RyShop主机销售系统,原本为我为 数据结构 课设所写,现在敢不敢这样直接交上去都是个问题(主要都是用数据库没用到啥课本的“书面”知识),采用 PHP 语言开发,基于 Laravel 框架,前端样式魔改自 spectre,现以 MIT license 开源。
本系统支持与 EasyPanel 等虚拟主机控制面板以及 SolusVM(待测试) 等VPS管理面板对接,实现付款成功之后产品的即时开通。
本系统拥有 工单系统、新闻系统、推介系统 等基础模块以及外观设置、发信邮箱设置等基础功能
目前正在准备加入的功能:更加自由的账单周期(目前仅能年付),优惠码支持


账单列表截图


已开通虚拟主机列表截图


用户购买的主机界面截图


推介系统截图

安装

由于采用了 Laravel 5.1 LTS,PHP环境肯定是少不了的,框架中的要求是 PHP >= 5.5.9。除此之外,MySQL 以及 composer 也是必须的。
1、从 RyShop 的 Github Release 中下载zip包后解压,编辑其中的.env文件,对数据库、数据库用户名及其密码修改。


2、在终端在并执行以下命令完成部署:

composer install #自动安装需求环境
php artisan migrate #执行数据库迁移

3、将 Web Server 的根目录指向 RyShop 目录下的 /public 文件夹。

Tip:如果您贪懒的话,可以直接使用使用 PHP Cli_Server 驱动,执行一下命令便可,但是我更加推荐在投入生产环境中时采用 Nginx 或是 Apache。

cd public
php -S 0.0.0.0:80

4、完成上诉步骤后,访问 http://您的域名/install 完成最后安装,此时效果如图。

服务器对接

在这个方面,我自行“歪歪”了一套体系。RyShop 系统所有与服务器对接的模块均放置于 /server/ 下,目录名字即为后台所识别的模块名称
每一个完整的模块包含着 setings.php create.php delete.php start.php stop.php 五个文件。分别对应五个不同的操作。
模块制作规范请正在制作中,具体可以参照 server 目录下现有的 ep1 (与EasyPanel对接) 示例。至于为啥没有 Directadmin 和 CPanel 还有 SolusVM 呢?授权费贵,买不起来研究。如果有机器测试的话,做个对接模块速度应该还是挺快的。

关于支付

由于我个人无法申请支付宝亦或是微信支付的接口,因此采用了第三方支付平台:金沙江 来代替,接口位于 /app/order.php 下,如果您使用其他平台接口或者是使用支付宝/微信的官方接口,自行修改便可。

演示与下载

赤裸裸的演示似乎我没有预备,这里提供一个主页经过小小调整的demo,在这里感谢李站长对 RyShop的大力支持:口袋主机
下载请移步 Github Relese,这将会展示最新的稳定版,如果您是懒人的话,那我提供一下目前1.0版本的直链好了:点击这里直达下载 (不妨 Star 一下支持项目 OvO )

最后再啰嗦一句,我目前仅仅在Github上面发布了这个作品(课设),如果不是从我的Github页面下载的话,请自行留意其安全性。 本系统开发初衷为完成课程设计,以及研究这其中的业务逻辑,若将本系统用于商业用途,请自行考虑是否具有相应正规资质,因此所导致的一切纠纷原作者以及开源贡献人不负有相应责任喔!

版本更新

v1.01 更新日志
– 解决前后台的列表分页问题
– 修复后台工单 有效的/关闭的 列表为空问题
– 修复PHP5系列版本下,无PHP7 ??判断的兼容问题
– 新增前台服务条款显示
– 温馨提醒:若注册、支付产生了长时间的等待,并且最终出现504错误,请检查smtp是否设置正确,这将会在接下来的版本中修复


回想起7月18日开始,连续三四个星期全凭借兴趣开发,每天几乎忙到深夜两点,脑子里都是在想各种关系与逻辑实现,且行且珍惜。这段时光也该放下了,好好放松放松,如果认为 RyShop 有用,我会一直慢慢保持着更新的。