Прошу слова!
Дела бывают крайне важными, важными, маловажными и неважными. Значит ли это, что нельзя заниматься маловажными и неважными делами? - Нет, не значит. Однако только в том случае, если менее важные дела НЕ МЕШАЮТ более важным!
Что касается строительства форума, то тут тоже есть дела разной степени важности. Можем ли мы заниматься причесыванием смайлика?
Вполне можем, если есть на то свободное время и интерес к этому делу. Можем потому, что прическа на смайлике никак не помешает функционированию каких-нибудь более важных механизмов форума.
Однако далеко не всегда подобное украшательство бывает безобидно. Если смайлики - это просто картинки, которые можно заменить любыми другими, имеющими то же название файла, то с остальными вещами дело может обстоять гораздо сложнее. К "другим делам" здесь относятся
моды и
скины.
Моды - это средства, вызывающие множественную мутацию скриптов форума, в результате которой в них возникают вставки дополнительного кода в самых неожидаанных местах. Формально, после даже одной единственной модификации форум становится другим - у него, как у живого организма, изменяется геном. Благодаря этому появляются новые функции, а старые отмирают или начинают работать по-другому.
Скины - похожи на моды, только они не ставят заплаток, а подменяют целиком те файлы скриптов, в которых они производят модификацию. После чего модифицированный форум использует уже свои собственные скрипты вместо старых. Однако такому обновлению подвергаются не все старые скрипты, а только те из них, которые имеют отношение к внешнему виду форума. Именно поэтому такой метод модификации получил название "скин", что в переводе с английского означает кожа.
А теперь давайте оценим и те издержки, которые мы имеем из-за мутации стандартных скриптов. Наступает час "Ч", и на сайте компании-разработчика Simple Machines LLC появляется сообщение о выпуске обновленной версии форума, выкладываются новые скрипты и пакет обновления (апгрейд) для предшествующих версий. Например, наш форум имеет номер версии 1.1.11, но это не значит, что версий было всего 11, т.к. ранее были выпущены еще версии с номерами от 1.0.1 до 1.0.19. Что это значит? А значит, чаще всего, то, что форум не один раз был скомпрометирован и в нем были заткнуты очередные выявленные бреши в безопасности.
Так хорошо ли, что выпустили новую версию со свежими заплатками? На первый взгляд кажется, что хорошо. А на деле ситуация оказывается много хуже той, когда, скажем, компания Microsoft через интернет устанавливает на вашу операционную систему очередные "критические обновления". Разница между этими случаями очень велика. Какую дыру там заткнула Microsoft определить очень трудно, а здесь достаточно лишь сравнить тексты старой и новой версии скриптов и любой злоумышленик узнает, где были дыры в безопасности у предшествующей версии. Теперь ему остается лишь набрать в Google запрос "SMF forum 1.1.11", как в ответ вывалятся адреса всех тех сайтов/форумов, где прежний скрипт обновить еще не успели. А после этого хакай их всех, если есть на то желание и грязные интересы. Короче говоря, после наступления часа "Ч" начинается гонка на выживание - кто окажется первым - админ, успевший обновить версию, или хакер, успевший разобраться в обновлении и написать эксплойт.
А теперь оценим ситуацию с форумом, который прежде был сильно модифицирован модами и скинами. При установке частичного обновления от компании производителя такой форум вообще может перестать работать, если в обновившихся скриптах исчезнут ранее установленные модификации, а в необновившихся они останутся. В результате получится не то и не сё - оставшиеся модификации не смогут нормально работать одной лишь оставшейся частью. А что касается скинов, то их личная часть кода обновлению не подвергается. А, следовательно, если там и были дыры в безопасности, то таковыми они и останутся, начиная с той версии скриптов, на которых когда-то сочинили этот скин.
В принципе положено перед обновлением версии все модификацци убирать, а после обновления заново их всех устанавливать. Однако делать это - сизифов труд. А автоматические модификаторы (моды), как правило, отказываются модифицировать новую версию, на которую они не были рассчитаны. Но у админов нет времени ждать, когда на все моды и скрины тоже будут написаны обновления - им надо спешить. И вот они подтирают номерки в модах, чтобы тем казалось, что версия для модификации подходит. Чаще всего такой трюк сходит с рук, т.к. чрезвычайно редко моды модифицируют как раз то место, которое исправила компания-производитель. Однако риск здесь есть и не малый.
А теперь войдите в мое положение. Эти скрипты я пока знаю плоховато, а любой мод модифицирует их очень сильно. Совсем недавно я смотрела предложенные мне моды для подсинивания полей форума - "2ExtremeBlue", "2Extreme_Blue_2b4", "Soldier+Blue" И "blueted", чтобы привести его вид в гармоничное соответствие с нашим логотипом. А теперь смотрите. Мода "2ExtremeBlue" обновляет (замещает или добавляет – в этом не разбиралась) 220 файлов, а "2Extreme_Blue_2b4" - 284! Вы представляете себе масштаб мутации только для достижения этой цветовой ерунды?! Вот вчера мы Берга замучили рисованием
, зато обошлись всего подменой 6-ми картинок и исправления в файле стиля. И теперь, если даже придется переходить на обновленную версию, то наши исправления этому не помешают, т.к. апгрейды картинки и стили не трогают, поскольку дыр в безопасности они не порождают.
Поймите меня правильно. Опыта работы web-мастера у меня кот наплакал, и я, откровенно говоря, боюсь того, что может случится, когда появится новый апгрейд, а форум уже будет не в тестовом режиме, как сейчас, а в рабочем. И любая моя оплошность может привести к тому, что все разладится. А ведь я еще умолчала о том, что апгрейды еще и модифицируют базу сообщений, добавляя в нее новые поля (например, кто кому сказал спасибо). А модификация базы - это очень и очень серьезно. Если в случае неудачи с обновлением я могу откатить назад, вернув старый вариант скриптов, на которых раньше все работало, то вернуть назад прежнее состояние базы я не смогу. Тем более что она непрерывно растет из-за активности участников.
Только не подумайте, что наём профессионального web-мастера решил бы все проблемы. Насколько я выяснила, практически никто из этих web-мастеров в форумных скриптах глубоко не разбирается. Они обычно занимаются дизайном сайтов, не стремясь разбираться в чужом коде - они пишут свой. Да и каков смысл им в нем разбираться, если одна лишь подсинивающая мода изменяет разом 284 файла! Так что они по большей части - такие же пользователи, как и мы. Только заходят в админку и жмут на кнопочку "произвести обновление". А что при этом происходит со скриптами особо не разбираются. А потом хоровод водят на русскоязычном форуме
www.simplemachines.ru , умоляя, чтобы им помогли советом.
Резюме у меня такое. Если бы будем держаться за стандартную версию, проводя модификации самостоятельно в небольшом объеме, и отдавая себе полный отчет в том, что и где изменяли, то сможем поддерживать жизнь форума неограниченно долго. Но как только мы бросимся в погоню за красивостями, всякий раз накладывая на форум новые заплатки, но он долго не протянет. И не только потому, что его потом очень сложно будет апгрейдить, но еще из-за того, что каждая заплатка рассчитана на стандартные скрипты, но не на те, которые получаются после наложения множества разных заплат, авторы которых не знали (да и не могли знать) о творениях других "заплаточников" и учесть возможные коллизии.