我们想在我们的网站上使用 phpmailer https://github.com/PHPMailer/PHPMailer 。我阅读了所有在 GitHub 和 Google 上可以找到的内容,但无法理解如何在我们的网站上使用 phpmailer 给予适当的评价。
它必须在网站上可见还是可以是 hmtl 源代码中的注释?
措辞应该怎么写?
我们想在我们的网站上使用 phpmailer https://github.com/PHPMailer/PHPMailer 。我阅读了所有在 GitHub 和 Google 上可以找到的内容,但无法理解如何在我们的网站上使用 phpmailer 给予适当的评价。
它必须在网站上可见还是可以是 hmtl 源代码中的注释?
措辞应该怎么写?
你不需要给予任何信任,当然如果你这样做很好 - 一个简单的“我们使用 PHPMailer”和指向 github 项目的链接是合适的。这同样适用于您使用的任何其他开源项目。
PHPMailer 使用的 LGPL 2.1 许可证的主要限制是,如果您对库本身进行任何更改(通常不需要这样做),这些更改将继承 LGPL 许可证,并且应按需提供源代码。请注意,这并不意味着您需要发布应用程序的源代码或使用PHPMailer 的代码 - 这是完整GPL 许可证的要求,PHPMailer不使用该许可证;这是 GPL 和 LGPL 许可之间的主要区别。
当然,支持开源项目的另一种方式是通过GitHub、Patreon和类似网站捐赠/赞助它们及其维护者,或者如果你是一家公司,可以考虑Tidelift。
您提供的链接清楚地说明了(检查您链接的页面标题中的信息):
条件
如果您提供一个链接到已经安装在 LGPL 下的服务器上的库,那么根本没有问题,因为它将是动态链接的。但是,如果您在分发包中将 PHPMailer 作为“供应商”库提供,您需要在文档中添加一个部分,该部分清楚地说明并描述如何用您自己的库或修改后的库替换此库,而不会丢失整体功能除非它像库本身一样在 LGPL 下获得许可,否则不需要此脚本。正如 Synchro 已经提到的,您在 PHP 邮件程序上所做的所有更改都继承了 LGPL 许可证,并且还必须在您对原始代码所做的更改时提及。
阅读许可证的第 2d) 点!
d) 如果修改后的库中的设施指的是由使用该设施的应用程序提供的函数或数据表,而不是作为调用该设施时传递的参数,那么您必须做出善意的努力以确保在应用程序不提供此类功能或表格的情况下,该工具仍然运行,并执行其目的的任何部分仍然有意义。
在 PHPMailer 的情况下,这可能很容易实现,因为您不需要 oh-mailer 作为必不可少的工具,它可以轻松地动态链接,但即像 Smarty 这样的模板引擎甚至更密集的 php-gettext 不容易成为“剪掉”,并且该应用程序可能不再以有意义的方式工作!如果您将 GNU-GPL 代码信息复制粘贴到一个空文件并简单地删除标题并且不再提及 GNU GPL 代码的原始开发者,这也无济于事。
即(抱歉,这是一个 php-gettext 示例,但它说明了在您的软件产品中使用 GPL 或 LGPL 许可部分的主要问题。
比较“自定义开发的 gettext 文件”,它实际上只包含从 GNU 版本复制的代码