我想要一些建议,比方说我做了一个产品。汽车租赁网站/系统(PHP和MySQL)我想把它卖给40+汽车租赁公司如何停止例如。从简单地复制代码并将其提供/出售给“汽车4U-租赁”的“‘SA租赁”
我能想到的最安全的方法是使用多租户,每个客户端都有一个子域(例如:cleintname.myproduct.com)我也研究过PHP混淆和编码,但它看起来很容易解码/修改
理想情况下,我们想把产品卖给他们,然后让它脱离我们的控制。(维护成本低)
发布于 2014-08-20 21:42:02
“合法”保护您的最好方法是在您销售时客户将获得的许可证中清楚地说明这一点(请记住,您实际上只是在销售许可证,而不是软件本身!)。
为了保护您的代码不受非法律行为的影响(例如,不管许可证如何出售代码),您唯一的选择就是自己实际托管这些网站。混淆器提供了一些保护(也就是使解码代码的过程变慢),但仍然不会保护你的软件不被转售,而只是防止不必要的编辑!
发布于 2014-08-20 21:45:48
正如您所提到的,混淆不是愚蠢的证明。所以,您唯一的选择就是许可。确保您分发的软件具有正确的许可,当您向客户出售网站时,客户会与您签署协议。他们受到许可证的约束,如果你发现他们违反了许可证,你就有了官司。在我的经验中,很少有公司会想要使用这些代码并开始扩展或修改它,如果他们为了自己的业务目的而购买了软件,那么进入软件开发业务是一个全新的方向。
正如Luca提到的,你唯一确定的方法是自己托管服务,然后客户就永远得不到代码了。不幸的是,您会产生基础设施成本,因此您的许可模型需要进行相应的更改。
另一种选择是提供两种不同的许可,向那些想要更改它的人收取更多费用,因为他们不会在许可协议中分发它。
发布于 2015-05-25 02:24:25
我也有同样的问题,感谢@Brian Fegter,你可以使用下面的工作代码来搜索你的版权引用。
add_action('template_redirect', 'foobar_explode_if_no_citation');
function foobar_explode_if_no_citation(){
#Get the absolute server path to footer.php
$footer_path = locate_template('footer.php');
#Store the footer file contents in a var
$footer_contents = file_get_contents($footer_path);
#The required string
$citation_string = 'Designed by Foo Bar';
#Set off the nuclear bomb if there is an egregious offense
if(!preg_match("/$citation_string/", $footer_contents))
exit('All your website belongs to me. Make sure this string "Designed by Foo Bar" is included in footer.php');
}您所需要做的就是修改$citation_string使其与您的相匹配,例如:Designed by Foo Bar
代码将在文件footer.php (您可以将其更改为任何文件名)中搜索字符串"Designed by Foo Bar",如果没有找到,则会输出一条警告消息,例如
你所有的网站都是我的。确保"Designed by Foo Bar“字符串包含在footer.php中
此外,如果你想在你的引文中添加一个链接,你只需要用这个替换preg_match() (归功于@Rizier123 )
if(!preg_match("/" . preg_quote($citation_string, "/") . "/", $footer_contents))我认为这会对日以继夜编写代码的人有所帮助。人们必须尊重版权。
https://stackoverflow.com/questions/25406228
复制相似问题