• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Информация miniFAQ

Статус
В этой теме нельзя размещать новые ответы.

Jerry

тот самый Учиха
Регистрация
16 Апр 2006
Сообщения
1.226
Реакции
514
Формат таков: в первой моей месcаге будут ссылки вида "Использование php вставок в шаблоне" и ссылка на сообщение на форуме. Во втором сообщении будет распологатся список полезных сайтов в интернете для DLE.

Что можете делать вы - тема будет всегда открыта, и именно вы будете делать её такой как вам удобно. Часто забываете как делать вставки? Нашли на форуме этот способ и теперь часто его ищите вновь? Фтопку! Опубликовали в этой ветке сообщение вида:
Код:
использование пхп вставок в шаблоне
http://www.nulled.ws/showpost.php?p=232847&postcount=3
и позже как я увижу ваще сообщение, я обязательно обновлю шапку темы.

Поехали :D

Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся

Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
 
Ссылки на сайты для DLE:

Для просмотра ссылки Войди или Зарегистрируйся - официальный сайт CMS
4dle.ru - сайт никона, ресурс на котором публикуются бесплатные моды, шаблоны, хаки и исправления. Любят лицензию и не любят нас :D
Для просмотра ссылки Войди или Зарегистрируйся - сайт коляна
 
Делаем дату новости как в m3 reborn
Для просмотра ссылки Войди или Зарегистрируйся
+ надо заменить формат даты в админке на : M j
 
Я не уверен, будет ли полезно, но если чего, удалите.

[SIZE="-2"]И да: в фантазиях я маленький борец за справедливость в обтягивающем трико. Эдакий Супермен или Бэтмен, только симпатишнее и не такой голубой.[/SIZE]

Если вы используете нул, то у вас могут возникнуть проблемы с хостером. Банально, кто-то возмёт и стукнет в сюппорт: сайт example.com, которому вы предоставляете хостинг, использует нуленую версию скрипта Datalife Engine, убейте его.

Хостер обработает, подумает и вышлет вам претензию или, вероятнее всего, ультиматум. Презумция невиновности у хостера не работает, админ сломал. :)

Что надо делать в таком случае? Отвечать... Или заставить отвечать хостера - отвечать за базар. :D

Движок Datalife Engine (далее DLE) вырос из движка CuteNews (далее CN) идущего в те далёкие времена под лицензией GNU GPL (далее GPL). Вот от той версии и пошла вилка CN на MySQL - DLE. Я не отрицаю, было многое изменено и в итоге вилка стала полноценным отдельным движком (на момент написания, DLE дорос аж до версии 7.2) что и побудило автора DLE сменить лицензию. Оставим вопрос о том может ли вилка от программы под GPL стать отдельным движком, я этого не знаю на 100%. Но знаю что:
GPL вирусная лицензия, использование одного куска кода под GPL в другом коде не под GPL означает, что весь код будет под GPL. Инклуды в том числе тоже код (для подключений есть отдельная лицензия LGPL).

Вот, в принципе, единственный аргумент, который понадобится.

У DLE несовместимая с GPL лицензия и в то же время в DLE используется код под GPL. Значит... лицензия DLE - GPL.

Следовательно, никакой нуленой DLE вы не пользуетесь. Это всё п**дёшь и провакация стукача, который намялявил хостеру. (Намалявил, гы :).)

Сам код.

CuteNews

PHP:
///////////////////////////////////////////////////////
// Function:     formatsize
// Description: Format the size of given file

function formatsize($file_size){
    if($file_size >= 1073741824)
        {$file_size = round($file_size / 1073741824 * 100) / 100 . "Gb";}
    elseif($file_size >= 1048576)
        {$file_size = round($file_size / 1048576 * 100) / 100 . "Mb";}
    elseif($file_size >= 1024)
        {$file_size = round($file_size / 1024 * 100) / 100 . "Kb";}
    else{$file_size = $file_size . "b";}
return $file_size;
}

PHP:
///////////////////////////////////////////////////////
// Class:     microTimer
// Description: calculates the micro time

class microTimer {
    function start() {
        global $starttime;
        $mtime = microtime ();
        $mtime = explode (' ', $mtime);
        $mtime = $mtime[1] + $mtime[0];
        $starttime = $mtime;
    }
    function stop() {
        global $starttime;
        $mtime = microtime ();
        $mtime = explode (' ', $mtime);
        $mtime = $mtime[1] + $mtime[0];
        $endtime = $mtime;
        $totaltime = round (($endtime - $starttime), 5);
        return $totaltime;
    }
}

Datalife Engine

PHP:
///////////////////////////////////////////////////////
// Function:     formatsize
// Description: Format the size of given file

function formatsize($file_size){
    if($file_size >= 1073741824)
        {$file_size = round($file_size / 1073741824 * 100) / 100 . " Gb";}
    elseif($file_size >= 1048576)
        {$file_size = round($file_size / 1048576 * 100) / 100 . " Mb";}
    elseif($file_size >= 1024)
        {$file_size = round($file_size / 1024 * 100) / 100 . " Kb";}
    else{$file_size = $file_size . " b";}
return $file_size;
}

PHP:
///////////////////////////////////////////////////////
// Class:     microTimer
// Description: calculates the micro time

class microTimer {
    function start() {
        global $starttime;
        $mtime = microtime ();
        $mtime = explode (' ', $mtime);
        $mtime = $mtime[1] + $mtime[0];
        $starttime = $mtime;
    }
    function stop() {
        global $starttime;
        $mtime = microtime ();
        $mtime = explode (' ', $mtime);
        $mtime = $mtime[1] + $mtime[0];
        $endtime = $mtime;
        $totaltime = round (($endtime - $starttime), 5);
        return $totaltime;
    }
}
 
Пару тем, которые касались меня когда то:
Метатеги, улучшение работы генератора метатегов.
Для просмотра ссылки Войди или Зарегистрируйся

permalink или адрес ссылки для полной новости

Для просмотра ссылки Войди или Зарегистрируйся
Пошагово об изменении плеера
Для просмотра ссылки Войди или Зарегистрируйся
Там же ссылка на обзор популярных плееров
Ссылка на пример поискового запроса
Для просмотра ссылки Войди или Зарегистрируйся
Спрашивал на нуледе, в последсвии вылез в 2 хака:
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
 
Источник 4dle.ru

Защита файлов при помощи .htaccess урок №1

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

итак начнем
откроем .htaccess в корне нашего сайта и в самом верху файла, напишем вот что:

PHP:
<FilesMatch "(\.(engine|.*sql|templates|tpl(\.php)?|xtmpl))$">
  Order allow,deny
</FilesMatch>

как видно из листинга данной опции, мы закрываем доступ в директории:
engine
templates

и запрещаем просмотр файлов с расширениями:
.sql
.tpl
.php
.xtmpl

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

Как альтернатива, можно также создать .htaccess в папке Temlates с содержимым:

PHP:
<Files "*.tpl">
Deny from all
</Files>


Защита файлов при помощи .htaccess урок №2

В текущем уроке, я попытаюсь рассказать как можно защитить себя от воровства трафика с вашего сайта, а именно "личерство"
Я не претендую на авторство описанного тут способа, всё взято из открытых источников, и из helpA к apache.

способ намбер ван:

PHP:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?domain.ru/ [nc]
RewriteCond %{HTTP_REFERER} !^http://(www.)?google.com/ [nc] - открываем доступ к картинкам поисковику Google
RewriteRule .*.(gif|jpg|png)$ http://domain.ru/leech.jpg [nc]

Теперь попытаемся разобраться, что же делает данный способ

При открытии какой либо странички на Вашем сайте, на ней присутствует множество картинок, будь то картинки оформления сайта (дизайн) или же картинки из новостей
Так вот, данный участок "кода" проверяет, откуда сделан запрос, с Вашего сайта или нет, за это как раз отвечает участок кода:

PHP:
RewriteCond %{HTTP_REFERER} !^http://(www.)?domain.ru/ [nc]

и если же запрос сделан с Вашего сайта, то картинку показываем, а если вдруг, Ваша картинка расположена на вашем сайте, а запрос пришёл с какого - то вася-пупкин.ру
то перенаправим запрос оригинальной картинки на
_http://domain.ru/leech.jpg
и как результат "личер" увидит на своём сайте не картинку из нашей новости, а картинку которую мы подставляем вместо оригинальной, в данном случае это
_http://domain.ru/leech.jpg


способ номер два:

PHP:
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http://(www.)?личер.ru/ [NC,OR]
RewriteCond %{HTTP_REFERER} ^http://(www.)?личер2.ru/ [NC]
RewriteRule .(jpeg|gif|png)$ images/leech.jpg [R,L]

Что происходит в данном случае, хотя я думаю некоторые уже начали и сами догадываться
в данном случае мы запрещаем доступ к нашим картинкам, только определённым сайтам, а это сайты:
_www.личер.ru и _www.личер2.ru
 
robots.txt для Datalife Engine

Может кому будет интересно

В этой записи я расскажу о том, как сделать правильный robots.txt для своего сайта на Даталайф.

Откуда проблемы?
Имея кучу сайтов на DLE, сталкиваешься с одинаковыми проблемами: к примеру, Яндекс проиндексировал печатные версии страниц (url вида print:…), конечно же, Сапа не видит их. А Яндексу они приятнее, так как всякого мусора на них меньше: только контент. Или же Яндекс индексирует ссылки вида ”my-dle-site/user/ya-spamer”, на которых куча внешних ссылок в профилях и никакого контента.
Вообще, причины вспомнить о robots.txt могут быть разными, к примеру, в этом заветном файле можно передать Sitemap Google’у и Яндексу не заходя в панель вебмастера.

Как сделать правильно?
Почитав и интернете форумы и официальные мануалы поисковиков и сравнивая прочитанное, можно сказать, что люди часто не читают руководств и ошибаются, к примеру, в robots.txt нет директивы”Allow” есть только”Disallow”
Для начала давайте выясним, чего мы хотим от нашего файла:
Хорошая индексируемость нужных страниц ПС
Отсутствие ненужных страниц в индексе ПС (всё равно вылетят из индекса)
Задание заркала для Яндекса

Если хотите разобраться, тогда давайте по порядку. Это запретит индексировать всем поисковым роботам страницы для печати:
User-agent: *
Disallow: /*print


Уберём из индекса страницы без контента (они рано или поздно всё выпадут:(
Disallow: /autobackup.php
Disallow: /admin.php
Disallow: /user/
Disallow: /favorites/
Disallow: /index.php?do=register
Disallow: /?do=lastcomments
Disallow: /statistics.html

По вкусу, и в зависимости от уровня Вашей паранои можно добавить также
Disallow: /index.php?do=pm
Disallow: /index.php?do=stats
Disallow: /index.php?do=search
Disallow: /index.php?do=addnews
Disallow: /index.php?do=register
Disallow: /index.php?do=feedback
Disallow: /index.php?do=lostpassword
Disallow: /index.php?subaction=newposts

Теперь любезно добавляем Sitemap для Поисковых систем. Вы наверняка прекрасно знаете, насколько он полезен для индексации Вашего сайта.
Идём в админку -> другие разделы -> в самом низу заходим в «Google Sitemap». Оставляем все настройки по умолчанию и жмём «создать/обновить». Сверху должна появиться надпись вида «25.01.2009 10:37 файл индекса для Google Sitemap был создан и доступен по адресу: Для просмотра ссылки Войди или Зарегистрируйся. Теперь даём знать о нём поисковикам:

Sitemap: Для просмотра ссылки Войди или Зарегистрируйся

И добавляем основное зеркало для Яндекса, чтобы не было недоразумений с его стороны) Идём по адресу: Для просмотра ссылки Войди или Зарегистрируйся
и смотрим, как проиндексирован Ваш сайт с www или без. Добавляем в robots.txt директиву вида:
User-agent: Yandex
Host: my-dle-site.ru

my-dle-site.ru, если сайт в индексе без www, и наоборот. Если сайт ещё не проиндексирован Яшей, то указывайте так, как Вам больше нравится видеть Ваш сайт.

Вот и всё. Правильный robots.txt для ДЛЕ будет выглядеть примерно так:
User-agent: *
Disallow: /*print
Disallow: /autobackup.php
Disallow: /admin.php
Disallow: /user/
Disallow: /favorites/
Disallow: /index.php?do=register
Disallow: /?do=lastcomments
Disallow: /statistics.html
Sitemap: Для просмотра ссылки Войди или Зарегистрируйся
User-agent: Yandex
Host: my-dle-site.ru

Потратив 5 минут на создание такого файла можно значительно облегчить себе/поисковикам жизнь/работу в дальнейшем.

Автор не я
 
Все правильно, только есть пара моментов:
Disallow: /autobackup.php
Disallow: /admin.php
файл autobackup.php не обязательный. и если он не используется вами (для бекапа по крону) то удаляем его, а если используется то его надо переименовать и тем более не показывать всем через робот. Почему? Потому что вот короткий способ слива БД сайта на ДЛЕ если в роботе указанн путь до автобекап-файла:
1) заходим на этот файл через браузер и инициируем автобекап
2) определяем часовой пояс на серваке (на ДЛЕ)
3) вгоняем в чекер 404 ошибок пачку урлов вида
сайт/backup/(подумаем над тем как называется БД)_дата_время +\- 5-10 минут.bz (либо .sql, либо tar.gz)
4) немного удачи + немного логики = 99% того что мы имеем свежий бекап с целевого сайта.
Ну и теперь думаем: а надо ли нам оно? По моему не нужно совершенно ;)
Далее, файл admin.php. Защищать его через робот как минимум глупо. Не дай бог появиться сплоит под взлом админки или кто то скоммуниздит ваши куки админа... Считаем что сайт взломан. Что делать? А сделать можно то, что опять таки рекомендуют доки по ДЛЕ, тоесть
1) переименовываем файл как угодно, хоть vsnsty5otbhvnosrtehmfg.php и в конфиге указываем что файл админки теперь называется так.
2) идем в админку и в настройках выбираем расширенный способ авторизации.
Он использует .htaccess и ДАЖЕ ЕСЛИ ВДРУГ какой то поисковый паук узнает этот адрес то он просто получит от сервака ошибку 3** и пойдет нафик и никогда больше не вернеться. Это намного эффективнее запрета в роботе, это намного безопеснее запрета в роботе и это ломается намного сложнее запрета в роботе.
Ну а в остальном, +1 к материалу, очень хорошо все расписанно.

П.С. 2Хортица:
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху