[devel] I: Замечания к webpolicy, краткий анализ структуры.

Aleksey Avdeev =?iso-8859-1?q?solo_=CE=C1_solin=2Espb=2Eru?=
Ср Июн 11 02:05:04 MSD 2008


Mikhail A. Pokidko пишет:
> 2008/6/10 Aleksey Avdeev :
> 
>>Mikhail A. Pokidko пишет:
>>
>>>2008/6/10 Vladimir V. Kamarzin:
>>>
>>>>>>>>>On 10 Jun 2008 at 10:51 "MG" == Mikhail Gusarov writes:
>>>>
>>>> VVK>> Или лучше /var/www/cgi-bin/<name> ?
>>>>MG> Лучше /usr/{lib,share}/<name>, и дальше делать, что угодно - зачем код в /var хранить?
>>>>
>>>>Раз уж начали менять исторически сложившиеся места, почему бы и тут не
>>>>сменить? Так и запишем.

  Похоже я понял, чем смена исторически сложившихся мест (подкаталогов
%webserver_datadir) на новые (расположенные вне %webserver_datadir) мне
не нравится: такие действия потребуют дублировать структуру vhosts в
нескольких местах. А это в свою очередь -- породит букет не очевидных
взаимо зависимостей.

  Текущая структура (отражена в макросах пакета webserver-common,
подразумеваю, что умолчальная структура конкретного vhost совпадает с
коревой):

%webserver_datadir (%_var/www)
|
|- html (%webserver_htdocsdir)
|- cgi-bin (%webserver_cgibindir)
|- icons (%webserver_iconsdir)
|- webapps (%webserver_webapps)
|- vhosts (%webserver_vhostdir)
   |
   |- <имя vhost>
      |
      |- html
      |- cgi-bin
      |- icons
      |- webapps

  Если мы попытаемся что-то переместить в другое место (например,
cgi-bin в /usr/share/) -- нам придётся каким-то образом дублировать
схему организации vhosts (т. к. содержимое cgi-bin во всех vhost
совпадать не обязано), например так:

/usr/share/webserver
|
|- cgi-bin
|- vhosts
   |
   |- <имя vhost>
      |
      |- cgi-bin

  Что видим:

1. Явный дубляж организационной структуры vhosts в другом месте.

2. Эта структура сложнее предлагаемой /usr/share/cgi-bin/<имя
приложения>, т. к. пространства имён vhosts и приложений необходимо
разделять явно (для исключения конфликтов).

3. Динамическая по сути (т. к. зависит только от настройки веб-сервера)
структура vhosts оказывается в /usr... Не думаю, что это правильно.

  И если с п. 3 можно бороться, вынося подобные структуры в /var, то
пп. 1 и 2 -- родовая травма подобных решений...

  Это что касается части видимой пользователю (присутствующей в HTTP
запросах). С сайтонезависимой частью, невидимой для пользователей (код
разного рода, к которому нет обращения через URL на прямую) проще -- её
действительно можно куда нибудь вынести.

PS: Видимую часть тоже можно вынести, оставив в %webserver_datadir
симлинки и/или копии файлов. Но тогда потребуется спецменеджер для
управления всем этим хозяйством. А его, у нас, пока нет (про
эксперименты в данном направлении помню).

-- 

С уважением. Алексей.

----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 556 байтов
Описание: OpenPGP digital signature
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20080611/13805ce4/attachment-0002.bin>


Подробная информация о списке рассылки Devel