Portál AbcLinuxu, 4. května 2025 16:49

KernelWiki se přesouvá

20.10.2006 21:02 | Přečteno: 1443× | (bez kategorie) | poslední úprava: 7.11.2006 17:09

KernelWiki se přesouvá (z kernel.watzke.cz) na Linux-FAQs.org.

Doména Linux-FAQs.org patří Zdeňkovi, který přemýšlel jak nám s wiki pomoci, když nemá mnoho času na psaní. Rozhodl se, že mi ji věnuje (a bude ji dál platit). Tak za to mu především extrémně děkuju. Je to super věc. Nejenom proto, že URL nebude vypadat tak egoisticky ;)

Když už píšu o KernelWiki - bylo by hezký vygenerovat pomocí Kconfigů takovej index, aby se to dalo procházet jako při nastavování pomocí make {menu,x,g}config. Problém je, že to prostě neumím. Musel by se napsat docela složitej parser a do toho se mi jen kvůli tomuhle moc nechce. Takže když budete chtít pomoct, tohle je jedna z věcí, která by se dost hodila.

Chcete-li se k nám přidat, jste též extrémně vítáni. Stačí mi napsat na e-mail.

Update: Ještě tohodle zápisku zneužiju abych se na něco zeptal... Mám PHP funkci

function LastChanged($adresar, $cat) {
  clearstatcache();

  if ($handle = opendir($adresar)) {
    $pocet = 0;
    $soubory = array();

    while (false !== ($soubor = readdir($handle))) {
      if (!is_file($adresar.$soubor)) continue;
      $soubory[0][$pocet] = Date("YmdHis", filemtime($adresar.$soubor));
      $soubory[1][$pocet] = ereg_replace("\..*", "", $soubor);
      $pocet++;
    }
    closedir($handle);
  }

  array_multisort ($soubory[0], SORT_DESC, SORT_NUMERIC, $soubory[1]);

  $j = (Count($soubory[0]) >= 10) ? 10 : Count($soubory[0]);

  for ($i = 0; $i < $j; $i++) {
    echo "<li>";
    tpl_link(wl("$cat:".$soubory[1][$i]), $soubory[1][$i]);
    echo "</li>\n";
  }

  clearstatcache();
}
Jde o funkci, která na hlavní straně generuje poslední změněné položky. Jak vidíte, clearstatcache() je zbytečně dole i nahoře, ale stejně se furt používá kešovanej výsledek a dokud hlavní stránku ve wiki nějak neupravím, změny se neprojeví. Proč? :-(

Update: Řešením je tedy touch() na soubor, který chci refreshnout - viz Zdeňkův komentář.

Update 2: Lepším řešením je na začátek dát ~~NOCACHE~~ ;-)        

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (3) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

bazil avatar 20.10.2006 21:15 bazil | skóre: 33 | blog: sluje | Miroslav
Rozbalit Rozbalit vše Re: KernelWiki se přesouvá
Odpovědět | Sbalit | Link | Blokovat | Admin
a jakej formát by měl mít ten index? (wiki sem nikdy neviděl "zevnitř")
David Watzke avatar 20.10.2006 21:19 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: KernelWiki se přesouvá
No, udělala by se stránka, obsahující třeba podnadpis File systems a tam
[[kernel:CONFIG_REISERFS_FS|Reiserfs support]]
atd, atd...
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
bazil avatar 20.10.2006 22:17 bazil | skóre: 33 | blog: sluje | Miroslav
Rozbalit Rozbalit vše Re: KernelWiki se přesouvá
tak ok, já se rači kouknu, jak ta wiki flastně funguje :-)
20.10.2006 21:34 Kníže Ignor | skóre: 19 | blog: stoupa
Rozbalit Rozbalit vše Re: KernelWiki se přesouvá
Odpovědět | Sbalit | Link | Blokovat | Admin
make wikiconfig :-)
Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
21.10.2006 16:18 pasmen | skóre: 45 | blog: glob | Praha
Rozbalit Rozbalit vše Re: KernelWiki se přesouvá
Odpovědět | Sbalit | Link | Blokovat | Admin
Nevim uplne presne, jak to cachovani vlastne funguje, ja se s tim trapim u CSS stylu. Pri zmene nejsou ve vetsine pripadu zmeny videt. Pouzivam trik, ktery jsem nekde okoukal: v hlavicce HTML staci pridat za jmeno souboru se styly nejaky paramter, jako kdyz predavas hodnotu metodou GET, takze v mem pripade napr.
<link rel="stylesheet" type="text/css" href="./css/style.css?v=1" />
pricemz s kazdou dalsi upravou zvysim hodnotu v. Takhle ho donutim pouzit vzdy novou verzi.
21.10.2006 17:34 ..... | skóre: 4 | blog: .
Rozbalit Rozbalit vše Re: KernelWiki se přesouvá
Odpovědět | Sbalit | Link | Blokovat | Admin

A kdy ti vyjde ta kniha David Watzke: Pokročilá konfigurace Gentoo GNU/Linuxu? :-)

Marek Bernát avatar 21.10.2006 18:24 Marek Bernát | skóre: 17 | blog: Arcadia
Rozbalit Rozbalit vše Keš
Odpovědět | Sbalit | Link | Blokovat | Admin
S tým kešovaním si si istý, že je to na strane PHP? Nemôže to byť na strane serveru, alebo dokonca prehliadača?
physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
David Watzke avatar 21.10.2006 18:36 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Keš
Memôže to byť na strane serveru,
To může, zeptám se. Jenže volám clearstatcache(), tak o co jde? Kdyby to nešlo, snad by hodil chybu...
alebo dokonca prehliadača
Ne.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
Marek Bernát avatar 21.10.2006 18:45 Marek Bernát | skóre: 17 | blog: Arcadia
Rozbalit Rozbalit vše Re: Keš
Ten clearstatcache s tým nemusí nič mať (a pravdepodobne ani nemá). PHP normálne vygeneruje aktuálne HTML, lenže server ho z nejakého dôvodu nepošle a pošle to nakešované. To je najpravdepodobnejšie. Ďalšia situácia je, že to dokonca odíde čerstvé aj zo servru, ale zahodí to prehliadač. Preto sa ťa pýtam, že či si na 100% istý, v ktorej fáze sa používa keš.
physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
David Watzke avatar 21.10.2006 19:06 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Keš
Jsem si jistej, že to není prohlížečem. Absolutně. Zkusil jsem vyčistit cache + dva další prohlížeče ;-)
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
David Watzke avatar 21.10.2006 19:09 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Keš
Btw, s clearstatcache() máš asi pravdu, na PHP.net píšou:
Tato hodnota se cachuje pouze po dobu běhu skriptu.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
Marek Bernát avatar 21.10.2006 19:52 Marek Bernát | skóre: 17 | blog: Arcadia
Rozbalit Rozbalit vše Re: Keš
Čiže je to nastavením serveru. Zrejme niečo medzi PHP a serverom. S tým ti už nepomôžem. Ale aspoň si o kúsok bližšie k nájdeniu chyby :-)
physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
21.10.2006 20:20 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Keš
Nastavením serveru to není. Je to featura docuwiki, která si vygeneruje xhtml kód a uloží si ho do cache na disku. No a nová stránka se do cache generuje pokud se změní zdrojový kód (někdo danou stránku upraví). Vynucené načtení stránky ze zdrojového souboru je možné přes parametr ?purge=true, který se přidá k url nebo příkazem touch na zdrojový soubor :-).
-- Nezdar není hanbou, hanbou je strach z pokusu.
21.10.2006 20:23 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Keš
Chyba, touch na zdrojový soubor pouze způsobí, že se objeví jako naposledy editovaný, ale pouze pokud se použije ten parametr purge v url.
-- Nezdar není hanbou, hanbou je strach z pokusu.
21.10.2006 20:31 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Keš
Hmmm, tak blbnu. Touch samozřejmě funguje, ale musí se provést na ten soubor který chci refreshnout (v tomto případě to je titulní stránka) a ne na nějaký jiný...
-- Nezdar není hanbou, hanbou je strach z pokusu.
Marek Bernát avatar 21.10.2006 20:30 Marek Bernát | skóre: 17 | blog: Arcadia
Rozbalit Rozbalit vše Re: Keš
To není feature, to je bug :-)
physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
21.10.2006 20:31 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Keš
Proč myslíš?
-- Nezdar není hanbou, hanbou je strach z pokusu.
Marek Bernát avatar 21.10.2006 20:40 Marek Bernát | skóre: 17 | blog: Arcadia
Rozbalit Rozbalit vše Re: Keš
Pretože sa nedá defaultne použiť žiadna dynamicky generovaná stránka (viď problém). Nie je to tak?

Keš ja vidím len ako optimalizáciu – zapne sa tam kde treba.
physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
David Watzke avatar 21.10.2006 21:06 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Keš
Aha, díky za objasnění.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
21.10.2006 19:56 Kníže Ignor | skóre: 19 | blog: stoupa
Rozbalit Rozbalit vše Re: KernelWiki se přesouvá
Odpovědět | Sbalit | Link | Blokovat | Admin
tak si to zapiš na tom servéru do soubóru, abys věděl, že generuješ opravdu něco jiného :-)
Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
David Watzke avatar 21.10.2006 19:58 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: KernelWiki se přesouvá
To je výbornej nápad, bohužel bych musel rozšířit své téměř mizivé znalosti PHP a to se mi právě v tento moment nechce :-D
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
Marek Bernát avatar 21.10.2006 20:01 Marek Bernát | skóre: 17 | blog: Arcadia
Rozbalit Rozbalit vše Re: KernelWiki se přesouvá
Tak presmeruj tomu procesu stdout :-)
physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
David Watzke avatar 21.10.2006 20:04 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: KernelWiki se přesouvá
Jak?
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
Marek Bernát avatar 21.10.2006 20:20 Marek Bernát | skóre: 17 | blog: Arcadia
Rozbalit Rozbalit vše Re: KernelWiki se přesouvá
A kto povedal, že sa to dá? :-)
physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
21.10.2006 22:10 thingie
Rozbalit Rozbalit vše Re: KernelWiki se přesouvá
Odpovědět | Sbalit | Link | Blokovat | Admin
Inu, trp.

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.