Директории в SKY

SKY / WINGS /
DIRS1
Все приложение SKY разрабатываются с таким расчетом, чтобы они могли быть легко установлены в подпапке виртуального сервера (в том числе на production инсталляции), что исключает необходимость настраивать виртуальный веб-сервер каждый раз при установке нового приложения.

В SKY Framework используется простая структура директорий. Весь основной PHP код храниться в папке main - код для повторного использования (крылья), файлы приложения, первичный конфигурационный файл, файлы CRON запуска и т.д.

Файлы, которые не являются кодом над которым работают (или меньше работают) программисты, хранятся не в папке main. Например, всегда есть папка view, в которой хранятся файлы вида, с которыми чаще работают веб-дизайнеры. Есть папка pub, в которой хранятся открытые для передачи сервером файлы - javascript, css, картинки в папке pub/img. Папка pub - сокращение от слова public, публичный.

Практически всегда есть папка admin с PHP файлами административного раздела. Все папки закрыты для веб, кроме корня сервера и папки pub. Могут быть также другие папки, в зависимости от типа приложения, например, cache.

Если веб-приложение использует несколько стилей (тем) отображения, файлы видов стилей хранятся в папках с именем стиля (возможно с префиксом), например view/default, view/yellow. Общие для всех стилей файлы вида хранятся в папке view. Аналогично для файлов javascript, css, картинок - папки pub/default, pub/yellow.

Итого типичная структура директорий приложения:
001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
_arch - документация, мемо-файлы
_dev - папка приложения DEV.SKY.
_inet - папка - копия текущ. состояния продакшн
admin - файлы админ. раздела
main - главная
  app - MVC файлы кода приложения
  w2 - файлы 2 крыла
  w3 - классы, код 3 крыла (wing 3)
var - переменные файлы, не нуждающиеся в бекапе на продакшн
  cache - файлы жесткого кеша
view - файлы вида
web (или например public_html) - корень веб-сервера
  design - папка для совершенствования верстки посторонним верстальщиком
    ... содержит pub, img, view (вторую копию), подразумевается отдельный ftp (sftp) доступ
  pub - css, js, ico и др. файлы
    etc - файлы, например google53becc6a77346de2.html
  img - изображения


В этом примере, корень виртуального веб-сервера настраивается на папку web. Нет возможности установить легко, как в первом примере (на production инсталляции), второе приложение в подпапку. При такой структуре директорий, необходимо изменить код "крыльев", использовать их "облачную модификацию". Это можно сделать выполнив скрипт в приложении DEV.SKY. Т.е. код крыльев не включает функционал по настройке доступа к папкам по схеме 1 или 2. Баланс между простотой кода, производительностью и гибкостью кода перевешивает в сторону первого.

На рабочей станции программиста, всегда параллельно с разрабатываемым приложением используется копия приложения DEV.SKY., которое содержится в папке _dev (плюс файл dev.php на одном уровне с папкой), которое не работает с уровнями директорий выше "себя". Это значит что на компьютере программиста следует установить приложение DEV на одном уровне с папкой web. Вся структура директорий схемы 2, как и схемы 1 может размещаться в в под-папке виртуального сервера. Например, виртуальный сервер имеет имя test.loc, веб-приложение устанавливаем в директорию dir1, тогда:

001
002
003
004
http://test.loc/dir1/web/index.php ... а также:
http://test.loc/dir1/web/ - адрес главной страницы приложения
http://test.loc/dir1/dev.php - адрес приложения DEV.SKY.
 
published ENERGY - 2 Oct 2015 14:21 GMT
last edit - 29 May 2018 15:14 GMT
 +  0  -  add comment