我正在编写一个基于zend框架的PHP库。我的几个Web项目使用了我的库。我不知道我应该把我的图书馆放在哪里。将它放在单个项目的文档根目录之外似乎是有意义的,因此我不必在每个单独的项目中维护库。我目前的设置如下:
/var/www/vhosts/project1/
/var/www/vhosts/project2/
/var/www/vhosts/libraries/zend-framework/zend-framework-1.11.0/...
/var/www/vhosts/libraries/my-lib/my-lib-1.0.0/...
像这样,zend-framework和my-lib的特定版本都可以在我的项目中使用。
另一种设置如下:
/var/www/vhosts/project1/
/var/www/vhosts/project1/libraries/zend-framework/zend-framework-1.11.0/...
/var/www/vhosts/project1/libraries/my-lib/my-lib-1.0.0/...
/var/www/vhosts/project2/
/var/www/vhosts/project2/libraries/zend-framework/zend-framework-1.11.0/...
/var/www/vhosts/project2/libraries/my-lib/my-lib-1.0.0/...
第一个版本对我来说更有意义,但如果我的项目依赖于文档根文件夹之外的文件,我不确定是否会遇到一些安全问题。此外,如果my-lib在项目文档根目录之外,当我尝试在my-lib中包含javascript文件时遇到问题。
这里有什么最好的做法,我应该把我的库和zend框架放在哪里?
答案 0 :(得分:6)
如果可以从外部访问/ var / www / vhosts / libraries,我建议你将你的库放低一级(/ var / www / libraries),这样: