我正在制作一个网络应用程序,它是一种使用 PHP、jQuery、AJAX 和 JavaScript 的在线商店。
我想在本地主机上的一台 PC 上启动我的网站。我应该如何设置我的站点以使其仅在我的单台 PC 上运行?
即使有人将我的代码文件和数据库文件复制到他/她自己的 PC 上,它也不应该在他们的 PC 上运行。这该怎么做?
我知道的一种方法是使用 IP 地址。但我不太确定这种方法是否有效。
我正在制作一个网络应用程序,它是一种使用 PHP、jQuery、AJAX 和 JavaScript 的在线商店。
我想在本地主机上的一台 PC 上启动我的网站。我应该如何设置我的站点以使其仅在我的单台 PC 上运行?
即使有人将我的代码文件和数据库文件复制到他/她自己的 PC 上,它也不应该在他们的 PC 上运行。这该怎么做?
我知道的一种方法是使用 IP 地址。但我不太确定这种方法是否有效。
如果有人可以访问您的源代码,那么您无法阻止他们。
当您自己托管它时,您可以阻止外部访问,但除此之外,您无能为力。
确保没有人可以访问那台 PC(您的应用程序所在的位置)。只有在这种情况下,您才能保护您的应用程序不被未经授权的人运行。一旦你采取了这个安全措施,你就可以通过使用你的 IP 轻松地禁止你的应用程序被任何其他 LAN 计算机访问。这就是专业服务器的工作方式,您也应该这样做。
您可以将网络服务器绑定更改为localhost 127.0.0.1
only。您可以创建一个过滤规则,服务器只接受远程localhost/127.0.0.1
使用 apache,您可以通过.htaccess
目录/服务器规则来执行此操作。
当您想要共享该代码时,您需要使用 zend-guard 或同等工具对其进行加密。它里面还有一些许可证管理,您可以在其中将许可证绑定到机器。
您可以使用编码器脚本来加密您的源代码,其中一些具有锁定 MAC 地址的能力。不过,我认为它们都是商业解决方案;从IonCube和SourceGuardian开始。Zend 可能也有一些东西。
我想这些解决方案中的每一个都会在其各自的站点上提供全面的教程。您的工作流程基本上是从版本控制中检出源代码的副本,并将该文件夹编码为构建过程的一部分。
从技术上讲,加密的代码可以进行逆向工程,因为加密密钥是内置在代码中的。但是,这样做需要做很多工作,即使他们对其进行解码,他们也不会得到您的评论或有意义的变量/方法/类名称。