Автомобильный портал - Retrovaz

Sketch intitle datalife engine панель управления. DataLife Engine v.12.1 Пресс Релиз

Исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое. Скачать бесплатно .


DataLife Engine - это многофункциональная система управления сайтом. Благодаря очень мощной системе управления новостями, публикациями, статьями, пользователями, DataLife Engine предназначен в первую очередь для организации собственных средств массовой информации и блогов в сети интернет. Большое разнообразие базовых возможностей скрипта, изначально интегрированных в скрипт, позволяют DataLife Engine на шаг вперед опережать своих ближайших конкурентов в данном направлении создания сайтов. А благодаря точной и продуманной структуре ядра, сводящей к минимуму требования к ресурсам сервера, DataLife Engine способен с легкостью работать с высокопосещаемыми проектами c минимальной нагрузкой на сервер. Гибкость и легкость в настройке и интеграции собственного дизайна, позволит вам в кратчайшие сроки изучить и понять структуру шаблонов и соответственно развернуть собственные сайты, без каких-либо дополнительных материальных затрат.


1. В модуле управления рекламными добавлена поддержка рубрик. Вы можете в данном модуле создавать рубрики и уже в этих рубриках размещать ваши рекламные материалы. Рубрики выводятся в самом верху, перед списком добавленных рекламных материалов, в виде папок. В самих рубриках также можно создавать дополнительные подрубрики в неограниченном количестве. Тем самым при большом количестве рекламных материалов вы можете разместить их для удобства навигации по ним, в различных рубриках и подрубриках.

2. Добавлена возможность учета количества просмотров для рекламных материалов, добавляемых в панели управления скриптом. Учет просмотров ведется только для реальных пользователей, которые зашли на сайт с использованием браузера. Боты, сканирующие сайт, не учитываются. Учет просмотров включается непосредственно для каждого баннера, поэтому вы можете учитывать просмотр только для нужных рекламных материалов. Также у вас есть возможность указать, нужно ли учитывать все просмотры баннера, или учитывать только просмотры от уникальных пользователей.

3. Для рекламных материалов в админпанели добавлена возможность ограничивать показ баннера на основе количества его просмотров, и вы можете отключить баннер при достижении указанного максимального количества просмотров.

4. Добавлена возможность учета количества кликов для рекламных материалов,
добавляемых в панели управления скриптом. DataLife Engine автоматически перехватывает HTML теги, опубликованные с использованием тегов, и автоматически ведет учет кликов по ним. Какого-либо особого оформления этих ссылок не требуется, они могут вести по любым нужным вам адресам. Также у вас есть возможность указать, нужно ли учитывать все клики по ссылке, или учитывать только клики от уникальных пользователей.

5. Для рекламных материалов в админпанели добавлена возможность ограничивать показ баннера на основе количества кликов по вашему баннеру, и вы можете отключить показ баннера при достижении указанного максимального количества кликов по нему.

7. Добавлено использование канонических ссылок, в коде страниц, для всех страниц сайта включая навигацию по разделам, просмотр полной новости и т.д. Данная возможность позволяет повысить SEO оптимизацию сайтов, а также позволяет избегать дублей страниц в случае если где-либо в сети интернет публикуются некорректные ссылки на ваш сайт, либо если по каким-либо причинам необходимо отключить контроль неверных ЧПУ.

8. В настройки категорий в панели управления, добавлена возможность устанавливать по умолчанию для категории, разрешено ли публиковать новости из данной категории на главной странице сайта. Данные настройки действуют в момент добавления или редактирования публикации, и если для категории запрещена публикация на главной странице, то соответствующая опция убирается в момент добавления или редактирования публикации.

9. В настройки категорий в панели управления, добавлена возможность устанавливать по умолчанию для категории, разрешены ли комментарии для публикаций из данной категории. Данные настройки действуют в момент добавления или редактирования публикации, и если для категории отключены комментарии, то соответствующая опция убирается в момент добавления или редактирования публикации.

10. В настройки категорий в панели управления, добавлена возможность устанавливать по умолчанию для категории, разрешен ли рейтинг для публикаций из данной категории. Данные настройки действуют в момент добавления или редактирования публикации, и если для категории отключено использование рейтинга, то соответствующая опция убирается в момент добавления или редактирования публикации.

11. В настройки скрипта в панели управления, в раздел настроек безопасности, добавлена возможность включения автоматической защиты сайта от встраивания во фреймы на посторонних сайтах. При включении данной настройки, показ вашего сайта будет автоматически блокирован, если он встроен в iframe на чужом сайте. Тем самым вы можете защитить свой сайт от таких атак как кликджекинг.


12. Расширены возможности модуля "Метатеги", данный модуль был переименован в "Заголовки, описания, метатеги". Теперь в данном модуле вы можете задавать для страниц не только метатеги, но и отдельный заголовок для страницы и описание страницы, которые вы в дальнейшем можете вывести в любом месте вашего шаблона. Для этого добавлены новые глобальные теги для шаблонов: {page-title} - выводит указанный вами заголовок для страницы, {page-description} - выводит указанное вами описание для страницы. В описании страницы также допустимо использование BB и HTML тегов. Тем самым при помощи данного модуля, вы можете, например, создать и вывести заголовки и описания для облака тегов к каждому тегу персонально и т.д.

13. Добавлены новые глобальные шаблонные теги текст , которые выводят текст, заключенный в них если в модуле "Заголовки, описания, метатеги" был задан заголовок для просматриваемой страницы. А также добавлены противоположные теги текст которые выводят текст, заключенный в них если заголовок для просматриваемой страницы не был задан. Также были добавлены аналогичные теги и для описания: текст , которые выводят текст, заключенный в них если в модуле "Заголовки, описания, метатеги" было задано описание для просматриваемой страницы, текст которые выводят текст, заключенный в них если описание для просматриваемой страницы не было задано.

14. Для шаблона меню категорий (categorymenu.tpl) добавлена поддержка новых тегов текст , которые выводят текст, заключенный в них, если просматриваемая на сайте категория, или новость, не принадлежит категории из меню. Данный тег может использоваться только внутри тегов и используется, например, для вывода какой-либо информации (например ссылок) только для не активных категорий из меню.

15. Расширены возможности по выводу публикаций на основе значений дополнительных полей в публикациях. При обращении по адресу http://вашсайт/xfsearch/имя поля/значение поля/ будут выводится публикации, как и ранее, содержащие указанное значение в данном конкретном поле, если для поля задана опция "использовать как перекрестные ссылки". При обращении по адресу http://вашсайт/xfsearch/значение поля/ будут выводится публикации содержащие данное значение по всем дополнительным полям. При обращении по адресу http://вашсайт/xfsearch/имя поля/ будут выводится все публикации, в которых заполнено данное указанное поле.

16. В настройки скрипта добавлена возможность назначения отдельной страницы с именем 404.html в корне вашего сайта, для вывода страниц, контент для которых отсутствует. В случае включения данной настройки, вместо стандартного системного сообщения "К сожалению, данная страница для Вас недоступна, возможно был изменён её адрес или она была удалена.", вы можете вывести отдельную специально подготовленную заранее страницу, с полностью отдельным оформлением. Данное нововведение будет полезно для вебмастеров, которые хотят сделать отдельное оформление 404 страниц своего сайта.

17. В настройки скрипта добавлена возможность назначения HTTP заголовка, откуда необходимо получать IP адреса пользователей. Данное нововведение будет полезно для сайтов, которые используют различные внешние прокси серверы, и не имеют возможности правильно перенастроить сервер под них, для получения корректных реальных IP адресов посетителей. Например, при использовании сервиса cloudflare и других для защиты от DDOS атак и использовании обычного хостинг тарифа без доступа к серверным настройкам. Теперь вы можете в настройках скрипта в админпанели указать скрипту откуда ему брать IP адрес посетителей сайта.

18. При удалении категории в панели управления скриптом, добавлена возможность выбора, как поступить с публикациями, которые находятся в данной категории. Вы можете: "Убрать данную категорию из публикаций", "Заменить категорию на другую или другие категории", а также "Удалить все публикации находящиеся в данной категории". При этом если происходит удаление или замена категории из публикации, то будет убрана или заменена только удаляемая категория. Например, ваша публикация находится в категориях "В мире", "Новости", "Популярное", и вы к примеру, удаляете категорию "В мире", то у публикаций, находящихся в данной категории, только категория "В мире" будет удалена или заменена, все остальные категории в списке у данных публикаций останутся на месте.

19. Для публикаций добавлен новый тип дополнительного поля: "Чистый HTML и JS". При использовании данного поля, DataLife Engine не будет вмешиваться в текст, написанный в нём, и не будет проводить фильтрацию HTML кода этого текста, а также разрешает написание в нём чистого jаvascript кода. Данное поле будет полезно, когда вам в новость нужно вставить какой-то код, над которым не нужно проводить проверку безопасности, например, какой-либо свой плеер и т.д. Внимание, с учетом того скрипт не будет фильтровать текст из этого поля, при его создании обязательно установите ограничения, каким группам его разрешено использовать. Не разрешайте его использование обычным пользователям, которым вы не доверяете, в противном случае это может нести угрозу безопасности вашего сайта.

20. Для дополнительных полей публикаций, имеющих опцию "Использовать как перекрестные ссылки", добавлена возможность указания разделителя данных ссылок. Вы можете указать как отдельные символы, так и HTML код в качестве разделителя. Ранее в качестве разделителя списка использовалась запятая, теперь вы можете задать свой персональный разделитель для каждого поля, что позволяет создать для каждого поля свое уникальное оформление вывода в шаблоне.

21. Добавлена поддержка технологии "Яндекс Турбо" для обычных RSS каналов, без использования включения в настройках типа RSS потока как "Яндекс новости", для этого добавлена поддержка вывода полной новости тегом {full-story} для любого типа RSS потока. A также обновлен стандартный шаблон /templates/rss.xml в котором демонстрируется как должен выглядеть шаблон с полной поддержкой "Яндекс Турбо". Аналогично поддерживается полностью и возможность настройки шаблона RSS для технологии "Яндекс Дзен".

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

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

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

25. Добавлено использование микроразметки schema.org для вывода рейтинга с типом "Оценка". Использование данной микроразметки позволяет для полных новостей при выводе их в результатах поиска в Google выводить также и рейтинг публикации.

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

27. Добавлена возможность автоматического уведомления администрации сайта о поступлении новой новости от пользователей, находящейся на модерации (в случае если это включено в настройках скрипта), если новость была добавлена из панели управления скриптом. Ранее уведомление отправлялось только если публикация добавлялась непосредственно с сайта.

28. В случае если пользователь редактирует публикацию в панели управления, которая ранее была уже опубликована на сайте, но согласно настройкам его группы, ему запрещено публиковать без модерации, или разрешено публиковать не во все категории, то администрации сайта также будет отправлено соответствующее e-mail уведомление, что данная новость ожидает модерации.

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

30. Для модуля "Перекрестные ссылки" в панели управления, добавлены две новые области замены для ссылок. Вы можете дополнительно указать замену только в статических страницах, а также выбрать замену в статических страницах, новостях и комментариях.

31. Для модуля "Поиск и Замена" в панели управления, добавлена возможность массовой замены текста в опросах к публикациям и в голосованиях на сайте.

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

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

34. В админпанели скрипта добавлен форматированный вывод количества различных счетчиков (просмотры, публикации, комментарии). Вывод этих счетчиков осуществляется в форматированном виде в виде разделения пробелом сотен, тысяч, миллионов и т.д. Что дает более наглядное представление и восприятие данных чисел.

35. Для шаблонов вывода комментариев и добавления комментариев (addcomments.tpl и comments.tpl) добавлена поддержка новых тегов текст - выводит текст в теге, если новость принадлежит указанным категориям, а также тегов: текст - выводит текст в теге, если новость не принадлежит указанным категориям. Тем самым вы можете задать разное оформление вывода комментариев и добавления комментариев для публикаций из разных категорий.

36. Добавлена поддержка склонений слов для тега вывода количества голосов, которые были выставлены для рейтинга публикаций. Например, вы можете использовать {vote-num} отзыв||а|ов. Ранее для этого тега это было недоступно, т.к. он содержит в себе HTML код, а не просто число.

37. В случае если в настройках скрипта включено использование сайта только по HTTPS протоколу, то cookies браузером также будут отправляться на сервер только по HTTPS протоколу и автоматически блокироваться если используется обычный HTTP протокол.

38. Добавлен контроль неверных ЧПУ для статических страниц, текст публикации которых разбит на несколько страниц. В случае если указан некорректный номер страницы, будет производится автоматический 301 редирект на начальный адрес данной страницы.

39. Для RSS импорта публикаций добавлена поддержка импорта картинок из тега enclosure содержащего изображение к публикации. В случае если краткое описание в потоке RSS является просто текстом, а картинка дана в нем отдельным тегом, то к краткой новости при импорте в самое начало будет добавлена также и картинка к этой публикации.

40. Добавлена поддержка редиректов для получения полных новостей при использовании RSS импорта публикаций. В случае если ссылка из RSS потока является редиректом для дальнейшего перехода к полному тексту новости на сайте источнике, то DataLife Engine автоматически последует по этому редиректу и будет брать контент из конечного источника. Тем самым получение полных новостей будет более качественным чем ранее.

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

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

43. Для авторизации с использованием социальной сети "Одноклассники", добавлена возможность автоматического получения E-mail пользователя, при условии, что само приложение получило соответствующие права от Одноклассников. Внимание, по умолчанию Одноклассники не дают прав на получение E-mail, и для получения соответствующего доступа вам необходимо дополнительно обращаться в соц. сеть для разрешения получения e-mail. Если разрешение получено, то DLE также автоматически будет импортировать e-mail адрес.

44. Улучшена система вычисления пропорций изображения при создании уменьшенных копий. Тем самым создается более корректная и качественная уменьшенная копия.

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

46. Улучшена система контроля появления дублей страниц, при просмотре всех последних комментариев на сайте.

47. Оптимизирована обработка дополнительных полей публикаций при показе кратких публикаций, а также при работе модуля вывода популярных публикаций.

48. Обновлены визуальные редакторы TinyMCE и Froala до актуальных версий. Исправлен ряд выявленных ошибок в данных редакторах.

49. Для редактора TinyMCE добавлена поддержка вставки тегов скрытого текста, c использованием соответствующей кнопки в редакторе.

50. При использовании редактора Floara для комментариев, добавлена возможность быстрой загрузки и вставки изображений в комментарий. Вы можете либо нажать на иконку вставки картинки и выбрать файл для загрузки, либо просто перенести файл картинки с компьютера в поле редактора мышью, после чего картинка автоматически будет загружена и вставлена в позицию курсора в редакторе.

51. Внесены небольшие изменения в верстке панели управления скриптом, направленные на устранение некоторых ошибок в верстке и улучшение взаимодействия с панелью управления.

52. Обновлены до актуальных версий библиотека отправки почты с сайта, а также библиотека определения мобильных устройств.

53. Исправлена проблема, при которой в предварительном просмотре публикаций не обрабатывались теги и .

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

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

56. Исправлена проблема, при которой не работала динамическая загрузка комментариев, если это включено в настройках скрипта, и при этом тег {jsfiles} размещен в самом низу сайта.

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

58. Исправлены обнаруженные и заявленные ранее небольшие ошибки в скрипте.

На базе движка DLE (DataLife Engine). Настройку я буду описывать очень подробно, стараясь ничего не упустить, я думаю, что настройка dle превратится в длинную серию постов. За эту серию постов мы не только подробно рассмотрим настройку, но и разберемся для чего нужна каждая функция настройки.

Для постов посвященных настройке движка DLE, я буду использовать движок DataLife Engine v.9.4., точнее демо-версию данного движка. Этого мне вполне хватит для того, чтобы рассказать вам о настройках и возможностях DataLife Engine.

Первая статья будет посвящена разделу админки: «Общие настройки скрипта» . Найти этот раздел можно следующим образом: после перехода в админку DLE (DataLife Engine) , которая находится по адресу site.ru/admin.php, вы увидите быстрый доступ к основным разделам админпанели. Сегодня нам нужен пункт «настройка системы», а в нем раздел «общие настройки скрипта» . Есть, конечно и другие способы попасть в этот раздел, но это по-моему самый простой способ.

Итак приступим к настройке движка dle, первый пункт это название (title dle) . В названии пишите, название вашего проекта, например: Все для начинающих вебмастеров. Ваш title может звучат как угодно, по умолчанию на движке DLE, сайт называется DataLife Engine, если мы впишем любое другое название, то оно будет изменено. И оно будет формировать title dle, который будет выводиться во вкладке браузера, а также на странице поисковой выдачи. Поэтому, отнеситесь к title, со всей серьезностью. Здесь, я думаю понятно.

Ну, домашняя страница, я думаю понятно. Вписываем имя вашего домена, например: site.ru и все.

Используемая кодировка , по умолчанию, стоит windows-1251, это означает, что ваш ресурс поддерживает русский язык. Если у вас демо-версия движка DataLife Engine, менять здесь ничего не надо. Если же CMS куплена, то кодировку можно изменить например на UTF-8 и тогда ваш проект станет мультиязычным, на данном этапе подробно мы не будем рассматривать кодировку, я думаю и так понятно если у вас демо не меняем, даже если купленая, но домен находится в зоне ru , если честно я не вижу смысла менять кодировку.

Следующий пункт: Описание (Description) , в котором мы кратко описываем содержание своего проекта, например: Все о создании, настройке и продвижении блогов или сайтов и т.д., но не более 200 символов. По идее это описание должно выводится в поисковых системах, поэтому отнеситесь к этому серьезно, и не забудьте в описание прописать ключевые слова, по которым в будущем будет продвигаться ваш ресурс. Выглядеть это будет, примерно так, в поисковике Google:

Далее, ключевые слова (Keywords) (слова вводим через запятую), также по данным словам поисковики будут обращать внимание на вашу страничку, ключевые слова должны максимально соответствовать направлению вашего сайта или блога, сначала нужно составить список ключевых слов и проверить количество запросов по данным словам. Для проверки количества запросов пользуемся вот этой страничкой в интернете http://wordstat.yandex.ru . Подробнее на данном этапе рассматривать не будем, так как это уже относится не к данной теме поста, а к оптимизации в поисковых системах. Тут уж смотрите сами, что писать в это поле, для каждого ключевые слова будут разные.

Краткое название , здесь я думаю все понятно. Данное название будет выводится в модуле speedbar. Можно, опять же, повторить название проекта. Так с названиями разобрались, продолжаем. Модуль speedbar (он же хлебные крошки) выглядит так:

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

В графе, (человекопонятный урл), желательно выбрать «Да». Нужен он для того, чтобы ваш адрес визуально воспринимался пользователями, что хорошо сказывается на юзабилити вашего ресурса. Чтобы было понятнее, приведу примеры новостей с ЧПУ и без, новость с ЧПУ dle : http://site. ru/addnews.html, без ЧПУ: http://site.ru/index.php?do=addnews, т.е с ЧПУ визуальное восприятие ссылки намного лучше, чем без него.

Затем выбираем тип ЧПУ , здесь все ваших руках, но третий тип не советую выбирает так как он повышает нагрузку на ваш сервер.

Обрабатывать неверные URL ЧПУ : Здесь я советую поставить «Да», так как эта опция полезна для SEO, но вы если хотите можете не включать данную опцию. Подробнее для чего она нужна, в настройках написано, довольно понятно.

Затем выбираем используемый язык , так как у меня демо-версия, выбор у меня не большой только один язык, это русский, но для доменной зоны ru, этого будет достаточно.

Далее, шаблон сайта по умолчанию стоит default, но можно выбрать и другой. Этой теме будет посвящена отдельная статья, как установить шаблон на DataLife Engine (DLE). Конечно, все мы хотим какой-то особенный, не стандартный шаблон, забегая вперед, скажу, шаблон установить на dle очень просто. Скачиваем понравившийся шаблон с интернета или делаем свой, папку с шаблоном копируем в директорию движка, в папку templates, и если ваш ресурс на локальном сервере, перезапускаем его. И теперь шаблон появится в графе выбора шаблонов сайта по умолчанию.

После выбора шаблона, переходим к двум настройкам «Включить WYSIWYG редактор… «, в обоих случаях рекомендую выбрать «Да», так с помощью визуального редактора намного проще редактировать новости (статьи) и комментарии, нежели, с помощью BB-кодов. Хотя, выбирать вам, поэкспериментируйте, и сделайте выбор в пользу удобства. DLE WYSIWYG редактор, это визуальный редактор.

Так выглядит панель редактирования, с помощью BB-кодов.

Так выглядит панель редактирования, с помощью DLE WYSIWYG.

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

Последняя опция (причина отключения ) пригодится тем, кто воспользуется выключением сайта. В текстовом поле уже написана причина отключения, которую можно отредактировать под себя или написать свою причину.

Вот и все. Вы сделали первый шаг к настройке DLE (DataLife Engine). Теперь остается сохранить общие настройки dle и ждать следующего поста о настройке движка DLE.

Примечание: посты о настройке DLE (DataLife Engine) будут подаваться в таком в виде, для лучшего восприятия полученной информации, чтобы не получилась каша в голове. Конечно, можно было описать всю настройку в одной статье, примерно такого вида: здесь выберите это, здесь поставьте это, там напишите так. Но я хочу, чтобы вы понимали, для чего нужна каждая функция. Настроек и возможностей в DLE слишком много для одного поста. Надеюсь на ваше понимание.

Исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое. Скачать бесплатно .


Дорогие друзья,

Представляем вам новую версию нашего скрипта DataLife Engine v.13.1 NULLED. В данном релизе вас ожидает добавление поддержки автоматического обновления плагинов на новые версии и ряд других улучшений в системе плагинов, добавлены новые возможности для более удобной работы с дополнительными полями, добавлен новый тип рейтинга "Нравится и Не Нравится", улучшенный поиск публикаций в админпанели, и многое другое, об этом и другом читайте подробнее...

Были подготовлены и реализованы следующие изменения:


1. Добавлена возможность автоматического обновления скрипта в админпанели в пределах одной версии скрипта, в случаях, когда выходят, например, исправления найденных уязвимостей или других багов. В случаях, если в пределах одной версии вносятся изменения в дистрибутив, например, при выходе исправлений уязвимостей, или других выявленных проблем со скриптом, в админпанели возможно будет обновить скрипт, в рамках данной текущей версии скрипта.


2. Добавлена возможность автоматического обновления плагинов на сайте . Для этого в плагине задается URL для получения информации о наличии новой версии. По данному URL сайт разработчика плагина должен отдавать массив в JSON формате, который должен содержать информацию о актуальной версии плагина, а также ссылку на загрузку актуальной версии плагина. Например, по данному URL должно возвращаться значение {"version":"2.0","url":"https://dle-news.ru/test/test.zip"} . После чего, при проверке обновлений, администратор сайта сможет узнать о наличии новых версий плагина и обновить плагины в админпанели в один клик.


3. Для системы управления плагинами, добавлена возможность указывать количество замен, которые нужно провести, по каждому критерию поиска в файле. Например, вам нужно найти и заменить какой-либо код в файле, который встречается в этом файле несколько раз, вы можете указать сколько раз необходимо заменить данный код. Для замены всех вхождений этого кода, вы можете оставить данный параметр пустым, тем самым замена будет произведена везде, где встречается указанный вами код.


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

5. Для системы управления плагинами, добавлена возможность использовать в именах папок, находящихся в ZIP архивах, тег {THEME}. При загрузке архива через систему плагинов, данный тег будет заменен на имя используемого шаблона. Например, разместив в архиве файл /templates/{THEME}/test.tpl, ваш файл шаблона будет помещен в используемый на сайте шаблон. Тем самым, при использовании сложных плагинов, которые содержат в себе примеры файлов шаблонов, они могут сразу загружаться в нужную папку, содержащую используемый пользователем шаблон.

6. Для системы управления плагинами, добавлена возможность использовать в действии "Поиск и замена" в строке замены управляющие символы функции preg_replace, такие как \\1 и т.д., что снимает ограничения на поиск и замену некоторых кодов в DLE.


7. Для дополнительных полей, имеющих тип "Изображение" и "Галерея изображений" , добавлена возможность назначать каждому изображению в отдельности, свое персональное описание, которое также используется в качестве HTML атрибута alt, при выводе данных дополнительных полей на сайте.


8. Для дополнительных полей, имеющих тип "Галерея изображений", добавлена возможность изменять порядок сортировки загруженных картинок, просто переместив их мышью. После загрузки изображений вы можете поменять местами изображения по вашему желанию. Также загруженные изображения могут быть перенесены в другие дополнительные поля.


9. Для публикаций и комментариев добавлен новый тип рейтинга "Нравится и Не нравится", который ведет отдельный учет как количества лайков, так и количества дизлайков. Для этого для шаблонов вывода публикаций и комментариев добавлены новые теги: {likes} - который выводит количество лайков, {dislikes} - который выводит количество дизлайков, а также тег текст - который выводит текст, заключенный в теге, в случае если в настройках включен данный тип рейтинга.


10. В настройки профилей пользователей в админпанели, добавлена возможность устанавливать список категорий, в которые данному конкретному пользователю разрешено добавление публикаций. Это позволит, например, журналистам, вести личные рубрики, в которые другие журналисты (или часть из них) не имеют права публикации. Или наоборот - исключить журналиста из конкретной категории новостей, если он, например, в ней некомпетентен.

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


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

13. Для расширенного поиска публикаций в админпанели, в разделе редактирования публикаций, добавлена возможность поиска одновременно по нескольким категориям на выбор.

14. Для облака тегов добавлена возможность использования символов "&" и "#", что позволяет, например, использовать в облаке имена различных брендов, например, "H&M" и т.д.


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


16. В админпанели, в разделе редактирования комментариев, добавлена возможность поиска комментариев по тексту. В данном разделе вы можете произвести поиск необходимых вам для редактирования комментариев, по каким-либо ключевым словам. Тем самым редактирование комментариев становится более удобным.


17. В админпанели, в разделе управления перекрестными ссылками, добавлена возможность для массовых действий над ссылками, устанавливать замену "Только в статических страницах", а также "В статических страницах, новостях и комментариях".

18. Для предосмотра баннеров в разделе управления рекламой в админпанели, добавлено подключение стилей вашего шаблона из файла preview.css. Тем самым вы можете видеть более правильное оформление вашего рекламного кода, в случае если он использует классы из вашего шаблона.

19. Для шаблона вывода кратких новостей (shortstory.tpl) добавлено использование тегов текст , которые выводят заключенный текст в них, в случае если публикации по данным критериям отсутствуют. Тем самым вы можете переназначить стандартное системное сообщение об отсутствии публикаций в каком-либо отдельном разделе сайта, сделав его уникальным, например, для каждого раздела сайта. Также данные теги можно использовать и в шаблонах, которые используются при пользовательском выводе публикаций с помощью тега {custom ...}


20. Для шаблона E-Mail сообщения, которое отправляется при восстановлении забытого пароля, добавлено использование новых тегов: {%losturl%} , который выводит только URL ссылки на сброс и генерацию нового пароля, а также {%ipurl%} , который выводит только URL ссылки на сброс блокировки по IP. Тем самым вы можете отдельно задавать нужное вам оформление в письме данных ссылок, например, в виде кнопок. А также вы можете, например, отказаться от вывода ссылки на снятие блокировки по IP, если не используете эту возможность на своем сайте.

21. Улучшена система удаления категорий в админпанели . В случае если удаляемая категория, содержит в себе подкатегории, которые также подлежат удалению, то все действия для публикаций, которые содержат удаляемую категорию, будут автоматически распространены и на публикации, которые содержат также и удаляемые подкатегории. И к данным публикациям в подкатегориях, будут применены те же действия.


22. Для модуля "Фильтр по: IP, Логину или E-Mail" добавлена возможность добавления блокируемых адресов или логинов, или e-mail сразу целыми списками, а не по одному. Что существенно ускоряет процесс добавления, если у вас уже есть готовый список из того что необходимо заблокировать.


23. Для модуля "Фильтр по: IP, Логину или E-Mail" добавлена возможность редактирования уже существующих правил. Вы можете выбрать и отредактировать любое правило, без необходимости его удаления и повторного добавления.


24. Для модуля "Фильтр по: IP, Логину или E-Mail" добавлена возможность выбора одновременно нескольких или всех добавленных правил, и массовой разблокировки данных правил в один клик.

25. Для модуля "Фильтр по: IP, Логину или E-Mail" добавлена поддержка использования IPv6 адресов, которые можно указать для блокировки доступа на сайт. Также добавлена возможность указания IPv6 подсетей для блокировки.

26. Добавлена возможность указания IPv6 адресов в профиле пользователя , с которых разрешена авторизация для пользователя. Также вы можете указать не только отдельный адрес, но и IPv6 подсеть.

27. Для модуля пользовательской сортировки публикаций на сайте , выводимых тегом {sort} добавлена возможность выставления сортировки для каждой конкретной категории, а не для всех категорий одновременно.

28. Для ссылок, публикуемых в публикациях, добавлена возможность использование в них блочных элементов, таких как "p", "div" и т.д. Что позволяет DataLife Еngine более точно и правильнее соответствовать стандартам HTML5.

29. Добавлена возможность добавления новых пользователей в панели управления DataLife Engine, при работе с панелью с использованием смартфонов.

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

31. Для дополнительных полей, имеющих тип "Перекрестные ссылки" , добавлена возможность использования в значениях символа двойных кавычек, и символа амперсанда.

32. В случае если для шаблона E-Mail сообщения, которое отправляется при восстановлении забытого пароля, установлено использование HTML формата для данного письма, то ссылки, которые генерирует тег {%lostlink%} в этом шаблоне, будут формироваться уже в виде готового HTML кода, а не просто текстовые ссылки.

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

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

36. Лимит на количество символов метатега Description для категорий увеличен до 300 символов . Максимальная длина соответствует теперь максимальной длине, установленной поисковой системой Google, для вывода данной информации в результатах поиска.

37. Улучшен поиск похожих новостей на сайте. Показ похожих новостей стал более релевантным по сортировки найденных публикаций.

38. Улучшена поддержка IPv6 адресов посетителей сайта. В некоторых определенных случаях полный адрес мог не помещаться в базу данных. Теперь длина полей зарезервирована согласно спецификации RFC 4291.

39. Улучшено формирование метатега og:description протокола Open Graph при просмотре полных новостей. Формирование происходит более корректно при использовании в качестве основного контента дополнительных полей для публикаций.

40. Улучшена работа системы безопасности DataLife Engine , с целью более корректной проверки данных на поддоменах, на некоторых хостингах, имеющий структуру поддоменов, в виде подпапок основного домена.

41. Добавлена поддержка протокола tel: для ссылок публикуемых на сайте при помощи BB тегов.

42. Обновлены визуальные редакторы TinyMCE и Froala до актуальных версий . Исправлен ряд выявленных ошибок в данных редакторах.

43. Исправлена проблема, с использованием в дополнительных полях профиля пользователей, полей с типом "Список", в которых использовались значения с использованием символа "|".

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

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

46. Исправлена проблема , при которой нельзя было приступить к обновлению сайта на новую версию, в случае если сайт был в кодировке отличной от UTF-8 при этом логин или пароль администратора содержал в себе буквы, написанные на кириллице.

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

48. Исправлена проблема, при которой не работало редактирование комментариев в панели управления скриптом, в случае если в настройках скрипта был включен TinyMCE редактор.

49. Исправлена проблема , при которой не отображалось количество дней, в течении которых можно добавлять комментарии к публикации, если такие лимиты были установлены в настройках скрипта в админпанели.

50. Исправлена проблема , при которой дополнительное поле, имеющее тип "Загружаемый файл", не отображалось на сайте в виде ссылки на скачивание файла, а выводилось простым тегом.

51. Исправлены обнаруженные и заявленные ранее небольшие ошибки в скрипте.

Приветствую всех, кто посвящает этим строкам свое драгоценное время.

В этой статье я хочу рассказать о способах оптимально настроить сервер и систему управления контентом DataLife Engine. За 4 года работы с интернет сайтами и серверами я усвоил, что безопасность превыше удобства и что ей нужно уделять внимание. Оговорка : я не претендую на авторство чьей-либо интеллектуальной собственности! Весь материал собран на просторах интернета.

Ниже будут описаны действия, которые помогут распределить нагрузку сервера, обезопасить его от DOS атак, ограничить доступ к FTP протоколу и правильно сконфигурировать систему DataLife Engine.

Защита и конфигурация вашего сервера.

1. Настройка конфигурации сервера с использованием связки front-end Nginx к Apache.

Преимущества подобной схемы можно понять на небольшом примере. Представьте себе, что вашему веб серверу Apache необходимо обслужить порядка 1000 запросов одновременно, причем многие из них подключены к медленным каналам связи. В случае использования Apache мы получим 1000 процессов httpd, на каждый из которых будет выделена оперативная память, и эта память не освободится до тех пор, пока клиент не получит запрошенный контент.

В случае схемы с применением front-end сервера получим значительную экономию ресурсов за счет того, что после поступления запроса, nginx передает запрос Apache и быстро получает ответ. В итоге, Apache, после того как отдал ответ nginx, освобождает память. Далее с клиентом взаимодействует веб-сервер nginx, который как раз и написан для раздачи статического контента большому количеству клиентов при незначительном потреблении системных ресурсов.

Для корректной работы нашей связки понадобиться модуль для Apache. Возникает такая необходимость по следующей причине: запросы к Apache приходят с IP-адреса, на котором работает nginx, соответственно, в журнальных файлах Apache будет фигурировать только IP-адрес nginx сервера. Также без использования данного модуля начнутся проблемы со скриптами, в которых используется IP-адрес посетителя и перестанет правильно работать механизм ограничения доступа по IP-адресам с помощью.htaccess.

Установка NGINX на популярные ОС.

Red Hat Enterprise Linux 4 / CentOS 4
Для установки nginx в этих операционных системах вам необходимо подключить дополнительный репозиторий пакетов.

Red Hat Enterprise Linux 5 / CentOS 5
Для установки nginx в этих операционных системах вам необходимо подключить дополнительный репозиторий пакетов EPEL.

ASPLinux Server 5 / Fedora
nginx присутствует в стандартной поставке дистрибутива.

Если репозитории подключены или просто не требуются, выполняем: yum install nginx

Установка Apache.

Чтобы установить Apache веб-сервер достаточно выполнить: yum install httpd

Установка mod_rpaf.

1. Устанавливаем пакет httpd-devel:

yum -y install httpd-devel


2. Скачиваем и устанавливаем mod_rpaf:
Входим в директорию /usr/local/src

cd /usr/local/src


Загружаем в /usr/local/src файл mod_rpaf-0.6.tar.gz

wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz


Распаковываем mod_rpaf-0.6.tar.gz

tar xzf mod_rpaf-0.6.tar.gz


Переходим в каталог в который распаковали

Ставим модуль в систему

apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c


3. Далее нужно создать файл конфигурации mod_rpaf - /etc/httpd/conf.d/rpaf.conf и добавить в него следующие строки:


RPAFenable On
RPAFproxy_ips 127.0.0.1 xx.xx.xx.xx yy.yy.yy.yy


где xx.xx.xx.xx и yy.yy.yy.yy - IP адреса вашего сервера. Если на сервере более двух IP, добавьте их по той же аналогии.

service httpd restart


4. В nginx внутри блока http {} должны быть указаны строки:

proxy_set_header Host $host;


Если данные строки указаны, дописывать не нужно.

Если модифицируется nginx.conf, следует перезапустить nginx:

/etc/init.d/nginx stop
/etc/init.d/nginx start


5. Как проверить, работает ли установленный модуль?
На любом из доменов, которые расположены на Вашем сервере, разместите файл test.php с содержимым:

" echo $_SERVER["REMOTE_ADDR"]; ?>"


Далее зайдите по ссылке , где domain.tcom - имя вашего домена. Если отображается IP, отличающийся от IP вашего сервера, модуль работает корректно.

Настройка NGINX.

Ниже приведен конфигурационный файл nginx для работы в качестве front-end сервера. Подразумевается, что nginx будет работать на всех интерфейсах на 80 порту, а Apache будет работать на интерфейсе 127.0.0.1 и порту 8080. Сохраните данный конфигурационный файл в каталоге /etc/nginx/ с именем nginx.conf.

user nginx;
worker_processes 10;
error_log /var/log/nginx/error.log debug;
pid /var/run/nginx.pid;

events {
worker_connections 20000;
}

http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main "$remote_addr - $remote_user [$time_local] $status "
""$request" $body_bytes_sent "$http_referer" "
""$http_user_agent" "http_x_forwarded_for"";
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 30;
send_timeout 900;
server_tokens off;
server {
listen 80;
server_name _;
server_name_in_redirect off;
access_log /var/log/nginx/host.access.log main;
location / {
proxy_pass http://127.0.0.1:8080/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 10m;
}
}


Настройка Apache.

В файле конфигурации Apache /etc/httpd/conf/httpd.conf найдите строку:

и замените ее строкой:

Listen 127.0.0.1:8080


Настройка mod_rpaf.

Добавьте модуль mod_rpaf в файл конфигурации Apache. Для этого в файл /etc/httpd/conf/httpd.conf добавьте следующую строку:

LoadModule rpaf_module modules/mod_rpaf-2.0.so


Затем в этот же файл добавьте строки:

RPAFenable On
RPAFsethostname Off
RPAFproxy_ips 127.0.0.1 192.168.0.1
RPAFheader X-Real-IP


Вместо 192.168.0.1 необходимо поставить IP-адрес сервера.

2. Конфигурация сервера для защиты от dos-атак.

Включаем в nginx кеширование главной страницы для тех у кого нет cookie.

Добавляем ограничения в nginx.conf:

limit_req_zone $binary_remote_addr zone=two:20m rate=2r/s;
server{
location / {
limit_req zone=two burst=5;
}
}
}


Пользуемся tail и awk:

tail -f /var/log/nginx/access.log | grep GET / HTTP/1.1" 503


Подключаем лог:

tail -f /var/log/nginx/access.log | grep GET / HTTP/1.1" 503 | awk "{ print $1 }"


Получаем IP машин:

iptables -A INPUT -p tcp -j DROP -s $IP


Заносим IP в Firewall:

tail -f /var/log/nginx/access.log | grep GET / HTTP/1.1" 503 | awk "{ print $1 }" | xargs -t -l iptables -A INPUT -p tcp -j DROP –s


Теперь установим connlimit для iptables чтобы ограничить подключения ботов. В правилах ставим разрешение на 5 подключений с одного IP, и 25 из подсети класса С.

DDOS атака с 16000 ботов - Load average: 1.4 1.9 2.0

Ограничение доступа по FTP

Для этого нам понадобитсья файл.ftpaccess. Он поможет запретить или разрешить доступ по FTP с указанных IP адресов. Кто-то может задать вопрос: «У меня динамический IP, как мне правильно использовать.ftpaccess?» Ответ я подразумеваю только такой: «Если вам нужна данная надстройка безопасности - приобретите у вашего провайдера статический IP. Много денег у вас за него не попросят.»

Чтобы создать.ftpacces файл нам понадобиться SSH доступ. Можно воспользоваться программой winscp. Настроек в.ftpaccess может быть большое множество, однако нас интересует только один параметр. Прописав эти строки в файле вы закроете полностью доступ от всех:

Deny from all


После написанного выше, никто не сможет зайти на ФТП. Для добавления разрешения доступа определенному IP нужно указать следующие параметры:

Allow from 127.0.0.1
Deny from all


Естественно адрес 127.0.0.1 указан для примера и его нужно заменить на собственный.

Важно! Лучше всего запретить доступ по FTP абсолютно всем и подклчаться только по SSH.

Защита системы управления контентом DataLife Engine.

1. Установите и настройте .

2. Переименуйте файл админпанели и сделайте фейк по старому адресу (www.sait.com/admin.php) при переходе на который пользователь будет заблокирован посредством запрета его ip в.htaccess.

Переименовали? Теперь создаем в корневом каталоге файл ip.txt для хранения ip-адресов. Даем ему и.htaccess права CHMOD – 777.

Создаем файл admin.php следующего содержания:


$ip = getenv ("REMOTE_ADDR");

$log = fopen("ip.txt", "a+");
fwrite($log, "// ".$ip."\n");
fclose($log);

$f = fopen($_SERVER["DOCUMENT_ROOT"] . "/.htaccess", "a");
fwrite($f, "\ndeny from " . $ip);
fclose($f);

Админ панель DataLife Engine

Текст, например: Твой ip в логах, я найду тебя!

Бойся, ничтожество, ха-ха!

"
3. Добавим дополнительную аутентификацию в админцентре.

Необходимо придумать еще один логин и пароль (не используйте данные вашего административного аккаунта). Второй логин и пароль должен в корне отличаться от первого. Определились? Отлично! Теперь зашифруем наш пароль в md5 (сделать это можно на сайте md5encryption.com).
Далее открываем admin.php (вспомните, ранее мы его переименовали и, по этому, если вы назвали его superadmin.php - вам необходимо открывать именно этот его) и после строки:

добавляем:

$login="вписываем придуманный логин";
$password="и сгенерированный пароль в md5";
if (!isset($_SERVER["PHP_AUTH_USER"]) || $_SERVER["PHP_AUTH_USER"]!==$login ||
md5($_SERVER["PHP_AUTH_PW"])!==$password) {
header("WWW-Authenticate: Basic realm="Admin Panel"");
header("HTTP/1.0 401 Unauthorized");
exit("Access Denied");}


4. Отключим неиспользуемые системой функции php.

Для поиска файла php.ini создаем файл phpinfo.php с текстом:

После поиска обязательно удалить phpinfo.php!

disable_functions = allow_url_fopen, eval, exec, system, passthru, scandir, popen, shell_exec, proc_open, proc_close, proc_nice, get_current_user, getmyuid, posix_getpwuid, apache_get_modules, virtual, posix_getgrgid, getmyinode, fileowner, filegroup, getmypid, apache_get_version, apache_getenv, apache_note, apache_setenv, disk_free_space, diskfreespace, dl, ini_restore, openlog, syslog, highlight_file, show_source, symlink, disk_total_space, ini_get_all, get_current_user, posix_uname, allow_url_fopen


5. Создаем фильтрацию GET и POST запросов, предотвращаем инъекции в БД и получение из нее данных.

Создаем файл.php с произвольным названием и следующим содержимым:

//поставить еденицу если хотите включить отладку запросов
$debug = 0;

$bag_req = array("select", "eval", "echo", "UPDATE", "LIMIT", "INSERT", "INTO", "union", "CONCAT", "INFORMATION_SCHEMA", "OUTFILE", "DUMPFILE", "LOAD_FILE", "BENCHMARK", "SUBSTRING", "ASCII", "CHAR", "database", "HEX", "\\.\\/", "%00", "\\.htaccess", "config\\.php", "document\\.cookie");
$request = serialize($_GET);


if($_GET)
{
foreach ($bag_req as $key => $value) {
{
В массиве найден запрос $value
$request";
}
}
}
if($_POST)
{
$request = str_replace("selected_language", "sl", serialize($_POST));
$urequest = urldecode($request);
$brequest = base64_decode($request);
foreach ($bag_req as $key => $value) {
if(preg_match("/$value/i", $request) || preg_match("/$value/i", $urequest) || preg_match("/$value/i", $brequest))
{
if($debug == "1") $do_debug = "
В массиве найден запрос $value , который блокирует правильную работу
$request";
die("BAD REQUEST $do_debug");
}
}
}
?>


Сохраняем его на сервере в любом каталоге системы DLE. Открываем файл engine/classes/mysql.php и после:

if(!defined("DATALIFEENGINE"))
{
die("Hacking attempt!");
}


подключаем созданный файл:

include_once(ENGINE_DIR."/путь_к_файлу/название.php");


6. Используя бесплатные компоненты к DLE обязательно узнайте мнение специалиста о их надежности.

При возникновении вопросов обращайтесь к поисковым системам - весь материал в свободном доступе!
Есть что добавить? Милости прошу к обсуждению!

Удачи вам и вашим проектам!

Были подготовлены и реализованы следующие изменения:

1. В модуле управления рекламными добавлена поддержка рубрик. Вы можете в данном модуле создавать рубрики и уже в этих рубриках размещать ваши рекламные материалы. Рубрики выводятся в самом верху, перед списком добавленных рекламных материалов, в виде папок. В самих рубриках также можно создавать дополнительные подрубрики в неограниченном количестве. Тем самым при большом количестве рекламных материалов вы можете разместить их для удобства навигации по ним, в различных рубриках и подрубриках.

2. Добавлена возможность учета количества просмотров для рекламных материалов, добавляемых в панели управления скриптом. Учет просмотров ведется только для реальных пользователей, которые зашли на сайт с использованием браузера. Боты, сканирующие сайт, не учитываются. Учет просмотров включается непосредственно для каждого баннера, поэтому вы можете учитывать просмотр только для нужных рекламных материалов. Также у вас есть возможность указать, нужно ли учитывать все просмотры баннера, или учитывать только просмотры от уникальных пользователей.

3. Для рекламных материалов в админпанели добавлена возможность ограничивать показ баннера на основе количества его просмотров, и вы можете отключить баннер при достижении указанного максимального количества просмотров.

4. Добавлена возможность учета количества кликов для рекламных материалов, добавляемых в панели управления скриптом. DataLife Engine автоматически перехватывает HTML теги, опубликованные с использованием тегов <а href="..."> , и автоматически ведет учет кликов по ним. Какого-либо особого оформления этих ссылок не требуется, они могут вести по любым нужным вам адресам. Также у вас есть возможность указать, нужно ли учитывать все клики по ссылке, или учитывать только клики от уникальных пользователей.

5. Для рекламных материалов в админпанели добавлена возможность ограничивать показ баннера на основе количества кликов по вашему баннеру, и вы можете отключить показ баннера при достижении указанного максимального количества кликов по нему.

6. Для рекламных материалов в админпанели добавлена возможность очистки количества просмотров и кликов для каждого рекламного баннера.

Html"> 7. Добавлено использование канонических ссылок, в коде страниц , для всех страниц сайта включая навигацию по разделам, просмотр полной новости и т.д. Данная возможность позволяет повысить SEO оптимизацию сайтов, а также позволяет избегать дублей страниц в случае если где-либо в сети интернет публикуются некорректные ссылки на ваш сайт, либо если по каким-либо причинам необходимо отключить контроль неверных ЧПУ.

8. В настройки категорий в панели управления, добавлена возможность устанавливать по умолчанию для категории, разрешено ли публиковать новости из данной категории на главной странице сайта. Данные настройки действуют в момент добавления или редактирования публикации, и если для категории запрещена публикация на главной странице, то соответствующая опция убирается в момент добавления или редактирования публикации.

9. В настройки категорий в панели управления, добавлена возможность устанавливать по умолчанию для категории, разрешены ли комментарии для публикаций из данной категории. Данные настройки действуют в момент добавления или редактирования публикации, и если для категории отключены комментарии, то соответствующая опция убирается в момент добавления или редактирования публикации.

10. В настройки категорий в панели управления, добавлена возможность устанавливать по умолчанию для категории, разрешен ли рейтинг для публикаций из данной категории. Данные настройки действуют в момент добавления или редактирования публикации, и если для категории отключено использование рейтинга, то соответствующая опция убирается в момент добавления или редактирования публикации.

11. В настройки скрипта в панели управления, в раздел настроек безопасности, добавлена возможность включения автоматической защиты сайта от встраивания во фреймы на посторонних сайтах. При включении данной настройки, показ вашего сайта будет автоматически блокирован, если он встроен в iframe на чужом сайте. Тем самым вы можете защитить свой сайт от таких атак как кликджекинг.

12. Расширены возможности модуля "Метатеги" , данный модуль был переименован в "Заголовки, описания, метатеги". Теперь в данном модуле вы можете задавать для страниц не только метатеги, но и отдельный заголовок для страницы и описание страницы, которые вы в дальнейшем можете вывести в любом месте вашего шаблона. Для этого добавлены новые глобальные теги для шаблонов: {page-title} - выводит указанный вами заголовок для страницы, {page-description} - выводит указанное вами описание для страницы. В описании страницы также допустимо использование BB и HTML тегов. Тем самым при помощи данного модуля, вы можете, например, создать и вывести заголовки и описания для облака тегов к каждому тегу персонально и т.д.

13. Добавлены новые глобальные шаблонные теги текст , которые выводят текст, заключенный в них если в модуле "Заголовки, описания, метатеги" был задан заголовок для просматриваемой страницы. А также добавлены противоположные теги текст которые выводят текст, заключенный в них если заголовок для просматриваемой страницы не был задан. Также были добавлены аналогичные теги и для описания: текст , которые выводят текст, заключенный в них если в модуле "Заголовки, описания, метатеги" было задано описание для просматриваемой страницы, текст которые выводят текст, заключенный в них если описание для просматриваемой страницы не было задано.

14. Для шаблона меню категорий (categorymenu.tpl) текст , которые выводят текст, заключенный в них, если просматриваемая на сайте категория, или новость, не принадлежит категории из меню. Данный тег может использоваться только внутри тегов и используется, например, для вывода какой-либо информации (например ссылок) только для не активных категорий из меню.

15. Расширены возможности по выводу публикаций на основе значений дополнительных полей в публикациях. При обращении по адресу http://вашсайт/xfsearch/имя поля/значение поля/ будут выводится публикации, как и ранее, содержащие указанное значение в данном конкретном поле, если для поля задана опция "использовать как перекрестные ссылки". При обращении по адресу http://вашсайт/xfsearch/значение поля/ будут выводится публикации содержащие данное значение по всем дополнительным полям. При обращении по адресу http://вашсайт/xfsearch/имя поля/ будут выводится все публикации, в которых заполнено данное указанное поле.

16. В настройки скрипта добавлена возможность назначения отдельной страницы с именем 404.html в корне вашего сайта, для вывода страниц, контент для которых отсутствует. В случае включения данной настройки, вместо стандартного системного сообщения "К сожалению, данная страница для Вас недоступна, возможно был изменён её адрес или она была удалена.", вы можете вывести отдельную специально подготовленную заранее страницу, с полностью отдельным оформлением. Данное нововведение будет полезно для вебмастеров, которые хотят сделать отдельное оформление 404 страниц своего сайта.

17. В настройки скрипта добавлена возможность назначения HTTP заголовка , откуда необходимо получать IP адреса пользователей. Данное нововведение будет полезно для сайтов, которые используют различные внешние прокси серверы, и не имеют возможности правильно перенастроить сервер под них, для получения корректных реальных IP адресов посетителей. Например, при использовании сервиса cloudflare и других для защиты от DDOS атак и использовании обычного хостинг тарифа без доступа к серверным настройкам. Теперь вы можете в настройках скрипта в админпанели указать скрипту откуда ему брать IP адрес посетителей сайта.

18. При удалении категории в панели управления скриптом , добавлена возможность выбора, как поступить с публикациями, которые находятся в данной категории. Вы можете: "Убрать данную категорию из публикаций", "Заменить категорию на другую или другие категории", а также "Удалить все публикации находящиеся в данной категории". При этом если происходит удаление или замена категории из публикации, то будет убрана или заменена только удаляемая категория. Например, ваша публикация находится в категориях "В мире", "Новости", "Популярное", и вы к примеру, удаляете категорию "В мире", то у публикаций, находящихся в данной категории, только категория "В мире" будет удалена или заменена, все остальные категории в списке у данных публикаций останутся на месте.

19. Для публикаций добавлен новый тип дополнительного поля: "Чистый HTML и JS". При использовании данного поля, DataLife Engine не будет вмешиваться в текст, написанный в нём, и не будет проводить фильтрацию HTML кода этого текста, а также разрешает написание в нём чистого jаvascript кода. Данное поле будет полезно, когда вам в новость нужно вставить какой-то код, над которым не нужно проводить проверку безопасности, например, какой-либо свой плеер и т.д. Внимание, с учетом того скрипт не будет фильтровать текст из этого поля, при его создании обязательно установите ограничения, каким группам его разрешено использовать. Не разрешайте его использование обычным пользователям, которым вы не доверяете, в противном случае это может нести угрозу безопасности вашего сайта.

20. Для дополнительных полей публикаций, имеющих опцию "Использовать как перекрестные ссылки" , добавлена возможность указания разделителя данных ссылок. Вы можете указать как отдельные символы, так и HTML код в качестве разделителя. Ранее в качестве разделителя списка использовалась запятая, теперь вы можете задать свой персональный разделитель для каждого поля, что позволяет создать для каждого поля свое уникальное оформление вывода в шаблоне.

21. Добавлена поддержка технологии "Яндекс Турбо" для обычных RSS каналов , без использования включения в настройках типа RSS потока как "Яндекс новости", для этого добавлена поддержка вывода полной новости тегом {full-stоry} для любого типа RSS потока. A также обновлен стандартный шаблон /templates/rss.xml в котором демонстрируется как должен выглядеть шаблон с полной поддержкой "Яндекс Турбо". Аналогично поддерживается полностью и возможность настройки шаблона RSS для технологии "Яндекс Дзен".

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

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

25. Добавлено использование микроразметки schema.org для вывода рейтинга с типом "Оценка". Использование данной микроразметки позволяет для полных новостей при выводе их в результатах поиска в Google выводить также и рейтинг публикации.

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

27. Добавлена возможность автоматического уведомления администрации сайта о поступлении новой новости от пользователей, находящейся на модерации (в случае если это включено в настройках скрипта), если новость была добавлена из панели управления скриптом. Ранее уведомление отправлялось только если публикация добавлялась непосредственно с сайта.

28. В случае если пользователь редактирует публикацию в панели управления , которая ранее была уже опубликована на сайте, но согласно настройкам его группы, ему запрещено публиковать без модерации, или разрешено публиковать не во все категории, то администрации сайта также будет отправлено соответствующее e-mail уведомление, что данная новость ожидает модерации.

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

30. Для модуля "Перекрестные ссылки" в панели управления , добавлены две новые области замены для ссылок. Вы можете дополнительно указать замену только в статических страницах, а также выбрать замену в статических страницах, новостях и комментариях.

31. Для модуля "Поиск и Замена" в панели управления , добавлена возможность массовой замены текста в опросах к публикациям и в голосованиях на сайте.

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

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

34. В админпанели скрипта добавлен форматированный вывод количества различных счетчиков (просмотры, публикации, комментарии). Вывод этих счетчиков осуществляется в форматированном виде в виде разделения пробелом сотен, тысяч, миллионов и т.д. Что дает более наглядное представление и восприятие данных чисел.

35. Для шаблонов вывода комментариев и добавления комментариев (addcomments.tpl и comments.tpl) добавлена поддержка новых тегов текст - выводит текст в теге, если новость принадлежит указанным категориям, а также тегов: текст - выводит текст в теге, если новость не принадлежит указанным категориям. Тем самым вы можете задать разное оформление вывода комментариев и добавления комментариев для публикаций из разных категорий.

36. Добавлена поддержка склонений слов для тега вывода количества голосов, которые были выставлены для рейтинга публикаций. Например, вы можете использовать {vote-num} отзыв||а|ов. Ранее для этого тега это было недоступно, т.к. он содержит в себе HTML код, а не просто число.

37. В случае если в настройках скрипта включено использование сайта только по HTTPS протоколу , то cookies браузером также будут отправляться на сервер только по HTTPS протоколу и автоматически блокироваться если используется обычный HTTP протокол.

38. Добавлен контроль неверных ЧПУ для статических страниц , текст публикации которых разбит на несколько страниц. В случае если указан некорректный номер страницы, будет производится автоматический 301 редирект на начальный адрес данной страницы.

39. Для RSS импорта публикаций добавлена поддержка импорта картинок из тега enclosure содержащего изображение к публикации. В случае если краткое описание в потоке RSS является просто текстом, а картинка дана в нем отдельным тегом, то к краткой новости при импорте в самое начало будет добавлена также и картинка к этой публикации.

40. Добавлена поддержка редиректов для получения полных новостей при использовании RSS импорта публикаций. В случае если ссылка из RSS потока является редиректом для дальнейшего перехода к полному тексту новости на сайте источнике, то DataLife Engine автоматически последует по этому редиректу и будет брать контент из конечного источника. Тем самым получение полных новостей будет более качественным чем ранее.

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

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

43. Для авторизации с использованием социальной сети "Одноклассники" , добавлена возможность автоматического получения E-mail пользователя, при условии, что само приложение получило соответствующие права от Одноклассников. Внимание, по умолчанию Одноклассники не дают прав на получение E-mail, и для получения соответствующего доступа вам необходимо дополнительно обращаться в соц. сеть для разрешения получения e-mail. Если разрешение получено, то DLE также автоматически будет импортировать e-mail адрес.

44. Улучшена система вычисления пропорций изображения при создании уменьшенных копий. Тем самым создается более корректная и качественная уменьшенная копия.

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

46. Улучшена система контроля появления дублей страниц , при просмотре всех последних комментариев на сайте.

47. Оптимизирована обработка дополнительных полей публикаций при показе кратких публикаций, а также при работе модуля вывода популярных публикаций.

48. Обновлены визуальные редакторы TinyMCE и Froala до актуальных версий. Исправлен ряд выявленных ошибок в данных редакторах.

49. Для редактора TinyMCE добавлена поддержка вставки тегов скрытого текста, c использованием соответствующей кнопки в редакторе.

50. При использовании редактора Floara для комментариев, добавлена возможность быстрой загрузки и вставки изображений в комментарий. Вы можете либо нажать на иконку вставки картинки и выбрать файл для загрузки, либо просто перенести файл картинки с компьютера в поле редактора мышью, после чего картинка автоматически будет загружена и вставлена в позицию курсора в редакторе.

51. Внесены небольшие изменения в верстке панели управления скриптом , направленные на устранение некоторых ошибок в верстке и улучшение взаимодействия с панелью управления.

52. Обновлены до актуальных версий библиотека отправки почты с сайта, а также библиотека определения мобильных устройств.

53. Исправлена проблема, при которой в предварительном просмотре публикаций не обрабатывались теги и .

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

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

56. Исправлена проблема, при которой не работала динамическая загрузка комментариев, если это включено в настройках скрипта, и при этом тег {jsfiles} размещен в самом низу сайта.

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

58. Исправлены обнаруженные и заявленные ранее небольшие ошибки в скрипте.

Понравилась статья? Поделитесь с друзьями!
Была ли эта статья полезной?
Да
Нет
Спасибо, за Ваш отзыв!
Что-то пошло не так и Ваш голос не был учтен.
Спасибо. Ваше сообщение отправлено
Нашли в тексте ошибку?
Выделите её, нажмите Ctrl + Enter и мы всё исправим!