Как стать автором
Обновить
7
0
Дмитрий @diafan

DIAFAN.CMS

Отправить сообщение
Повторное поле, скорее всего, как я писал ниже. Было 4 поля в форме регистрации, стало 3. Ведь до момента установки курсора в поле пользователь не знает, есть там звездочки или нет.
с отображённым паролем браузер не предпримет дополнительных мер безопасности, не предложит запомнить пару логин-пароль и станет заполнять пароль в автодополнении

Это, кстати, единственный и самый серьезный контраргумент.
Но есть и косвенный плюс: без полей типа password браузеры не ругаются на отсутствие SSL ;)
Тоже вариант. А в настройках пользователя в личном кабинете уже давать ввести любой пароль. И там уже его точно не от кого прятать.
Но это упрощение регистрации, но для самого пользователя замороки чуть больше, т.к. потом надо пойти и поменять пароль на свой.
Современный пользователь очень капризный, избалован конкуренцией на рынке предлагаемых услуг. Любая мелочь может побудить его закрыть сайт и уйти на другой. Пользователи в целом не очень любят регистрироваться, т.е. что-то вводить, заполнять, переключать раскладки, т.е. напрягаться. Грубо говоря, если есть возможность не переходить с мышки на клавиатуру — это идеально. Т.е. регистрация через ФБ, ВК одним кликом.
С обычной формой регистрации есть критическое количество полей для заполнения: когда их больше 5 — многие скорее всего решат не заполнять форму. Если полей больше 5 и они все обязательны для заполнения — почти точно человек уйдет, если у него есть альтернативы. А чем меньше 5 полей — тем лучше: например, 3, заполнить имя, почту и ввести свой типовой пароль осилит каждый.
В нашем случае была не такая уж мелочь. Было 4 поля в форме регистрации, стало 3. Дело тут именно в этом, а не в звездочках. А для одного поля оставлять звездочки уже неправильно, тогда нужно убедиться вторым полем, что пользователь не опечатался вслепую.
Согласен. Но тут есть минус: скорее всего будет процентов 40 регистраций с почтой вида aaa@aaa.aa ;)
жаль что ТС слился и не пишет больше=(

А что писать? Хабр как сообщество весьма специфичен, всем известно. Если статья не зашла, её минусуют резонансно и всё. Сражаться с этим явлением бесполезно: защищаешь свою точку зрения — плохо, оправдываешься — плохо, соглашаешься со всеми — плохо, что не делай — все плохо, заклюют безусловно и всё. Будут цепляться к словам, к опечаткам, к коду, к отступам — всё, это называется именно «не зашло». Ничего, бывает. :)
html + php, я точно в 2016 году?
Вы так говорите, как будто DIAFAN.CMS написана на Basic-е… А на чем написаны другие CMS? Не на PHP? Покажите коммерческую цмс из топа систем на другом языке http://www.cmsmagazine.ru/catalogue/platnye/
class DB_mysql
no comments… хорошо что хоть есть альтернатива mysqli

Наоборот. Приоритет mysqli, но бывает крайне редко, что mysqli не включено на хостинге, тогда используется mysql. И это лучше, чем не давать ставить цмс вообще.
Ну это только гении могут думать, что с помощью htmlspecialchars, stripslashes, strip_tags защищаются от sql-иньекций :)

Эти функции не борятся с sql-иньекциями, а борятся с html, что подразумевает маска h. Используется в тех случаях, когда надо html код исключить.
https://roem.ru/14-04-2015/192219/cms-highload — читайте первый комментарий
Смотрим автора комментария и смотрим результаты Битрикса. Вы думаете, если бы Битрикс занял первое-третье место, этот комментарий был бы?
Но зачем приводить легаси-говнокод как совет?
В очередной раз повторяю, мы советуем алгоритм, а не код. Используйте любой код, к которому привыкли. А у нас какой бы ни был код, легаси или самый современный, он работает и в своей области (среди других коммерческих цмс) весьма результативно. У нас не спортивное программирование, у нас взрослая универсальная система управления, и я еще раз повторю, чем проще и ближе к классике будет код, тем больше веб-мастеров его поймут, это закон коммерческой системы.
Конечно некомпетентен, пару сообщений выше автор предлагает нам:
«раскрыть» хеш с помощью md5

На самом деле да, я не ведущий разработчик системы, я простой руководитель компании, поэтому я не 100% компетентен в каких-то предметных вещах. Здесь не буду ничего доказывать. По поводу «раскрыть хеш» я согласен, это некорректная фраза, но поясню все-таки, что имел ввиду: есть множество сервисов, типа http://raz0r.name/obzory/top-10-luchshix-onlajn-servisov-po-rasshifrovke-xeshej/ где можно простым перебором популярных паролей получить их хеши и сравнить с искомым. Нередко получается выяснить исходный пароль, зашифрованный обычным md5. Так вот если взять наш хеш пароля из таблицы с администратором, стандартными md5 его так же не свернуть, т.е. не подобрать.
А как вы поступаете, если строковоеЧПУ содержит цифры? Например, /пятница13/
У нас есть разрешенные переменные для строковых параметров, глобальные системные и модульные. Если разрешенной переменной «пятница» в системе нет, значит «пятница13» — это строка ЧПУ, и мы ее сразу смотрим в базе.
Ну это уже к loaddy.com — как они нагружают я в деталях не знаю. Может пользователи, может хиты. Мы лишь гордимся тем, что выдержали эту нагрузку заметно лучше других участников теста.
Тут, наверное, нужно сначала ответить на вопрос, зачем шифровать пароль?
1) чем шифруем, тем и расшифровываем.
2) писал в самой статье:
… такой подход нас привел еще к одной особенности. Мы очень мало используем внешний код, плагины и библиотеки. Вопреки «велосипедной» ошибке, мы считаем, что лучше написать одну функцию под свои задачи, чем включить огромную стороннюю библиотеку.
В смысле? Как обычно тестируют, так и мы протестировали. А какие здесь подводные камни? Код из пары простых строк, что там тестировать?
1000 посетителей, это конечно мего трафик
Единовременных? Т.е., грубо говоря, 1000 в секунду — это по-вашему тьфу? :)

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

Именно. Небольшая заноза для путаницы и забавы, привлекающая внимание, как псевдообфусцированная функция. Это для любителей нуллить, один из приколов.
Именно для забавы эта вещь там и стоит. Это заглушка. У нас функция, кодирующая пароль, зашифрована, а эта выведена для прикола, как и
meta name="GENERATOR" content="Microsoft FrontPage 1.0"
на сайте artlebedev.ru ;)
Вы в этом убедитесь, если возьмете ХЕШ пароля из БД, его простым md5 не раскрыть.
наверно такой код можно даже назвать не плохим
Искреннее спасибо :)
Еще раз повторюсь, мы — коммерческая система управления сайтами, где максимально выгодно, когда код понимает максимальное количество веб-разработчиков. Нам приходится балансировать.
Нет, все настройки модуля забираются один раз при его исполнении
Я рад, что статью не проигнорировали и она вызвала какой-то отклик в сердцах. :) Даже если все только утвердились в мыслях, что они далеко впереди нас в разработке и все делают правильно — и то не зря.

Я только еще раз попытаюсь напомнить, что все вышенаписанное возникло не на пустом месте в формате «вот какие мы изниоткуда», а по факту https://roem.ru/14-04-2015/192219/cms-highload/
Победителем безоговорочно оказалась DIAFAN.CMS. Она успешно выдержала нагрузку в 1000 посетителей, причем со скоростью ответа как у html-страницы.
оставив далеко позади даже всенародно любимые Битрикса и Юми.

Безусловно, мы вообще не идеальны и работать нам есть куда, и мы будем развиваться. А за очередной стимул очередной раз спасибо сообществу Хабра :)
На дворе 2016 год, уже 5 лет как существует Composer.
Ну ребята, если говорить о разработке чего-то нового, безусловно нужно использовать последние тенденции программирования, а когда продукт начинался в 2003-м, и в коробку сформировался в 2008-м, переписывать всю CMS раз в год под все новинки РНР нецелесообразно. Мы часто вынуждены обеспечивать и совместимость наших версий, и обновления для пользователей. И чаще стараемся дать людям функционал, чем подхватывать на лету всё новое, что выходит в РНР. Опять же, аудитория шире, программистов, понимающих классический РНР-код, больше ;).
даже примеры с ошибками… печально
В этих примерах стоит дисклеймер *здесь и ниже код условный, для наглядности. специально, чтобы не принимали код близко к сердцу, и даже специально чуть карикатуризировали его (приведенный код — не цитаты из DIAFAN.CMS, там всё несколько сложнее). Главное в статье — смысл, основы алгоритмизации при проектировании кода. А уже какими инструментами этого достигать — личное дело каждого.
Велкам! 21 день ни копейки! Для всех! И всегда было ;)
Ладно, ролик — говно, тут мы с Вами определились. А сама публикация-то хоть хорошая? ;)
Ну, когда всякие Петросяны снимают «Самый лучший говнофильм — 5» и берут деньги за просмотр, высказаться имеет полное право каждый зритель. А когда мы сами придумали, и чуть ли не своими руками сняли свой первый ролик на весьма специфичную тематику, да еще не поленились весь процесс описать, тут дело другое. ;)
Роликов хороших много разных, это понятно. Но у какой CMS есть что-то подобное, для сравнения?

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность