授权需求1、基于根域名授权,同一个域名的不同子域名可以使用2、授权必须有验证,也就是安装时通过授权码与域名配对,最好有一个与授权服务器通讯的机制,也就是联机授权,二是部分代码在授权服务器上,最简单的方式就是加密一个CSS,而这个CSS放在我们授权服务器3、授权文件在核心代码里面,但是要求对其他人二次开发没有影响。也就是不需要知道授权机制可以开发4、必须有域名授权管理系统:前期只需要同系统可以查询到域名是否授权,管理员或者有一定权限人可以通过系统添加域名做到授权,再有一行就是技术支持到期时间查询5、具体域名授权希望是有2个地方限制,一个是安装的时候限制,另外一个是通过基础应用通知的时候限制,如果没有通过验证的程序在会提示盗版6、PHP代码加密考虑、参考实现方式://blog.csdn.net/haiqiao_2010/article/details/10898423授权解决方案授权服务器被动链接的解决方案分析:根据需求。考虑到有两种授权方式:1、生成授权文件存放到网站跟目录,2、将授权信息写入SQL中/文件中,第一种要实现授权需求需要服务器支持。第二种只需进行代码修改即可。将授权信息存放于SQL中/文件中:授权需求基于根域名授权。及thinksns.com顶级域名下面的都可以获得授权信息。我们可以将授权码(cod码)于当前站点的域名以CURL(比较隐秘的方式)或其他方式传递给授权服务器。并接收服务器回传信息。这样无论子域名网站部署到任何IP地址上都可以获得授权。站点在开发中可能要记过好几个环境进行开发测试。并且不同环境的网络通讯状态也不相同。大致可以分为以下几种情况。1、开发环境,并且开发环境直接在本地电脑中(无法和授权服务器连接通讯),2、网络环境中(新建站点-从压缩包直接安装)(可以和授权服务器连接通讯),3、网络环境中(已有站点-从其他地方挪移到当前环境)(可以和授权服务器连接通讯),4、正式环境(新建站点-从压缩包直接安装),5、正式环境(已有站点-从其他地方挪移到当前环境)。授权信息不能影响开发工作。所以挪移站点和无网状态下都必须获得开发全部权限。当环境无法联网时。我们需要在环境中存储开发环境的cod码以及开发用的加密串。当新建站点-从压缩包直接安装并且可以和服务器通讯时。如果用户安装填写了有效的授权码(cod码)可以正式授权。如果用户没有填写授权码(cod码),则默认添加开发测试信息。这样可以保证不影响开发环境已经测试环境。对于站点的挪移。要实现授权我们要在前台登录时做一次授权验证。如果授权成功重置验证信息。在安装新功能时,我们也可以做一步验证操作。在这几部操作中。我们需要记录的信息有1、cod码2、URL(域名)进行迁站验证3、加密串加密串中可以包含一下信息:授权到期时间(扩展有期限的授权),授权插件(扩展插件控制)可以包含核心样式文件信息。或者一个项目的核心方法。以上几步基本可以解决网站授权需求。授权服务器主动链接的解决方案如我们可以在核心JS里面加上触发条件在一定时间内;给我们的授权服务器发送域名通知。我们可以根据我们的核心代码反向的,找到我们的代码部署位置。并通过预留授权接口授权该部分代码。这么搞似乎比较阴险。这样搞对授权服务器没有压力。而且可以防止核心代码泄露。就是很阴险,要在核心里面留门。域名授权管理系统域名授权管理系统,根据需求包括两部分。一、授权验证接口,二、授权信息管理。授权验证接口:这部分是用于授权验证信息的验证。按照不同验证步奏返回不同验证信息。可能我们每个项目的插件都是不同的。所有我们的返回值及加密串需要设计自定义部分。授权信息管理:授权信息管理是,对于授权域名的增删改查等功能的操作,以及授权码的管理操作。由于域名验证返回值得不确定性,我们应该预留一些字段用于这块的填充。