Я пишу PHP-библиотеку, основанную на структуре zend. Моя библиотека используется несколькими моими веб-проектами. Я не уверен, где я должен поместить свою библиотеку. Кажется, имеет смысл иметь его вне корня документа из отдельных проектов, поэтому мне не нужно поддерживать библиотеку в каждом отдельном проекте. Моя текущая настройка выглядит следующим образом:PHP-библиотека внутри или вне корня документа?
/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/...
Как это, конкретные варианты как Зенд-основы и мой Пб можно использовать в своих проектах.
Альтернативная установка будет выглядеть следующим образом:
/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/...
Первый вариант имеет больше смысла для меня, но я не уверен, если я бегу в некоторых проблем безопасности, если мои проекты зависят от файлов вне их корневые папки документов. Кроме того, у меня возникают проблемы, когда я пытаюсь включить javascript-файлы из my-lib в свои проекты, если my-lib находится за пределами корня документа проекта.
Что лучше всего здесь, где я должен положить свою библиотеку и структуру zend?
/вара/Lib? потому что это библиотека? –
Я не думаю, что вы можете поместить файлы javascript за пределы корня документа, потому что тогда они не будут доступны из браузера. – naiquevin
Я голосую за первое. Но когда вы говорите о проекте documentRoot, я надеюсь, вы не говорите об Apache DocumentRoot, это будет большой сбой безопасности. – regilero