Нека започнем веднага с основния код на скрипта:

#!/usr/bin/perl

# скрипт which-forum.pl
# (c) 2010 г. Александър Алексеев, http://website/

използвайте строг;

# коментирани реда - за строгост
# ако задачата е да се съберат статистически данни за двигателя, оставете я както е
# ако правите списък с форуми - разкоментирайте

моите $данни;
$data .= $_ докато (<> ) ;

# проверете колко са били Осъществено от phpBB без връзка в долния колонтитул
печат "phpbb \н"
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?phpbb\.com\/?"[^>]*>phpBB/iили
# $data =~ /viewforum\.php\?[^""]*f=\d+/i или
$data =~ /phpBB\-SEO/i или
$данни =~ /) ;
печат "ipb \н"
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?invision(?:board|power)\.com\/?[^"]*"[^>]*> [^<]*IP\.Board/i или
$данни =~ /]+href="[^"]*http:\/\/(?:www\.)?invisionboard\.com\/?"[^>]*>Invision Power Board/iили
$данни =~ /

/iили
$данни =~ /index\.php\?[^""]*showforum=\d+/i) ;
отпечатайте "vbulletin \н"
if ($data =~ /Осъществено от:?[^<]+vBulletin[^<]+(?:Version)?/i или
$данни =~ /) ;
печат "smf \н"
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?simplemachines\.org\/?"[^>]*>Осъществено от SMF/iили
$данни =~ /index\.php\?[^""]*board=\d+\.0/i) ;
печат "punbb \н"
if ($data =~ /]+href="[^"]*http:\/\/(?:(?:www\.)?punbb\.org|punbb\.informer\.com)\/?"[^>]*> PunBB/i) ; #или
# $data =~ /viewforum\.php\?[^""]*id=\d+/i);
отпечатайте "fluxbb \н"
# if($data =~ /viewtopic\.php\?id=\d+/i или
if ($data =~ /]+href="http:\/\/(?:www\.)fluxbb\.org\/?"[^>]*>FluxBB/i) ;
печат "exbb \н"
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?exbb\.org\/?"[^>]*>ExBB/i) ; # или
# $data =~ /forums\.php\?[^""]*forum=\d+/i);
печат "yabb \н"
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?yabbforum\.com\/?"[^>]*>YaBB/iили
$data =~ /YaBB\.pl\?[^""]*num=\d+/i ) ;
печат "dleforum \н"
if ($data =~ /\(Осъществено от DLE форум\)<\/title>/iили
$данни =~ /]+href="[^"]+(?:http:\/\/(?:www\.)?dle\-files\.ru|act=copyright)[^"]*">DLE форум<\/a>/i) ;
печат "iconboard \н"
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?ikonboard\.com\/?[^"]*"[^>]*>Ikonboard/iили
$данни =~ /\н"
if ($data =~ /\н"
# if($data =~ /forums\.php\?fid=\d+/i или
# $data =~ /topic\.php\?fid=\d+/i или
if ($data =~ /]+href="http:\/\/(?:www\.)?flashbb\.net\/?"[^>]*>FlashBB/i) ;
печат "stokesit \н"
# if($data =~ /forum\.php\?f=\d+/i или
if ($data =~ /]+href="http:\/\/(?:www\.)?stokesit\.com\.au\/?"[^>]*>[^\/]*Stokes IT/i) ;
печат "подиум \н"
# if($data =~ /topic\.php\?t=\d+/i или
if ($data =~ /]+href=[""]?http:\/\/(?:www\.)?sopebox\.com\/?[""]?[^>]*>Подиум/i) ;
печат "usebb \н"
# if($data =~ /forum\.php\?id=\d+/i или
if ($data =~ /]+href="http:\/\/(?:www\.)?usebb\.net\/?"[^>]*>UseBB/i) ;
печат "wrforum \н"
# if($data =~ /index\.php\?fid=\d+/i или
if ($data =~ /]+href="http:\/\/(?:www\.)?wr\-script\.ru\/?"[^>]*>WR\-Forum/i) ;
печат "yetanotherforumnet \н"
ако ($data =~ /Още един форум\.net/i или
$данни =~ /по подразбиране\.aspx\?g=posts&t=\d+/i) ;

Този и други скриптове, споменати в публикацията, могат да бъдат намерени в този архив.

Скрипт който-форум.plпроверява кода на html страницата за наличие на сигнатури на двигателя на форума в него. Използвахме подобна техника, когато дефинирахме WordPress и Joomla, но има няколко разлики. Първо, самият скрипт не зарежда кода на страницата, а го чете от stdin или файл, подаден като аргумент. Това ни позволява да изтеглим страницата веднъж, например с помощта на wget, и след това да я прекараме през няколко парсера, ако имаме повече от един. Второ, в този скрипт наличието на подпис е 100% знак на двигателя. Последният път присъствието на подписа придаде тежест само на съответния двигател и „спечели“ двигателя с най-голямо тегло. Реших, че в този случай подобен подход само ще усложни ненужно кода.

За да тествам сценария, направих малко проучване. Съставих списък от няколко хиляди форума и прекарах всеки от тях през моя скрипт, като по този начин определих процента на активиране на програмата и популярността на различните двигатели.

За да получа списъка с форуми, използвах моя анализатор на Google. На търсачката бяха изпратени заявки като

сайт: форум.*.ru
сайт: talk.*.ru
сайт: борд.*.ru
сайт: smf.*.ru
сайт:phpbb.*.ru
....

и така нататък. Можете да намерите пълния код на генератора на заявки във файла gen-forumsearch-urls.pl. В допълнение към зоната .ru бяха използвани и .su .ua .kz и .by. Последният път беше трудно да се проведе подобно проучване, тъй като сайтовете на WordPress и Joomla нямат такива подписи в URL адреса. Каталози като cmsmagazine.ru/catalogue/ не осигуряват достатъчен размер на извадката. Какво е 600 сайта на Drupal?

Трябва да призная, че резултатите от експеримента ме разочароваха. От изследваните 12 590 обекта само 7 083 двигателя са идентифицирани успешно, тоест само в 56% от случаите. Може би не съм взел предвид някой двигател? Битрикс стоеше ли на половината форуми? Или трябваше да прекарам повече време в търсене на подписи? Като цяло тук са необходими повече изследвания.

Сред 56% от успешно идентифицираните машини IPB (31%), phpBB (26,6%) и vBulletin (26,5%) бяха най-популярните, както се очакваше.

Те са плътно следвани от SMF (5,8%) и DLEForum (5,3%). Моят любим punBB беше едва на 6-то място (1,64%). Не бих посъветвал силно да се доверявате на тези цифри (те казват, че всеки трети форум в Runet работи на IPB), но някои изводи, разбира се, могат да бъдат направени.

Например, ако възнамерявате да направите сайт на форумна машина и планирате да модифицирате форума, да речем, да плащате на потребителите 0,01 $ за всяко съобщение с автоматично теглене на средства веднъж седмично, тогава трябва да изберете една от трите най-популярни машини . Колкото по-популярен е форумът, толкова по-вероятно е да се намери програмист, който е добре запознат с него.

Ако не се очакват значителни промени в двигателя, тогава може да има смисъл да изберете по-малко популярен двигател, като SMF или punBB. Това ще намали броя хакерски атакикъм вашия форум и количеството спам, автоматично изпратен в него.

Скриптовете за търсене/дефиниране на форуми също могат да намерят повече от един практическа употреба. Първото нещо, което ми хрумна лично, беше да сортирам идентифицираните форуми по TIC и да поставя публикации с връзки към един от техните сайтове в първите сто. Въпреки това, стотина форумни dofollow връзки не повлияха по никакъв начин на TCI (преминаха 2 актуализации), така че е по-добре да не губите време тук, освен ако не се интересувате от преходи.

Ясно е, че посоченото използване на скриптове далеч не е единственото. Мисля, че лесно можете да разберете как иначе можете да ги използвате.

Всеки знае, че просто не мога да живея без Joomla, но според мен, добър форумв компоненти, бр. Затова работя с форумни двигатели. Една от новите, които едва наскоро започнах да използвам, е Стартиране на нова SMF категория, надявам се с полезен материал. Започваме с малки, добре, като начинаещи много полезни.

Първи стъпки в оптимизацията за търсачки Прости машиниФорум: премахнете авторските права и външните връзки

Веднага ще направя резервация, че работя само с smf 2 и тази статия ще се отнася конкретно за тази версия на безплатния двигател на форума.

И така, редовните читатели знаят колко не обичам да поставям "10" външни връзки към официалните сайтове на двигатели, включително форумни. Ето защо, на първо място, премахваме авторските права и цели 4, внимание 4 външни връзки на формата " SMF 2.0.2 | Прости машини | SMF © 2011 | XHTML" ! За да направите това, свържете се със сайта чрез FTP форум/Теми/ името на вашата тема/ и редактирайте файла index.template.php. Естествено, най-отдолу е кодът (около ред 330), който показва външни връзки, които не харесваме толкова много. Затова премахваме: "

  • ", theme_copyright(), "
  • " и "
  • ", $txt["xhtml"], "
  • ". Всичко е толкова просто и лесно. В следващите публикации изчакайте нови материали за популяризиране и оптимизиране на форуми на SMF /

    Здравейте, скъпи читатели на сайта на блога. И така, продължаваме темата за настройка на форумна машина, наречена SMF, започната в публикация за това. Там все още не сме направили форума руски, по отношение на превода от английския интерфейс. На този моментне изглежда много представителен, но след русификация (ако все още не е направена) и създаване на съответните раздели, външният му вид ще се подобри значително.

    Днес ще разгледаме темите и ще ги направим руски, както и ще инсталираме компонента JFusion, който може да работи и с двата двигателя (както Jumla, така и SMF), което ще ни позволи да имаме обща потребителска база за двама и само една форма на тяхната регистрация и влезте.

    Теми и инсталиране на руски езиков пакет

    Двигателят на Simple Machines Forum поддържа възможността за промяна на теми, като те могат да се променят както за целия форум като цяло, така и за отделните му секции в частност. Лично аз използвах темата по подразбиране, но направих много ръчни промени в нея. По-специално промених фона, цветовите схеми на някои елементи, добавих светкавица, радио и много други, за които ще говоря в следващите публикации в този раздел.

    Защо не използвах някоя от допълнителните теми при създаването на форума? Е, вероятно всичко е заради мързела ми. Не, не ме мързеше да търся и изтегля нови теми, тъй като има много места, където това може да се направи. Мързелът ми е другаде.

    Факт е, че цялото разнообразие от модове за този двигател, предназначени да разширят възможностите му, са фокусирани специално върху темата по подразбиране. Обяснявам. Ако имате тема по подразбиране, тогава добавянето на този или онзи мод към SMF отнема няколко секунди и като правило не изисква ръчно редактиране на кода.

    В случай на инсталиране на мод върху тема на дизайна, различна от стандартната, ще е необходимо, както се казва, да обработите всички необработени детайли с файл. С други думи, ще трябва използвайки FileZilla(изтеглете и конфигурирайте, можете да влезете в сайта през FTP и да отворите за редактиране файловете на вашия форум двигател, в който този модправи промени.

    След това потърсете Правилно мястов кода и извършете необходимите действия: или замяна на кода, или изтриване, или добавяне на част от код преди или след фрагмента, от който се нуждаете. Като се има предвид, че може да има около дузина файлове, в които ще трябва да се направят промени, можете да си представите колко неприятно ще бъде да се направи това. В този случай трябва да сте много внимателни и да не правите грешки, защото в противен случай форумът може изобщо да не се отвори.

    Ако всички изброени по-горе проблеми при използването на тема, която не е по подразбиране, не ви плашат, тогава можете да ги изтеглите от тук. Темите там са сортирани по секции (минимализъм, близки до класиката, модерни и т.н.) и за всяка от тях можете да видите нейната екранна снимка на Цял екран. Как да инсталирате същите тези теми, ще кажа малко по-късно.

    Ако не сте русифицирали форума на етапа на качване на файловете на двигателя в хостинга, както е описано в първата част на този опус (вижте връзката в самото начало на статията), тогава можете да го направите сега. Руският езиков пакет, изтеглен преди това от тази страница с необходимия, трябва да разопаковате и след това да копирате папката Themes в основна папкакъдето вече има директория със същото име.

    След като завършите копирането, трябва да отидете във форума, като използвате потребителското име и паролата на администратора. Изберете „Администратор“ от горното меню и след това щракнете върху „Настройки на сървъра“ от лявата колона.

    В прозореца, който се отваря, намерете елемента „Език на форума по подразбиране“ и изберете руския език от падащия списък, след което кликнете върху бутона „Запазване“ в долната част на страницата.

    Това е всичко, сега вашата конференция е изцяло на руски език.

    Решаване на проблеми при инсталиране на модове, които не поддържат руски език

    Моля, имайте предвид, че в бъдеще, когато добавяте модове към SMF, които нямат руски превод, понякога може да имате проблем с показването на настройките на мода в администраторския панел. Всъщност същите тези настройки в админ панела просто няма да се виждат, т.к. за тях няма да има русификационни файлове. Следователно ще имате две възможности за решаване на този проблем.

    Първият начин е да превключите на английски за целия форум. Как може да стане това, можете да видите няколко параграфа по-горе. Съответно, след като извършите необходимите действия с тези настройки, ще трябва да се върнете отново на руски.

    Вторият метод е по-сложен, но ще ни позволи да виждаме настройките на инсталираните модове в админ панела винаги, а не само когато са активирани на английски език. Спирам се на тази точка толкова подробно, защото въпросът, че някой е инсталирал мод и не може да намери настройките му в админ панела на борда си, е много често срещан.

    И така, вторият начин е да добавите редове за превод към файловете за русификация за новодобавените модове. Как да определите кои файлове за русификация трябва да се променят и къде да ги получите, ще кажа по-късно. Междувременно, временно, можете да използвате първия метод.

    Инсталиране на JFusion за интегриране на сайт и форум

    Първо ще трябва да изтеглите JFusion и неговата русификация. След като влезем в административния панел на Joomla, извършваме стандартни действия: изберете от горно менюелементи на админ панела "Разширения" - "Инсталиране / премахване" - ​​"Качване на пакетен файл" - бутонът "Преглед" - намираме на нашия компютър файла с компонента jfusion_package.zip - щракнете върху бутона "Качване на файл и инсталиране >".

    След това се появява прозорец, който ви информира, че компонентът е инсталиран успешно. Ако възникнат проблеми, тогава можете да се запознаете с възможностите за решаване на някои от тях на връзката точно по-горе.

    Сега е ред на русификацията, която се добавя по същия начин като самия компонент. Тези. повторете последователността от действия: "Разширения" - "Инсталиране / премахване" - ​​"Качване на пакетен файл" - бутон "Преглед" - намерете файла за русификация на JFusion на вашия компютър - щракнете върху бутона "Качване на файл и инсталиране". Сега можем да отидем до настройките по пътя "Компоненти" - "JFusion" и да се уверим, че русификацията е добавена успешно и работи.

    Късмет! Ще се видим скоро на сайта на страниците на блога

    Може да се интересувате

    Настройване на JFusion за обединяване на SMF форума и сайта на Joomla
    JFusion модули за показване на съобщения от форума в сайта, както и създаване на бутон в SMF за връщане към Joomla
    Създаване на елемент от менюто в Joomla за влизане във форума и прехвърляне на потребителска регистрация от SMF към сайта
    Инсталиране на SMF форум - Използване на интеграция на Joomla 1.5 и Simple Machines във форума JFusion компонент
    Разширения за Joomla - какво е това и къде да изтеглите компоненти, модули и плъгини за Joomla, как да ги инсталирате и премахнете
    K2 компонент за създаване на блогове, каталози и портали на Joomla - функции, инсталиране и русификация Фотогалерия за Joomla - Част 3 - Създаване на галерии в Joomla 1.5 с помощта на компонента Phoca Gallery - добавяне на категории и качване на изображения във фотогалерията
    ARTIO JoomSEF - персонализиране на CNC (SEF) връзки и заглавие в Joomla, както и създаване на страница за грешка 404 с помощта на това разширение
    Akeeba Backup (бивш JoomlaPack) - създаване на резервно копие на сайт на Joomla и възстановяване от архивиранес два клика

    В случай, че някой не знае, Simple Machines Forum - накратко SMF - е, както е посочено на официалния уебсайт, безплатен пакет от професионален клас, който ще ви позволи да организирате своя собствена онлайн общност за няколко минути. на този двигател, можете да видите тук. Аз самият поставих моя форум на него (между другото, посетете FreeForum.biz).

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

    Ще отбележа, че се опитах сам да се боря със спамерите - блокирах достъпа по IP и дори по подмрежи. Наистина проработи, филтрира много боклук, но въпреки това веднъж на всеки един-два дни някой си пробиваше път. И доста време беше изразходвано за попълване на базата данни със забранени IP адреси. Мислех си, че трябва да има по-удобен начин и наистина беше!

    1. Инсталиране и конфигуриране на Stop Spammer

    За две седмици работа този плъгин блокира 2202 фалшиви потребители. Всеки от тях би оставил поне едно съобщение. Разпространителите на спам няма да се забавят и всеки ден прекарвам време в изчистване на форума си.

    Вместо това на всеки няколко дни отивам на страницата за управление на потребителите и виждам нещо подобно:

    Преминавам към раздела „Очаква одобрение“ (това са откритите спамери, които не могат да оставят съобщения, докато не бъдат одобрени сметкиадминистратор). Слагам отметка "Избери всички" и ги изтривам с едно кликване:

    Това е всичко, всички спам акаунти отиват в забвение. Назад към нашия списък с потребители:

    Вижда се, че списъкът осезаемо е оредял, но кои са останалите? Изберете всички и изпратете с един бутон за проверка:

    Появи се едно „червено“, веднага го изтриваме. Ако имате свободно време, можете да направите други. Ако няма време, тогава не правете нищо с новите потребители - повечето от тях ще се "изчервят" при последващи проверки. Ако имате време, можете да отидете в профилите им и да видите - ако има линк в подписа - незабавно баннат, това са фалшиви акаунти на спамери, които никога няма да оставят нито едно полезно съобщение.

    Казах ви как да използвате този магически плъгин, сега ще ви кажа как да го инсталирате.

    Изтеглете два файла: language_full.zip (това е езиковият пакет за превод на плъгина) и StopSpammer_v2_3_9.zip (номерът може да е различен при актуализиране на версиите). Разархивирайте съдържанието на архива StopSpammer_v2_3_9.zip в някоя папка. Разархивирайте архива language_full.zip в същата папка, съгласете се да замените файловете. Сега компресирайте нашата папка.

    Отидете в административния панел, за да инсталирате пакети. Срещу надписа "Изтегляне на пакет" има бутон за избор на файл на компютъра. Изберете нашия нов архив (където заменихме езиковия файл), качете го във форума и активирайте пакета.

    Това е!

    Допълнителна конфигурация на плъгина се извършва в администраторския панел: отидете на

    Потребители → Регистрация → Настройки

    Можете да оставите стойностите по подразбиране там. Има и поле "Вашият API ключ". Без този ключ няма да можете да докладвате за нови спамъри (но приставката ще работи и ще филтрира познатите спамъри). Ако искате да получите свой собствен API ключ, отидете на www.stopforumspam.com, за да се регистрирате и след това въведете ключа тук. Ако все още не сте получили ключа, оставете полето празно. Тогава ще се използва ключът по подразбиране.

    2. Инсталиране и конфигуриране на анти-спам връзки

    Привържениците на SEO религията (можете да видите повече за отношението ми към SEO-нистите в друга) са силно убедени, че чрез увеличаване на броя на връзките към техния сайт, те го „популяризират“ (по някаква причина идеята за създаването на интересно и висококачествено съдържание не е предназначено за никого, от когото не идват на ум). Ще има издънка, но има начини да вземете пари от него. И така, някои "граждани" предоставят услуги за "пускане" на сайтове във форуми. Те създават голям брой акаунти в различни форуми и поставят там обратни връзкив подписи и други налични полета. Въпреки факта, че дори „seo-експериментаторите“ вече са доказали с опит, че тези връзки не са полезни, някои предупреждават, че можете да получите забрана за търсачки, Yandex, например, просто игнорира връзките във ВСИЧКИ форуми и сайтове, където всеки може да остави връзки. Google също има подобни алгоритми - игнориране на връзки в коментари и т.н. Но законът не е писан за глупаци ... Следователно ние, собствениците на форуми, трябва да се съобразяваме с фактите, че "готините SEO-оптимизатори" поръчват "пускане " от техните лайна занаяти за хиляда рубли.

    Приставката Stop Spammer ще филтрира много. Но ние можем да му помогнем! Възможно е да избиете изпод краката на спамерите самия интерес към публикуване на връзки във вашия форум. За това са анти-спам връзките. Този плъгин (конкретни числа могат да се променят в настройките) прави това:

    • тези, които например имат по-малко от пет съобщения, изобщо не могат да оставят връзки
    • тези, които например имат по-малко от 15 публикации, не могат да оставят активни линкове, http:// се премахва от линкове и като цяло тези линкове стават nubolink (newbielink)
    • тези с например по-малко от 50 публикации могат да оставят активни връзки, но всички връзки получават атрибута nofollow.
    • добре, тези с повече от 50 публикации могат да вмъкнат най-често срещаните активни връзки, които прехвърлят тежестта на сайта към страницата, към която препращат.

    Повярвайте ми, бъдещите SEO специалисти са много внимателни към формата, в която тяхната връзка стига до сайта. Те ще загубят интерес към вашия форум много бързо, ако не могат лесно да публикуват връзките си към своите глупави сайтове там.

    Да, между другото, горните правила работят в такива области като подписи.

    За да инсталирате този плъгин, отидете на официалната му страница. Изтеглете anti_spam_links_v1.0.1.zip архив (номерът може да е различен). Отново в администратора на форума отидете на инсталиране на пакети (както направихте с предишния пакет) и го инсталирайте. Няма езиков файл за този пакет, така че не е необходимо да разопаковате архива или да правите нещо с него.

    За да конфигурирате приставката, отидете в секцията

    Конфигуриране → Конфигуриране на модове… → Конфигуриране на модове

    По ваше желание запишете колко съобщения трябва да има потребителят, за да надгради своите възможности.

    Заключение

    Тези два плъгина МНОГО ще улеснят живота на вас, собственика на форума, и ще спестят много време. От време на време обаче спамърите проникват и поне веднъж седмично трябва да „разредите“ потребителите и да изтриете спам съобщенията. Затова не изоставяйте своите уеб ресурси!