[转]Linux 微擎系统搭建
本文转自:https://www.cnblogs.com/voidking/p/5296552.html
前言
时隔一年半,再次接触微信公众平台开发。相比于掌上大学、圈里、微站ABC、图灵机器人、小i机器人、FAQ免费智能问答机器人、V5KF、赛科智能机器人,个人更喜欢模块定制的微擎和捷微,源码在自己手里,想怎么搞怎么搞。
本篇短文,就记录下微擎系统搭建的具体步骤。
准备条件
首先,你要有一个公网服务器,服务器上有PHP和MySQL的环境,官方推荐linux(centOS)+ nginx + php5.3,mysql5.6。其次,你要有远程操作服务器的工具,推荐使用xshell和xftp。最后,你需要从微擎官网下载微擎的源码。
服务器
云擎
先说国内的,BAE、CAE、JAE、SAE等,上次做微信开发时,它们还是免费的,现在有些开始收费了。
再说国外的,GAE、OpenShift、heroku、appfog、mongolab等,但是国内的访问速度一般,要么直接被墙。其中,OpenShift是我最喜欢的,以前使用WordPress在上面搭建了一个博客。
云擎的用法简单,基本都是建立某个类型的应用,然后把代码部署上去。因为云擎有各种限制,比如PHP版本限制、文件大小限制、访问流量限制等,所以不建议使用。但是,云擎的重点在于免费,或者免费一段时间。做做测试还是可以的,对于我等穷屌丝而言,不失为一种福利。
主流服务器
阿里云、腾讯云、亚马逊、西部数据、美团云等,按配置收费,可以根据实际需要和经济能力选择。这种服务器,就可以像本地主机一样随意安装配置了。本次的微擎环境,我们就使用阿里云。
PHP+MySQL
在linux下配置PHP+MySQL的环境,具体步骤请自行百度。如果觉得麻烦,可以在阿里云购买一个配置好的镜像系统,10元左右。
远程工具
xshell,用来远程登录服务器系统(一般是Linux),进行一些配置。
xftp,用来管理服务器上的文件。
源码
微擎官网:http://www.we7.cc/
以前使用微擎,需要把整个微擎系统的源码下载下来,然后部署到服务器上。现在,只需要下载一个名叫“install.php”的文件就可以了。
流程
连接服务器
1、打开xshell,文件,新建,输入服务器的ip地址,确定,然后输入用户名和密码,便可以连接到服务器。哇咔咔,看到了黑黝黝的shell界面,congratulations!

2、打开xftp,文件,新建,输入服务器的ip地址、用户名、密码,便可以连接到服务器。

查看帮助
通过xftp,下载帮助文件,就可以大致知道自己的服务器的配置。

可以看到,小编的web主目录为/alidata/www,OK,我们进入到/alidata/www目录下,里面有一个default目录。没错,这就是默认的web网站了,虽然里面只有一个index.html。而我们在浏览器地址栏输入主机ip地址,看到的就是这个index.html。
配置虚拟主机
如果决定直接在default目录下搭建微擎,这个步骤可以忽略。
很多情况下,我们希望在一个服务器上面搭建多个网站。以Apache为例,我们需要配置/etc/httpd/conf/httpd.conf,然后执行命令service httpd restart,具体步骤可以借鉴参考文档。
最终结果是,我们配置了一个域名为http://test.voidking.com,对应服务器主机目录为/alidata/www/test。
上传源码
通过xftp,把从微擎官网下载的“install.php”上传到default目录下。(配置过虚拟主机的话,就上传到test目录下)
在浏览器访问地址:ServerName/install.php,其中,ServerName为ip地址或者自己配置的域名。没有意外的话,可以看到微擎的安装引导页面。至此,成功了一半。

环境检查

微擎安装引导,会自动检测你的服务器环境是否符合系统安装的要求,很人性化。我们看到,目录权限有问题。
打开xshell,进入到/alidata/www目录下,chmod -R 777 test,给test目录和test目录下所有文件增加读写执行权限。
然后,再次检测,已经没有问题了。

系统配置

数据库选项,输入正确的用户名和密码即可,其他无需修改。
管理选项,创建一个管理员账号,微擎安装完成后用来登录。
下载文件
系统配置完成后,单击“继续”,微擎系统就会下载需要的文件到test文件夹,并且创建一个名为“we7”的数据库。喝杯咖啡的时间,就可以完成下载。
更新系统
用刚才配置的管理员账号登录微擎系统,看上去,一切正常。现在就可以使用了吗?不,在线安装的系统是精简版,必须更新,注意,是必须!一般来说,登录后会有更新提示,点过去即可。
测试
微信公众号
微信公众号分两种,服务号和订阅号。什么差别呢?
1、服务号只有企业或者团体才能申请,而订阅号申请要求较低;
2、服务号显示在聊天列表页,而订阅号都在聊天列表页的订阅号里面;
3、服务号初始就可以使用自定义菜单,而订阅号需要微博认证同时500人订阅才可以使用自定义菜单(2015年8月起,菜单也开放给订阅号了,但是不能在开发者模式使用,仍需认证);
4、服务号每月可以推送4条消息,而订阅号可以推送30条。
交互原理

被动处理用户的请求。图中的个人/企业服务器,指的就是微擎所在的服务器。

设置微信服务器,或者主动给用户发推送数据。
双向绑定
1、在微擎系统,添加公众号,输入自己的公众号和密码一键获取公众号信息,或者自己填入公众号信息。

最终生成我们需要的URL、Token、EncodingAESKey。

2、在微信公众平台,登录自己的公众号。左边导航栏,开发,基本配置。

其中,URL、Token、EncodingAESKey要和微擎中一致。
helloworld
在微擎系统中,管理公众号,文字回复,添加基本文字回复。输入规则名称、触发规则、回复内容,保存,提交。

手机关注自己的公众号,在聊天界面输入“helloworld”,看看返回了什么?“恭喜你进入了一个新的世界!”
微擎系统,至此基本搭建完成,更多好玩的功能,等着你去发掘。
后记
在搭建微擎系统的过程中,会遇到各种各样意想不到的错误。卧槽,逗我吗?为什么写教程的家伙没有遇到这种错误!莫方,小编也遇到过各种不懂,各种错误。百度、官网、博客、论坛、QQ群、前辈,总能找到你想要的答案。
参考文档
微擎开发文档
http://www.we7.cc/docs/#introduce
阿里云一键安装web攻略
https://bbs.aliyun.com/read/153209.html
公钥和私钥
http://blog.csdn.net/tanyujing/article/details/17348321
在一台服务器上搭建多个网站的方法(Apache版)
https://help.aliyun.com/knowledge_detail/6701386.html
Apache 虚拟主机 VirtualHost 配置
http://www.neoease.com/apache-virtual-host/
DocumentRoot does not exist解决方法
http://blog.csdn.net/zhuoyr/article/details/8393854
[转]Linux 微擎系统搭建的更多相关文章
- manifest.xml微擎系统模块的安装文件内容
微擎在安装或卸载模块时会根据manifest.xml生成(或删除)数据库中相应记录,并执行manifest.xml里指定的脚本. manifest.xml文件内容详细介绍如下: manifest - ...
- 微擎系统BUG漏洞解决方法汇总(原创)
微擎微赞系统BUG漏洞解决方法汇总 弄了微擎系统来玩玩,发觉这个系统BUG还不少,阿里云的提醒都一大堆,主要是没有针对SQL注入做预防,处理的办法基本都是用转义函数. 汇总: 1. 漏洞名称: 微擎任 ...
- 微擎系统BUG漏洞解决方法汇总
微擎微赞系统BUG漏洞解决方法汇总 弄了微擎系统来玩玩,发觉这个系统BUG还不少,阿里云的提醒都一大堆,主要是没有针对SQL注入做预防,处理的办法基本都是用转义函数. 汇总: 1. 漏洞名称: 微擎任 ...
- 微擎系统jssdk系统快速签名变量
jssdkconfig = {php echo json_encode($_W['account']['jssdkconfig']);} || { jsApiList:[] }; jssdkco ...
- 微擎系统 微信支付 get_brand_wcpay_request:fail
支付授权目录问题,有一个是域名加app的
- 自制微擎AI面相识别算术阈值
有时在朋友圈或其他地方会看到一些AI面相的分享链接或小程序,不是面相算命的有多吸引人,而是前面有"AI"两个字母.于是我就上网找了一下相关代码,发现了一个微擎系统的面相模块.下载下 ...
- 微擎模块的安装文件manifest.xml
微擎在安装或卸载模块时会根据manifest.xml生成(或删除)数据库中相应记录,并执行manifest.xml里指定的脚本. manifest.xml文件内容详细介绍如下: manifest - ...
- 微擎开发------day04
(1) cache_write($key,$data) 按照指定键名缓存数据 cache_write('test', $data) (2) cache_load($key) 读取指定键名的缓存数据 ...
- 微擎开发------day03
微擎系统的路由 首先附上一张完整的项目目录图,可下载图片后查看详情 详细的路由介绍 (1)后台系统路由 例如:http://local.drp.com/web/index.php?c=home& ...
随机推荐
- 《A computer-aided healthcare system for cataract classification and grading based on fundus image analysis》学习笔记
Abstract This paper presents a fundus image analysis based computer aided system for automatic class ...
- TryEnterCriticalSection___Delphi
VOID EnterCriticalSection:非阻塞函数.将当前线程对指定临界区的引用计数减1:在使用计数变为零时,另一等待此临界区的一个线程将被唤醒. BOOL TryEnterCritica ...
- HttpWebRequest 跳转后(301,302)ResponseUri乱码问题
问题: 目标地址: http://www.baidu.com/baidu.php?url=a000000aa.7D_ifdr1XkSUzuBz3rd2ccvp2mFoJ3rOUsnx8OdxeOeOL ...
- 【BZOJ3280】 小R的烦恼(费用流,建模)
有很浓厚的熟悉感?餐巾计划问题? 不就是多了几个医院,相当于快洗部和慢洗部开了分店. 考虑建图: 如果把每一天拆成两个点,一个表示需求,另一个表示拥有的话. 显然就是一个两边的图,考虑如果我现在有人, ...
- Linux系统文件权限管理(6)
Linux操作系统是多任务(Multi-tasks)多用户(Multi-users)分时操作系统,linux操作系统的用户就是让我们登录到linux的权限,每当我们使用用户名登录操作系统时,linux ...
- 《Python黑帽子:黑客与渗透测试编程之道》 Windows系统提权
环境准备: pywin32的安装在第八章的键盘记录中有,这里还需要安装wmi: 在本人的32位win7上本来是没有easy_install这个命令的,这需要安装setuptools-0.6c11.wi ...
- 【TensorFlow】:解决TensorFlow的ImportError: DLL load failed: 动态链接库(DLL)初始化例程失败
[背景] 在scikit-learn基础上系统结合数学和编程的角度学习了机器学习后(我的github:https://github.com/wwcom614/machine-learning),意犹未 ...
- CGI + FastCGI(PHP-FPM)联系与区别 【图解 + 注释】
〇.背景 参考了几篇文章,总结成 图解 + 注释 方便以后查阅. 参考资料: 1.https://www.zhihu.com/question/19582041 2.https://segmentfa ...
- 好用的在线工具汇总:Iconfont图标,数据mock,时间函数库,颜色查询 等
一 时间函数库 ———http://momentjs.com/ 非常全的时间处理函数库,引入使用非常方便. 二 Iconfont———http://www.iconfont.cn/ 各种小图标 ...
- MySQL 5.5主从复制(Replication)
简介 MySQL的主从复制(Replication),可以保持两台MySQL数据库的内容一致.因为其同步过程是异步的,所以备份数据库上做任何操作,都不会影响主数据库的性能.对游戏后台数据库而言,这是一 ...