بیایید بلافاصله با کد اسکریپت اصلی شروع کنیم:
#!/usr/bin/perl
اسکریپت # which-forum.pl
# (c) 2010 Alexandr A Alexeev, http://site/
سخت استفاده کنید؛
# خط نظر - برای دقت
# اگر وظیفه جمع آوری آمار موتور است، آن را همانطور که هست رها کنید
# اگر فهرستی از انجمنها تهیه میکنید - نظر خود را لغو کنید
$داده من ;
$data .= $_while (<>
)
;
# بررسی کنید که چه مقدار توسط phpBB بدون پیوند در پاورقی ارائه شده است این و سایر اسکریپت های ذکر شده در پست را در این آرشیو خواهید یافت. اسکریپت which-forum.plکد صفحه HTML را بررسی می کند تا ببیند آیا دارای امضاهای موتور انجمن است یا خیر. ما هنگام تعریف وردپرس و جوملا از تکنیک مشابهی استفاده کردیم، اما چند تفاوت وجود دارد. اولاً، خود اسکریپت کد صفحه را بارگذاری نمی کند، بلکه آن را از stdin یا فایلی که به عنوان آرگومان ارسال می شود، می خواند. این به شما این امکان را می دهد که یک بار مثلاً با استفاده از wget صفحه را دانلود کنید و اگر بیش از یک آنالایزر داریم آن را از طریق چندین آنالایزر اجرا کنید. ثانیاً در این فیلمنامه وجود امضا 100% نشانه موتور است. دفعه قبل، وجود یک امضا فقط به موتور مربوطه وزن اضافه کرد و موتور با بیشترین وزن "برنده" شد. من تصمیم گرفتم که در این مورد، چنین رویکردی فقط کد را به طور غیر ضروری پیچیده می کند. برای تست فیلمنامه، کمی تحقیق کردم. من لیستی از چندین هزار فروم تهیه کردم و هر یک از آنها را از طریق اسکریپت خود اجرا کردم و از این طریق درصد پاسخ برنامه ها و محبوبیت موتورهای مختلف را تعیین کردم. برای دریافت لیست انجمن ها، از تجزیه کننده گوگل خود استفاده کردم. سوالاتی مانند این به موتور جستجو ارسال شد سایت:forum.*.ru و غیره کد کامل ایجاد کننده پرس و جو را در فایل خواهید یافت gen-forumsearch-urls.pl. علاوه بر zone.ru، .su .ua .kz و .by نیز استفاده شد. دفعه قبل، انجام چنین مطالعه ای دشوار بود، زیرا سایت های وردپرس و جوملا چنین امضایی در URL ندارند. کاتالوگ هایی مانند cmsmagazine.ru/catalogue/ حجم نمونه کافی را ارائه نمی دهند. 600 سایت دروپال چیست؟ باید اعتراف کنم، نتایج آزمایش من را ناامید کرد. از 12590 سایت مورد مطالعه، موتور تنها در 7083 با موفقیت شناسایی شد، یعنی فقط در 56٪ موارد. شاید من مقداری موتور را در نظر نگرفتم؟ آیا واقعاً درست بود که نیمی از انجمن ها Bitrix را نصب کرده بودند؟ یا باید زمان بیشتری را صرف جستجوی امضا می کردم؟ به طور کلی، در اینجا به تحقیقات بیشتری نیاز است. در بین 56 درصد موتورهایی که با موفقیت شناسایی شدند، همانطور که انتظار می رفت، محبوب ترین ها IPB (31٪)، phpBB (26.6٪) و vBulletin (26.5٪) بودند. SMF (5.8٪) و DLEForum (5.3٪) با تاخیر زیادی دنبال می شوند. punBB مورد علاقه من فقط در مکان ششم (1.64٪) بود. من توصیه نمیکنم که به این اعداد اعتقاد زیادی داشته باشید (آنها میگویند، هر سومین انجمن در RuNet روی IPB اجرا میشود)، اما البته میتوان نتیجهگیریهای خاصی کرد. به عنوان مثال، اگر قصد دارید یک سایت در موتور فروم ایجاد کنید و قصد دارید تالار را تغییر دهید، مثلاً برای هر پیام 0.01 دلار با برداشت خودکار وجه در هفته یک بار به کاربران بپردازید، باید یکی از سه موتور محبوب را انتخاب کنید. هرچه انجمن محبوب تر باشد، شانس پیدا کردن برنامه نویسی که به خوبی در آن مسلط باشد بیشتر می شود. اگر هیچ تغییر قابل توجهی در موتور انتظار نمی رود، ممکن است انتخاب یک موتور کمتر محبوب، به عنوان مثال SMF یا punBB منطقی باشد. این باعث می شود تعداد حملات هکرها به انجمن شما و مقدار هرزنامه هایی که به طور خودکار بر روی آن ارسال می شود کاهش یابد. اسکریپت های جستجو/شناسایی انجمن ها نیز می توانند کاربردهای عملی زیادی پیدا کنند. اولین چیزی که به ذهن من رسید این بود که انجمن های شناسایی شده را بر اساس TIC مرتب کنم و در صد پست اول با پیوند به یکی از سایت های خود پست کنم. با این حال، صدها لینک dofollow انجمن به هیچ وجه بر TCI تأثیری نداشته است (2 به روز رسانی گذشته است)، بنابراین بهتر است زمان را در اینجا تلف نکنید، مگر اینکه علاقه ای به انتقال نداشته باشید. واضح است که استفاده ذکر شده از اسکریپت ها به دور از آن است. من فکر می کنم شما به راحتی می توانید بفهمید که چگونه می توانید از آنها استفاده کنید. همه می دانند که من به سادگی نمی توانم بدون جوملا زندگی کنم، اما، به نظر من، انجمن خوبی برای کامپوننت ها وجود ندارد. به همین دلیل من با موتورهای انجمن کار می کنم. یکی از موارد جدیدی که اخیراً شروع به استفاده از آن کردم، بیایید یک دسته بندی جدید SMF را با چیزهای امیدوارم مفید شروع کنیم. ما کوچک شروع می کنیم و به عنوان مبتدی بسیار مفید است. اجازه دهید فوراً رزرو کنم که من فقط با smf 2 کار می کنم و این مقاله به طور خاص به این نسخه از موتور انجمن رایگان مربوط می شود. و بنابراین، خوانندگان معمولی می دانند که من چقدر دوست ندارم "10" پیوند خارجی را به وب سایت های رسمی موتورها، از جمله انجمن های انجمن، قرار دهم. به همین دلیل است که اول از همه، ما حق چاپ را حذف می کنیم و به 4، توجه 4 پیوند خارجی فرم " SMF 2.0.2 | ماشین های ساده | SMF © 2011 | XHTMLبرای انجام این کار، از طریق FTP forum/Themes/ به سایت متصل شوید. نام تم شما/ و فایل را ویرایش کنید index.template.php. به طور طبیعی، در پایین صفحه یک کد (در مورد خط 330) وجود دارد که پیوندهای خارجی را نشان می دهد که ما چندان دوست نداریم. بنابراین ما حذف می کنیم: " اگر کسی نمی داند، فروم ماشین های ساده - به اختصار SMF - همانطور که در وب سایت رسمی ذکر شده است، یک بسته رایگان و حرفه ای است که به شما امکان می دهد جامعه آنلاین خود را در چند دقیقه سازماندهی کنید. در این موتور، می توانید اینجا را نگاه کنید. من خودم انجمن خودم را روی آن راه اندازی کردم (به هر حال، به FreeForum.biz بروید). مهم نیست که چقدر هرزنامه در انجمن شما ظاهر می شود. نکته مهم این است که وقت ارزشمند خود را صرف اعتدال کنید. راهاندازی افزونهای که همه کارها را برای شما انجام میدهد چند دقیقه طول میکشد و در کل روزها و ماهها برای شما صرفهجویی میکند که به دقایقی که برای پاک کردن پیامها و حذف کاربران صرف میکردید اضافه میشود. متذکر می شوم که من سعی کردم به تنهایی با هرزنامه ها مبارزه کنم - دسترسی از طریق IP و حتی زیرشبکه ها را مسدود کردم. واقعا کار می کرد، زباله های زیادی را فیلتر می کرد، اما با این وجود، هر یک یا دو روز یک بار یک نفر از آن عبور می کرد. و پر کردن پایگاه داده IP های ممنوعه زمان زیادی را صرف کرد. من فکر می کردم باید راه بهتری وجود داشته باشد، و در واقع وجود داشت! این افزونه در دو هفته کارکرد 2202 کاربر جعلی را مسدود کرد. هر کدام از آنها حداقل یک پیام از خود به جا می گذاشتند. هرزنامهها هیچ نشانهای از کاهش سرعت نشان نمیدهند و من هر روز زمانی را صرف تمیز کردن انجمن خود میکنم. در عوض، هر چند روز یک بار به صفحه مدیریت کاربر می روم و چیزی شبیه به این را می بینم: من به بخش «در انتظار تأیید» می روم (اینها هرزنامههایی هستند که تا زمانی که حسابهایشان توسط مدیر تأیید نشود، از فرصت ارسال پیام محروم میشوند). چک باکس "انتخاب همه" را علامت می زنم و با یک کلیک آنها را حذف می کنم: تمام، همه اکانت های اسپم به فراموشی سپرده می شوند. بیایید به لیست کاربران خود برگردیم: مشاهده می شود که لیست به طرز محسوسی کم شده است، اما بقیه چه کسانی هستند؟ ما همه را انتخاب می کنیم و با یک دکمه آنها را برای تأیید می فرستیم: یک "قرمز" ظاهر می شود، ما بلافاصله آن را حذف می کنیم. اگر وقت آزاد دارید، می توانید کارهای دیگری انجام دهید. اگر وقت ندارید، با کاربران جدید کاری انجام ندهید - اکثر آنها در بررسی های بعدی سرخ می شوند. اگر وقت دارید، می توانید به نمایه های آنها بروید و نگاه کنید - اگر پیوندی در امضا وجود داشته باشد، بلافاصله ممنوع می شوند، اینها حساب های جعلی اسپمرهایی هستند که هرگز یک پیام مفید باقی نمی گذارند. من به شما گفتم که چگونه از این افزونه جادویی استفاده کنید، اکنون نحوه نصب آن را به شما خواهم گفت. دو فایل را دانلود کنید: language_full.zip (این بسته زبانی برای ترجمه افزونه است) و StopSpammer_v2_3_9.zip (تعداد ممکن است متفاوت باشد، زیرا نسخه ها به روز می شوند). محتویات بایگانی StopSpammer_v2_3_9.zip را در یک پوشه باز کنید. آرشیو language_full.zip را در همان پوشه باز کنید و با جایگزین کردن فایلها موافقت کنید. حالا پوشه ما را در یک آرشیو فشرده بسته بندی کنید. در پنل مدیریت، اقدام به نصب بسته ها کنید. در مقابل کتیبه "دانلود بسته" دکمه ای برای انتخاب فایل در رایانه شما وجود دارد. آرشیو جدید ما (جایی که فایل زبان را جایگزین کردیم) انتخاب کنید، آن را در انجمن آپلود کنید و بسته را فعال کنید. خودشه! پیکربندی اضافی افزونه در پنل مدیریت رخ می دهد: به کاربران → ثبت نام → تنظیمات می توانید مقادیر پیش فرض را در آنجا بگذارید. همچنین یک فیلد "کلید API شما" وجود دارد. بدون این کلید، نمیتوانید هرزنامههای جدید را گزارش دهید (اما افزونه کار میکند و اسپمرهای شناخته شده را فیلتر میکند). اگر می خواهید کلید API خود را دریافت کنید، برای ثبت نام به www.stopforumspam.com بروید و سپس کلید را در اینجا وارد کنید. اگر هنوز کلید را دریافت نکرده اید، قسمت را خالی بگذارید. سپس از کلید پیش فرض استفاده خواهد شد. پیروان دین سئو (شما می توانید در مورد نگرش من نسبت به سئوکارها در دیگری بیشتر بخوانید) اعتقاد راسخ دارند که با افزایش تعداد لینک ها به سایت خود، آن را "ترویج" می کنند (به دلایلی ایده ایجاد محتوای جالب و باکیفیت برای کسی جذاب نیست و به ذهن نمی آید). او یک مکنده بود، اما راه هایی برای استخراج پول از او وجود داشت. بنابراین، برخی از "شهروندان" خدماتی را برای "اجرای" سایت ها از طریق انجمن ها ارائه می دهند. آنها تعداد زیادی حساب در انجمن های مختلف ایجاد می کنند و بک لینک ها را در امضاها و سایر فیلدهای موجود درج می کنند. علیرغم این واقعیت که حتی "آزمایشگران سئو" قبلاً به طور آزمایشی ثابت کرده اند که این پیوندها کاربرد صفر دارند، برخی هشدار می دهند که می توانید برای این کار از موتورهای جستجو محروم شوید، به عنوان مثال Yandex به سادگی پیوندها را در همه انجمن ها و سایت هایی که در آن هر کسی وجود دارد نادیده می گیرد. می تواند لینک ها را ترک کند. گوگل نیز الگوریتمهای مشابهی دارد - نادیده گرفتن لینکها در نظرات و غیره. اما قانون برای افراد مکنده نوشته نشده است... بنابراین، ما، صاحبان انجمنها، باید این واقعیتها را در نظر بگیریم که «بهینهسازهای جالب SEO» دستور «اجرای» را میدهند. ” از خلاقیت های مزخرف آنها برای هزار روبل. افزونه Stop Spammer تا حد زیادی فیلتر می شود. اما ما می توانیم به او کمک کنیم! شما می توانید علاقه زیادی به ارسال پیوندها در انجمن خود از زیر هرزنامه ها بگیرید. این دقیقا همان چیزی است که لینک های ضد هرزنامه برای آن هستند. این افزونه (اعداد خاص را می توان در تنظیمات تغییر داد) موارد زیر را انجام می دهد: باور کنید، سئوکاران بالقوه بسیار مراقب شکلی هستند که لینک آنها در سایت قرار می گیرد. آنها به سرعت علاقه خود را به انجمن شما از دست خواهند داد اگر نتوانند به راحتی پیوندهای مزخرف خود را به سایت های مزخرف خود در آنجا ارسال کنند. بله، اتفاقا قوانین فوق در زمینه هایی مانند امضا نیز کار می کنند. برای نصب این افزونه به صفحه رسمی آن بروید. بایگانی anti_spam_links_v1.0.1.zip را دانلود کنید (تعداد ممکن است متفاوت باشد). دوباره در ادمین انجمن به نصب بسته ها (همانطور که با بسته قبلی انجام دادید) بروید و آن را نصب کنید. هیچ فایل زبانی برای این بسته وجود ندارد، بنابراین نیازی به باز کردن آرشیو یا انجام کاری با آن نیست. برای پیکربندی افزونه به بخش مراجعه کنید پیکربندی ← راه اندازی حالت ها... ← تنظیم تغییرات در صورت تمایل، مشخص کنید که کاربر باید چند پیام داشته باشد تا قابلیت های خود را ارتقا دهد. این دو افزونه زندگی شما را، صاحب انجمن، بسیار آسان تر می کند و در زمان زیادی صرفه جویی می کند. با این حال، هرازگاهی، هرزنامهها نفوذ میکنند و حداقل هفتهای یکبار، باید کاربران را نازک کنید و پیامهای هرزنامه را حذف کنید. بنابراین، منابع وب خود را رها نکنید!
چاپ "phpbb \n"
اگر ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?phpbb\.com\/?"[^>]*>phpBB/iیا
# $data =~ /viewforum\.php\?[^""]*f=\d+/i یا
$data =~ /phpBB\-SEO/i یا
$data =~ /)
;
چاپ "ipb \n"
اگر ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?invision(?:board|power)\.com\/?[^"]*"[^>]*> [^<]*IP\.Board/i
یا
$data =~ /]+href="[^"]*http:\/\/(?:www\.)?invisionboard\.com\/?"[^>]*>Invision Power Board/iیا
$data =~ /
$data =~ /index\.php\?[^""]*showforum=\d+/i)
;
چاپ "vbulletin \n"
اگر ($data =~ /طراحی شده توسط:؟[^<]+vBulletin[^<]+(?:Version)?/i
یا
$data =~ /)
;
چاپ "smf \n"
اگر ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?simplemachines\.org\/?"[^>]*>طراحی شده توسط SMF/iیا
$data =~ /index\.php\?[^""]*board=\d+\.0/i)
;
چاپ "punbb \n"
اگر ($data =~ /]+href="[^"]*http:\/\/(?:(?:www\.)?punbb\.org|punbb\.informer\.com)\/"[^>]*> PunBB/i) ؛ #یا
# $data =~ /viewforum\.php\?[^""]*id=\d+/i);
چاپ "fluxbb \n"
# if($data =~ /viewtopic\.php\?id=\d+/i یا
اگر ($data =~ /]+href="http:\/\/(?:www\.)fluxbb\.org\/?"[^>]*>FluxBB/i)
;
چاپ "exbb \n"
اگر ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?exbb\.org\/?"[^>]*>ExBB/i) ؛ # یا
# $data =~ /forums\.php\?[^""]*forum=\d+/i);
چاپ "یاب \n"
اگر ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?yabbforum\.com\/?"[^>]*>YaBB/iیا
$data =~ /YaBB\.pl\?[^""]*num=\d+/i ) ;
چاپ "dleforum \n"
اگر ($data =~ /\(طراحی شده توسط انجمن DLE\)<\/title>/منیا
$data =~ /]+href="[^"]+(?:http:\/\/(?:www\.)?dle\-files\.ru|act=copyright)[^"]*"> انجمن DLE<\/a>/من)
;
چاپ "ikonboard \n"
اگر ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?ikonboard\.com\/?[^"]*"[^>]*>Ikonboard/iیا
$data =~ /\n"
اگر ($data =~ /\n"
# if($data =~ /forums\.php\?fid=\d+/i یا
# $data =~ /topic\.php\?fid=\d+/i یا
اگر ($data =~ /]+href="http:\/\/(?:www\.)?flashbb\.net\/?"[^>]*>FlashBB/i)
;
چاپ "stokesit \n"
# if($data =~ /forum\.php\?f=\d+/i یا
اگر ($data =~ /]+href="http:\/\/(?:www\.)?stokesit\.com\.au\/?"[^>]*>[^\/]*Stokes IT/i)
;
چاپ "تریبون \n"
# if($data =~ /topic\.php\?t=\d+/i یا
اگر ($data =~ /]+href=[""]?http:\/\/(?:www\.)?sopebox\.com\/?[""]?[^>]*>Podium/i)
;
چاپ "usebb \n"
# if($data =~ /forum\.php\?id=\d+/i یا
اگر ($data =~ /]+href="http:\/\/(?:www\.)?usebb\.net\/?"[^>]*>UseBB/i)
;
چاپ "wrforum \n"
# if($data =~ /index\.php\?fid=\d+/i یا
اگر ($data =~ /]+href="http:\/\/(?:www\.)?wr\-script\.ru\/?"[^>]*>WR\-Forum/i)
;
چاپ "yetanotherforumnet \n"
اگر ($data =~ /Yet Another Forum\.net/i یا
$data =~ /default\.aspx\?g=posts&t=\d+/i)
;
سایت:talk.*.ru
سایت:board.*.ru
سایت: smf.*.ru
سایت: phpbb.*.ru
....اولین گام در بهینه سازی موتور جستجو تالار ماشین های ساده: حذف حق چاپ و لینک های خارجی
1. نصب و پیکربندی Stop Spammer
2. نصب و پیکربندی لینک های ضد هرزنامه
نتیجه