Каков наилучший способ поделиться общей логикой между идентичными веб-сайтами на основе шаблонов? - PullRequest
0 голосов
/ 01 марта 2010

Я создал сайт с белой этикеткой на PHP, который использует шаблоны. Каждая белая метка будет иметь свой собственный набор шаблонов и, возможно, несколько дополнительных папок. Все сайты с белой меткой находятся на одном сервере LAMP.

Что я хотел бы сделать, так это сохранить одну централизованную копию основного кода на сервере, а затем каждый сайт должен указывать на эти файлы. Тогда у каждого каталога сайта белой метки будет физический каталог для его шаблонов и любых других дополнительных файлов и каталогов.

Идея состоит в том, чтобы полностью удалить логику из презентации и поделиться логикой на всех сайтах белых ярлыков. Таким образом, я могу внести изменения в общую логику, и все сайты обновятся.

Также мне нужна похожая структура в репозиториях SVN. В настоящее время каждый сайт White Label имеет свой собственный репозиторий. * +1007 *

Какой лучший способ добиться этого? Могу ли я использовать что-то вроде mod_rewrite для пересылки всех запросов, кроме шаблонов, в общую папку?

  1. Мне нужно убедиться, что легко установить новый белый ярлык сайта
  2. Пользователи, которые оформляют белый ярлык из репродукции SVN, чтобы работать над этим шаблоны не имеют доступа к общий код

Ответы [ 2 ]

1 голос
/ 01 марта 2010

В Apache вы можете настроить каталог псевдонимов, к которому можно получить доступ с нескольких различных веб-сайтов

Здесь я назвал это common_files

<VirtualHost 100.100.100.100>
  ServerName example.com
  DocumentRoot "/usr/example/html_docs"
  <Directory "/usr/example/html_docs">
    AllowOverride All
    Allow from All
    DirectoryIndex index.htm, index.php
  </Directory>
  Alias /sf "/usr/common_files"
  <Directory "/usr/common_files">
    AllowOverride All
    Allow from All
  </Directory>
</VirtualHost>
0 голосов
/ 03 марта 2010

В конце концов я решил использовать символические ссылки для ссылки на общие файлы. Затем я создал интерактивный скрипт bash для автоматической настройки символических ссылок для новых белых меток.

...