[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