WebZdarma a očůrání reklamy

Teda, ne úplně, protože jak administrátoři WebZdarma tvrdí, skryjete-li reklamu, máte po ptákách.

Chci se zaměřit na následující situaci:

  • Jste donuceni snížit se k umístÄ›ní PHP stránek na WebZdarma
  • PotÅ™ebujete do skriptů vkládat tÅ™eba soubor config.php s citlivými údaji, jako je login k MySQL apod.

Nejprve něco k bezpečnosti. Nejlepší řešení je samozřejmě umístit citlivé soubory mimo DocumentRoot, to ale na WZ nejde. Je tedy nanejvýš vhodné, aby config.php měl koncovku .php, protože koncovka jiná, třeba .inc, by stačila k tomu, aby kdokoli zadal do prohlížeče http://superstranky.wz.cz/config.inc a hesla viděl v celé jejich kráse (server nepozná, že soubor má prohnat skrz PHP a běžně ho odešle). Pro všechny případy není od věci takovému souboru ještě zakázat přístup zvenčí pomocí .htaccess. Jistota je jistota.

V čem je problém? Protože jeden podobný web spravuji, vÅ¡iml jsem si, že WebZdarma Å™eší vkládání reklamy pÅ™i uploadu PHP souboru – prostÄ› ji prasácky mrskne na konec (je to potom rychlé). Když do skriptu includujete 10 .php souborů a máte nastaveno zobrazování reklamy na stránce dole, uvidíte ve výsledku celkem 11 reklam na jediné stránce. SamozÅ™ejmÄ›, každý soubor obsahoval reklamu. Jedno z Å™eÅ¡ení je použít funkce na řízení výstupu:

<?php
ob_start
(); require_once('config.php'); ob_end_clean();
?>

Ale s mírou, protože tahle metoda zhltne veškerý výstup skriptu, včetně případných chyb. Ostatním vkládaným souborům které nemusejí být nutně skryté je lepší dát koncovku .lib či podobně. Tím se zamezí automatickému připojení reklamy, pročež není třeba je dál ošetřovat.

Tak, a teď ještě jedna možnost. Stačí dát na konec každého includovaného souboru return;, čímž se vkládání ukončí. Dejte ale pozor, aby se jednalo skutečně o vkládané soubory, protože pokud půjde o opravdickou stránku, nezobrazí se reklama ani na ní a vystavujete se riziku, že vám web smažou. Sice nemohu ručit za to, že se to v ostatních případech nestane, ale podle mě je tohle naprosto korektní ošetření závažného nedostatku. Cílem přece je, aby se na stránce zobrazovala právě jedna reklama.

Aktualizace

Jiří Počta poznamenává, že stačí zvolit v administraci ruční vkládání reklamy.


Komentáře

[1] Jiří Počta [web] – 2007-07-28, 1.17

Hezký článek .. ale proč bych to měl řešit zrovna takhle (podle mně složitě) když je mnohem lehčí nastavit si na administraci WZ že budu reklamu vkládat ručně (musíš tam nastavit cestu k souboru s reklamou) a prostě ji tam na tu určitou stránku už jen na includuju ;-) ..

[2] Honza Odvárko [web] – 2007-07-28, 1.25

Vidíš, díky, tak o tomhle jsem ani nevěděl.

Asi celej článek smažu. První update byl, když jsem se dozvěděl, že include jde zastavit přes return; To už mi přišel celej text k ničemu.
A teď se dozvím. že je to ještě snažší. No já se na to... :-)

[3] Jiří Počta [web] – 2007-07-28, 13.32

Určitě tenhle článek nemaž ;-) to by byla škoda .. Vlastně tím dokazuješ že nejsi závislý na nějakých adminech na WZ, ale že si dokážeš jako programátor poradit i bez nich pomocí takového krátkého kódu PHP a to je přeci krásné. Většina lidí než aby se pokusili problém řešit a vyřešit by raději nic neincludovala.

[4] Honza Odvárko [web] – 2007-07-29, 22.30

Ne mě neuchlácholíš, tenhle článek je faux pas.

[5] Hosti [web] – 2008-01-09, 1.13

Vložení reklamy do PHP souboru lze taky předejít následujícím způsobem: přepsat koncovku souboru na, třeba, php4 (nebo prostě cokoliv jiného než .php :-)), uploadovat, a na serveru jej přejmenovat zpět.

Asi půl roku jsem tenhle postup nezkoušel, ale dřív to fungovalo spolehlivě, a pochybuji, že by se něco změnilo...

[6] mujfibi [web] – 2008-03-09, 18.41

Dřív sem měl taky web na wz.cz a reklama se mi tam prostě nějakou záhadou nezobrazovala. Možná to bylo ,protože sem používal rámy a když sem měl soubor index.html ,který obsahoval strukturu stránky tak se to pravděpodobně vložilo tam a nikde jinde sem to nenašel.

[7] iuxoiegw [web] – 2012-02-06, 19.56

Přidat komentář

Identifikace autora

(zobrazí se v antispam podobě)

Komentář

Nepoužívej HTML značky a piš pokud možno s diakritikou. Na ostatní komentáře se odkazuj např. [1]

Díky za tvůj názor!

Navigace

Hledání