Nerentabilní vbulletin. Které fórum je lepší vBulletin nebo PunBB. Je společnost přeprodejcem?

Každý motor vyžaduje určité akce k optimalizaci pro lepší a rychlejší výkon. V našem případě budeme hovořit o optimalizaci Vbulletinu 4.

Vzhledem k tomu, že náš engine fóra je neustále aktualizován, nebudu psát o optimalizaci dřívějších verzí Vbulletinu, ale začnu s verzí 4.1.12. I když možná budu tento článek postupně doplňovat optimalizací pro předchozí verze, protože ne každý přechází na novější.

Zde uvedu několik příkladů, aby bylo vaše fórum Vbulletin rychlejší a lepší (začínaje nejjednoduššími věcmi a přecházím ke složitějším). Mějte prosím na paměti, že to, co funguje pro mě, nemusí nutně fungovat pro vás. Veškeré změny proto provádíte na vlastní nebezpečí a riziko.

Deaktivace seznamu uživatelů.

Existuje snadný způsob, jak tuto funkci jednoduše deaktivovat v AdminCP. (Nastavení -> Možnosti -> Možnosti seznamu uživatelů)

To samozřejmě není globální a můžete to přeskočit a nedělat to, jen si položte otázku: potřebujete to? Vzhledem k tomu, že mají seznam, uživatelé jej mohou třídit, vidět, kdo má více zpráv, pověst a tak dále. Používají to vaši uživatelé? Pravděpodobně ne... kdy jste tento seznam naposledy použili?

Pokud jde o mě, zdá se mi, že tyto seznamy prospívají pouze spammerům, protože je to nejjednodušší způsob, jak shromáždit všechna jména účastníků fóra Vbulletin 4 pro rozesílání spamu v soukromých zprávách.

Dotaz potřebný k vygenerování seznamu uživatelů je navíc pro databázové servery hrozný a může vést k velkému zatížení serveru.

Zvýšená rychlost při zpracování seznamu osobních zpráv.

Pokud jste nikdy neimportovali soukromé zprávy z externích zdrojů pomocí Impexu nebo jiných prostředků, můžete se u soukromých zpráv bezpečně spolehnout na třídění podle ID. Řazení podle ID zajistí, že váš databázový server nebude muset kvůli třídění ukládat soukromé zprávy do dočasné tabulky (dotaz je mnohem rychlejší).

Chcete-li to provést, musíte zaregistrovat malý modul s umístěním v private_messagelist_filter a napsat do něj následující:

If ($sortfield == "pmtext.dateline") $sortfield = "pm.pmid";

A je to, právě jste zrychlili private.php o ~20 %.


Nastavili jsme efektivnější vyhledávání nejnovějších zpráv od uživatele.

Jdeme na FTP, hledáme soubor obsahuje /class_userprofile.php a nahradíme data v něm následovně, hledejte:

$getlastposts = $this->registry->db->query_read_slave(" SELECT thread.title, thread.threadid, thread.forumid, thread.postuserid, post.postid, post.dateline FROM " . TABLE_PREFIX . "post AS post INNER PŘIPOJTE SE " . TABLE_PREFIX . "vlákno JAKO vlákno USING (threadid) WHERE thread.visible = 1 AND post.userid = " . $this->userinfo["userid"] . " AND post.visible = 1 ORDER BY post.dateline DESC LIMIT 20 ");

a nahraďte jej tímto (konkrétněji OBJEDNAT BY):

$getlastposts = $this->registry->db->query_read_slave(" SELECT thread.title, thread.threadid, thread.forumid, thread.postuserid, post.postid, post.dateline FROM " . TABLE_PREFIX . "post AS post INNER PŘIPOJTE SE " . TABLE_PREFIX . "vlákno JAKO vlákno USING (threadid) WHERE thread.visible = 1 AND post.userid = " . $this->userinfo["userid"] . " AND post.visible = 1 ORDER BY post.postid DESC LIMIT 20 ");

Díky tomu je požadavek o něco správnější, než je. Tímto způsobem nebudete muset třídit do dočasné tabulky. Uživatelům s více než 1000 zprávami by počáteční požadavek trval asi 10 sekund, v našem případě mnohem méně. To se týká především uživatelského profilu Vbulletin 4 pro zobrazení nejnovějších zpráv.

Kontrola rejstříku témat.

Pokud mají vaše fóra výchozí pořadí řazení, které je nastaveno beze změn, jako jsme to udělali výše, ujistěte se, že všechny vaše indexy jsou v jejich tabulkách. Byly případy, kdy se indexy z mně neznámých důvodů překrývaly a některá fóra se neotevřela.

Navrhuji, aby výchozí řazení bylo ve formě data (sloupec, který používá tato data, se nazývá „dateline“), a abychom to implementovali, spusťte dotaz:

ALTER TABLE vlákno ADD INDEX forumid2_dp (fórum, viditelné, lepivé, datová čára)

Tato žádost se týká konkrétně mě, ve vašem případě by forumid2_dp mělo mít vaše jméno. Použití na vlastní nebezpečí.

Při instalaci doplňků buďte opatrní.

To, že někdo vyrábí moduly a hackuje, neznamená, že jsou vytvořeny jen pro vás, pracovali na velkých fórech Vbulletinu 4 a jsou bez chyb. Vynikajícím příkladem jsou zprávy o hromadných hackech prostřednictvím jednoho nebo druhého hacku.

Samozřejmě můžeme předpokládat, že vývojáři nemohou vzít v úvahu vše, a prosít všechny hacky, aby nebyly v konfliktu, ale... Ujistěte se, že modul Vbulletin nezpůsobuje velké zatížení databáze, ujistěte se, že hack má potenciál chránit před SQL injections nebo XSS . Bohužel aplikací a úprav jsou tisíce a vše jednoduše zkontrolovat nelze. Bude lepší, když si všechny hacky napíšete sami, nebo objednáte od někoho jiného. Speciálně přizpůsobené vám a vašim úkolům.

V InnoDB nepoužívejte tabulky.

Tady mi samozřejmě můžou naplivat do obličeje, když už tohle téma bylo probráno milionkrát, ale z vlastní zkušenosti můžu říct, že na tabulkách MyISAM pracuji na 100% na jakoukoliv akci. Někdy zpracuji 1000 požadavků za sekundu.

Pokud už začínáte šílet, kde co visí během dotazů, zejména v novém vyhledávání Vbulletin, změňte tabulky InnoDB na MyISAM. MyISAM reaguje rychleji na jednotlivé požadavky, protože nemusíte spravovat zamykání jednotlivých záznamů. InnoDB je celkově rychlejší, ale pouze proto, že umožňuje souběžné spouštění dotazů. Pokud vaše dotazy již běží rychle pod MyISAM, není třeba přecházet na InnoDB. IMHO.

Hodnocení článku

0%

Hodnocení

Uživatelské hodnocení: 0,35 (1 hlas)

Pravděpodobně jste mnohokrát viděli fóra o enginu vBulletin. Fóra jako taková už nejsou v módě, ale vBulletin je stále jedním z nejoblíbenějších enginů. V jeho nejnovější (páté) verzi bylo nalezeno několik zranitelností, které mohou velmi zničit život administrátora. V tomto článku vám řeknu, jak se používají.

Prvním problémem je nesprávné filtrování uživatelských dat. Oznámil to nezávislý bezpečnostní výzkumník, který si přál zůstat v anonymitě. Tato chyba zabezpečení, i když má určitá omezení, získala kritický stav, protože vám umožňuje číst libovolné soubory a spouštět libovolný kód v cílovém systému.

Druhá zranitelnost byla nalezena výzkumníky z TRUEL IT a obdržela identifikátor CVE-2017-17672. Souvisí s funkcemi deserializace dat v enginu a může být použit útočníkem k odstranění libovolných souborů v systému.

Úplné zprávy s podrobnostmi o obou problémech byly zveřejněny jako součást programu Beyond Security společnosti SecuriTeam. Existují také exploity PoC, které demonstrují zranitelnosti. Pojďme si to všechno projít popořadě.

Přípravy

Jako server jsem použil distribuci WAMP.

Číst soubory, spouštět příkazy

Důvodem první zranitelnosti je tedy nesprávná logika při zpracování parametru routestring, který útočníkovi umožňuje zahrnout jakýkoli soubor na disku prostřednictvím include a spustit PHP kód, který se v něm nachází.

Naše cesta začíná tím nejdůležitějším souborem – index.php, kde probíhá základní inicializace aplikace.

/index.php
48: $app = vB5_Frontend_Application::init("config.php"); ... 60: $routing = $app->getRouter(); 61: $method = $routing->getAction(); 62: $template = $routing->getTemplate(); 63: $class = $routing->getControllerClass();

Podívejme se na metodu vB5_Frontend_Application::init.

/includes/vb5/frontend/application.php
13: třída vB5_Frontend_Application rozšiřuje vB5_ApplicationAbstract 14: ( 15: veřejná statická funkce init($configFile) 16: ( 17: parent::init($configFile); 18: 19: self::$instance = new vB5_Frontend_Application(2); self::$instance->router = new vB5_Frontend_Routing( 21: self::$instance->router->setRoutes();

Zde nás zajímá metoda setRoutes.

47: veřejná funkce setRoutes() 48: ( 49: $this->processQueryString(); ... 54: if (isset($_GET["routestring"])) 55: ( 56: $cesta = $_GET[" routestring"];

Proměnná $path obsahuje hodnotu userdata z parametru routestring. Můžete do něj předat cestu ke stránce fóra a ta se načte.



Řekněme, že jsme prošli /test .

Po přiřazení proměnné existuje kus kódu, který se zbaví lomítka na začátku řádku, pokud je přítomen.

/includes/vb5/frontend/routing.php
75: if (strlen($cesta) AND $cesta(0) == "/") 76: ( 77: $cesta = substr($cesta, 1); // $cesta = "test" 78: )
zahrnuje\vb5\frontend\routing.php
83: if (strlen($cesta) > 2) 84: ( 85: $ext = strtolower(substr($cesta, -4)) ; 86: if (($ext == ".gif") NEBO ($ext == ".png") OR ($ext == ".jpg") OR ($ext == ".css") 87: OR (strtolower(substr($cesta, -3)) == ".js" )) 88: ( 89: header("HTTP/1.0 404 Not Found"); 90: die(""); 91: ) 92: )

Jak vidíte, kontrola je docela zvláštní. Přinejmenším matoucí je přítomnost seznamu zakázaných rozšíření zapsaných přímo do kódu. A obecně je matoucí už samotný fakt, že rozšíření se získá vyříznutím čtyř znaků z konce řádku (řádek 85). Obecně platí, že pokud se pokusíme přijmout soubor s příponami gif, png, jsp, css nebo js, ​​server vrátí stránku 404 a skript se zastaví. Když projdou všechny kontroly, zavolá se metoda getRoute ze třídy vB_Api_Route pomocí callApi. Na základě informací poskytnutých uživatelem vyhledává vhodné trasy.

Pokračování je dostupné pouze pro členy

Možnost 1. Připojte se ke komunitě „stránky“ a přečtěte si všechny materiály na stránce

Členství v komunitě ve stanoveném období vám umožní přístup ke VŠEM hackerským materiálům, zvýší vaši osobní kumulativní slevu a umožní vám získat profesionální hodnocení Xakep Score!

Pouze pro informační účely. Správa nenese odpovědnost za její obsah. Stáhnout zdarma.


vBulletin Connect v5.3.3 je výkonný, škálovatelný a plně přizpůsobitelný balíček fóra pro váš web.

Verze: 5.3.3 (vynulováno vBSupport.org)

Minimální požadavky php 5.6
Kompatibilní s php 7.1
Pro novou instalaci musíte přejmenovat soubor htaccess.txt na .htaccess
Při aktualizaci smažte složku písem (před zahájením aktualizace).

Nové příležitosti:
Nové uživatelské rozhraní s rozsáhlou sociální integrací;
Optimalizováno pro mobilní zařízení;
Zjednodušená instalace, správa a konfigurace;
Nová architektura databáze pro lepší vyhledávání a lepší výkon;
Pohodlná dynamická změna obsahu;
Pokročilé pro sdílení videa a obrázků;
Plná integrace s VigLink;
Více než 100 dalších nových funkcí a vylepšení;

Vestavěné aplikace:
Diskuzní fórum
Skupiny
Ankety
Blog

Optimalizace pro vyhledávače:
SEO přátelské adresy URL
Vlastní metaznačka klíčového slova/popisu

Flexibilita:
Rozšiřitelné uživatelské profily
přepisování URL
Lokalizace rozhraní
Metadata

Soulad se standardy:
Syndikace obsahu (RSS)
Syndikace obsahu: RSS, Atom, XML
kompatibilní s PHP v5.4

Nerozbitný integrovaný systém:
Jediné přihlášení
Jednorozlišovací systém
Jediný administrátorský ovládací panel
Vytvořte nepřetržitý styl/téma prostřednictvím článků, blogů, fóra

Panely pro každou roli:
Administrativní kontroly
Ovládací panel moderátora
Vlastní ovládací panel
Jednotný systém rozlišení
Motor šablony Power pro pokročilé přizpůsobení

Ovládání uživatele:
Víceuživatelský systém s neomezenými rolemi a pravomocemi
Zapojené skupiny
Bezpečnost
Granulované síly
Upozornění na problém
Kompatibilní SSL
Captcha
Potvrzení e-mailové adresy
Administrativní ovládací panel Editor zpráv
Přihlašovací "strike" systém
Změny e-mailu a hesla vyžadují aktuální heslo
V souladu se zákonem o ochraně soukromí dětí online (COPPA) z roku 1998

1. Přejděte na ovládací panel správce:
Jazyky a fráze – jazyky ke stažení/nahrání.
2. Do pole „BUĎ nahrajte soubor XML z vašeho počítače“ zadejte cestu k
soubor vbulletin-language_ru.xml na vašem počítači.
3. V možnosti „Přepsat jazyk“ vyberte „Vytvořit nový jazyk“
4. Do pole „Název pro nahraný jazyk“ zadejte název jazyka.
Pokud nejsou zadána žádná data, jazyk se bude nazývat „ruština (RU)“
5. Nastavte "Ano" na "Ignorovat jazykovou verzi"
6. Nastavte "Ano" na "Číst znakovou sadu ze souboru XML"
7. Klikněte na tlačítko "Importovat" a počkejte na dokončení procesu stahování.
7A V případě potřeby můžete nový jazyk nastavit jako „Výchozí“ jazyk,
kliknutím na tlačítko "Výchozí" / "Výchozí hodnota" vedle něj.





  • Z:
  • Registrovaný: 2014.07.08
  • Příspěvky: 3,924
  • Líbí se: 504

Téma: Které fórum je lepší vBulletin nebo PunBB

VBulletin (Vobla nebo Bulka, jak mu rádi říkáme) je jedním z nejstarších komerčních fór napsaných pomocí technologií PHP a MySQL. Od vydání úplně první verze v roce 2000 bylo vykonáno obrovské množství práce na vylepšení funkčnosti, což umožnilo VB zařadit se na seznam nejlepších softwarových produktů.

Licence VBulletin vás bude stát kolem 250 $. Buďte si jisti, že se jedná o zcela oprávněný výdaj, který se jistě vyplatí úsporou pracovního času a nervových buněk. Většina těchto peněz jde vývojářům a programátorům, kteří je později použijí na vylepšení funkčnosti a vydání záplat a doplňků (ano, všechny aktualizace vám budou po celý rok doručovány zdarma).

2 Odpovědět od PunBB

  • Z: Moskva, Sovchoznay 3, apt. 98
  • Registrovaný: 2014.07.08
  • Příspěvky: 3,924
  • Líbí se: 504

Nemá smysl vypisovat všechny funkce VBulletinu. Implementovali téměř vše, co by správci fóra mohli potřebovat. Podcasting, podpora multicitace, rozdělení do sociálních skupin a komunit, systém hodnocení (reputace). Základní balíček lze doplnit o rozšíření třetích stran.

Modul fóra VBulletin vytváří vážné zatížení serveru, zejména pokud jsou nainstalovány doplňky a skripty třetích stran. Abyste se v budoucnu vyhnuli problémům s načítáním stránek, budete muset přejít na normální hosting. Zvláště pokud předpovídáte v budoucnu větší provoz vašeho zdroje.

3 Odpovědět od PunBB

  • Z: Moskva, Sovchoznay 3, apt. 98
  • Registrovaný: 2014.07.08
  • Příspěvky: 3,924
  • Líbí se: 504

Re: Které fórum je lepší vBulletin nebo PunBB

VBulletin je díky své extrémní odolnosti vůči hackingu a spambotům doporučen pro použití ve velkých seriózních projektech. Standardní nastavení a konfigurační soubory lze navíc snadno měnit svým vlastním způsobem a dosáhnout tak ještě většího efektu. Na internetu je mnoho návodů a návodů od lidových řemeslníků, i když ne všem by se mělo věřit.

VBulletin implementuje rozsáhlé nápady tím nejlepším možným způsobem. Neustálé aktualizace, vysoce kvalitní služby, další rozšíření a spolehlivé bezpečnostní mechanismy - to vše plně ospravedlňuje peníze vynaložené na produkt.

4 Odpovědět od PunBB

  • Z: Moskva, Sovchoznay 3, apt. 98
  • Registrovaný: 2014.07.08
  • Příspěvky: 3,924
  • Líbí se: 504

Re: Které fórum je lepší vBulletin nebo PunBB

Nemá smysl vypisovat všechny funkce - on (nebo doplňky) implementuje téměř vše, co může administrátor potřebovat k vytvoření fóra. Nechybí multi-citace, podpora podcastingu, uživatelské komunity, sociální skupiny, flexibilní systém reputace a mnoho dalšího.

VBulletin má samozřejmě velké množství doplňků a uživatelských komunit, takže s údržbou nebudou žádné problémy, zvlášť když existuje oficiální tým podpory. Nevýhodou vBulletinu, i když není příliš velká, jsou placené přídavky například pro uživatelské blogy.

Celkově fórum nemá žádné nedostatky. Lze jej doporučit pro velké seriózní projekty právě pro jeho spolehlivost a odolnost vůči všem druhům útoků. Výsledkem je značné zatížení serveru, zejména s nainstalovanými doplňky, ale pro seriózní projekty obvykle používají seriózní servery a seriózní správci.

Chtěl jsem o tom napsat už dlouho, ale nikdy jsem se k tomu nedostal, ale teď jsem měl příležitost publikovat krátkou poznámku k tématu. Proč tedy nezveřejnit seznam toho, na co by se měl uživatel před výběrem hostingové služby nejprve podívat. Zejména pro nás, ty, kteří používají vbulletin. Nazvěme to vše jednoduše – doporučení. Je jasné, že profesionálové už všemu rozumí, tady není co vysvětlovat. Začátečníci by ale měli stále míchat. Jelikož vidím nezdravý trend, admin Vbulletinu 4 chce, aby jeho fórum fungovalo na sdíleném hostingu za 5 $ a vše poletí. už se to nikdy nestane!

Všichni známe základy, ale když jsem hledal svého hostitele, udělal jsem také nějaké chyby, takže se na některé podíváme.

Je společnost přeprodejcem?

Pánové, prosím vás, nepoužívejte hosting, který je přeprodávaný (overseller). S největší pravděpodobností dostanete kus velkého „mlatu“, se kterým budete dlouho trpět. Ale jak můžeme určit, že hosting je prodáván přes 50 hand? Nejsou zde žádná tajemství, bude vám nabídnuto 500 nebo 1500 GB prostoru (zde samozřejmě přeháním, ale ne moc) a 100 TB šířky pásma, a to za pouhých 5 babek. Není to příliš dobré? Ale to jsou všechno kecy, ve skutečnosti nepotřebujete více než 2-10 GB místa na disku, věřte mi. A šířka pásma 50-200 GB je mimo vaše uši, zejména v prvních několika dnech.

Je společnost prodejcem?

Zde je také potřeba být velmi opatrný. Většina prodejců jsou společnosti létající v noci. Berou peníze, trochu pracují a je to, už je neuvidíte. Všechny vaše soubory a práce budou ztraceny! Ale to nepotřebujeme, že? A i když se vám líbí ceny za hosting od těchto společností, určitě si ověřte, jak dlouho konkrétní společnost podniká.

Limit velikosti databáze!

Toto je velmi důležitý bod, pokud plánujete migrovat svůj pracovní vbulletin. Rozhlížel jsem se po nabídkách různých hostitelů, většina nabízí 100MB. Zpočátku vám to samozřejmě bude stačit, ale jakmile se vaše fórum rozroste, nebude vám to stačit a budete nuceni přejít na VPS nebo dedikovaný server.

Počet současných připojení k databázi.

Ach ano, je to 100% důležité. To je velmi důležité, zvláště pokud pracujete s Vbulletinem. Protože v průběhu času simultánní spojení pouze rostou. Většina sdílených hostingových společností nabízí 10-250, vše závisí na hostingu. Stačí zavolat na technickou podporu a zeptat se jich na to. Ne všechny sdílené hostingové weby však tyto informace mají nebo je s vámi budou sdílet.

Recenze! Je to dobré nebo špatné?

Technická podpora.

Většina hostingových stránek má nepřetržitou technickou podporu, která funguje 24/7, prostřednictvím e-mailu, vstupenek, icq, skype nebo jinou metodou. Ale jak dlouho vám budou pomáhat? Někdy to hraje rozhodující roli.

Zavolejte na technickou podporu a zjistěte, jak dlouho čekáte na odpověď, zejména v noci nebo v 5–6 ráno. A zkontrolujte několik možností a telefon a vstupenky. Ptejte se na jednoduché otázky, na které už znáte odpovědi, potřebujeme spočítat dobu jejich odezvy. Mám! Skvělé, podívejte se, jak dlouho jste čekali na odpověď na snadnou otázku, a odhadněte, jak dlouho vám v obtížné situaci odpoví.

Velká známá společnost nebo nová neznámá?

V zásadě je zde výběr pouze před vámi, čím starší a renomovanější společnost, ceny nebudou o něco vyšší než u nově vytvořených. Osobně si vybírám firmu, která se již nějak osvědčila. Chcete vědět proč? Je to jednoduché, představte si, že přes noc můžete ztratit mnoho užitečných souborů a databázi. Totéž platí pro zásady ochrany osobních údajů; nemůžete si být vždy jisti, že jsou dodržovány. Vaše data lze kopírovat a vytvářet klonované stránky. Tento seznam pokračuje dál a dál. No, rozumíš mi :)