我希望集中我的许多Web应用程序代码,以便多个组件可以访问相同的核心功能。这就是我设置网站的方式:
/var/www/website - domain.com
/var/www/subdomain1 - subdomain1.domain.com
/var/www/subdomain2 - subdomain2.domain.com
当然,在通用功能的重复方面,我遇到了很多麻烦,因为对一个区域所做的任何更改也需要应用于其他区域。我建议的解决方案是在/var/www 中创建一个新目录,其中包含所有核心脚本:
/var/www/code - 核心代码
然后,我将 PHP 包含目录设置为/var/www/code,以便脚本可以包含这些文件而无需指定绝对路径。
你能想到更有效的方法来集中代码吗?
非常感谢!
你的方法足以达到这个目的。
小建议:将前端脚本存储在/var/www/website/www 等目录中,而不是/var/www/website。将会有索引文件和ajax处理器以及类似的脚本。但是您基于项目的包含(以及其他杂项内容(将存储在/var/www/website/include 等目录中。这是针对黑客攻击的简单而有效的防御
因此,您的文档根目录将位于
看来你的想法是正确的:
在多个 PHP 站点之间共享代码
一个建议,但您应该将公共内容放在可能最终可公开访问的/var/www/*
中 - 由于您的http服务器或由于某些配置错误 - 并为您的共享代码/库创建一些其他目录,如/usr/local/lib/php/*
。
为了提高安全性,您应该open_basedir
添加私有和公共目录以及上传和会话目录来构建它。
并且不要忘记对您的库进行版本控制,例如:
/usr/local/lib/php/myLib-1.0
/usr/local/lib/php/myLib-1.2
等。
因此,您将能够在不破坏所有内容的情况下进行更改。