用于商业扩展的更新服务器


8

Joomla提供了添加更新服务器的功能,允许用户在单击按钮时发布时安装扩展更新。

当然,这对于免费扩展非常有用,但是对于商业扩展,就会遇到一个问题,即有人可以简单地从更新XML文件中获取下载URL并将其发布,因此这是不可行的。

我当时的想法是按照相同的方式进行操作,但是它只会通知用户有更新,他们必须去开发者网站并手动下载它,但是我没有使用任何订阅扩展程序,因此没有访问这些商业扩展程序的特殊权限。相反,我使用了一个仅允许用户购买扩展程序的组件,仅此而已。

所以我的问题是,是否有我不知道的内置方法允许用于商业扩展的更新服务器?我相信我记得很久以前就讨论过这个问题,但是不确定Joomla是否为此实现了任何东西。

或者,也许相反,如果有人使用htaccess文件在其浏览器中输入URL,那么阻止直接访问XML是一个好主意吗?

注意:我指的是一个模块,否则我可能已经看过Akeeba Live Update之类的东西


1
我会联系已经这样做的扩展制造商之一。Rocket Theme家伙创建了他们自己的插件,该插件可验证服务器并仍然使用内置的更新机制。Akeeba无需额外的插件即可执行此操作,但是如果在组件设置中输入了代码,Akeeba将会更新。您还可以询问watchful.li家伙,因为他们的系统可以利用所有这些,并为您运行升级。可能有人愿意让您了解他们的操作方式。
Brian Peat

@BrianPeat-感谢您的输入。我发现Akeeba的Nick在Github上提交了一份内容,该内容确实可以满足我的要求,但是(也许只是我有一个金发碧眼的时刻),但是我觉得“开发人员指南”不足。它没有提到将代码放在哪里。与我一起工作的人将要求他提供有关此事的更多详细信息,因此希望这能使我有所作为。
2014年

Answers:


5

我的实施版本是...

客户端:-只需为每个订阅的用户提供一个唯一(秘密)密钥,并在检查新更新时将其作为GET变量传递即可。

服务器:-同样,只需检查该变量的传入请求,然后将其与数据库匹配cool? allow : deny;

滥用:-记录每个正在使用的密钥,并设置一个不允许的可行请求,超出该范围后,只需将该密钥及其用户标记为可疑,然后做任何您想做的事情,警告用户,阻塞是一段时间,或者只是普通的订阅终止...等等,可能性是无穷的。


服务器响应为“允许”后会发生什么?换句话说,此验证如何与更新服务器一起工作?
Malaiselvan,2015年

allow表示服务器已决定发送更新文件作为响应。
Mohd Abdul Mujib

谢谢@ 9ksoft。您的解决方案将允许用户下载更新的扩展名。我相信它无法使用更新服务器进行任何自动安装,对吗?还是在验证后您有解决方案进行自动更新?抱歉问了很多问题... :-)
Malaiselvan 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.