En tiedä, voiko kukaan varsinaisesti jelpata tässä, mutta jos jollakulla suinkin olisi edes antaa vinkkiä, mistä on kyse… Selitys on valitettavan monipolvinen, koska ongelma on kryptinen.
Kotisivustollani on DokuWiki yksinkertaisena omana tietämyskantana – kaikenlaista ajan saatossa kertynyttä pikku tietoa, jonka olen tallentanut wikiin itseäni varten, jotta se on kaikkialta käytettävissä. DokuWiki on tekstitiedostopohjainen tietokannaton wiki eli hyvin kevyt: pääasiassa PHP-koodia ja hakemistollinen .txt-tiedostoja.
Eilen ilmeni ongelma. Yhtäkkiä en pystynyt tallentamaan pääsivua eli start.txt-tiedostoa wikikäyttöliittymästä, vaan sain aina virheilmoituksen käyttöoikeuksien puuttumisesta tiedostoon doku/doku.php. Sekä start.txt:n että doku/doku.php:n käyttöoikeuksissa ei kuitenkaan ollut mitään vikaa, ne olivat juuri kuten piti.
Muutaman kerran yritettyäni tilanne sitten eskaloitui. Yhteys sivuston palveluntarjoajaani katkesi täysin, edes ping ei tavoittanut palvelinta. Tosin näin vain tietystä IP:stä – jos kokeilin kännykällä eli mobiililiittymästä, palvelin yhä vastasi.
Tänä aamuna yhteys taas toimi, joten jatkoin kokeiluja. Menin ensin SSH:lla palvelimelle, siirsin start.txt-tiedoston uudelle nimelle ja kokeilin luoda sen uudestaan. Ei ongelmia. Sitten yritin kopioida alkuperäisen start.txt:n sisällön uuteen komennolla ”cat start.txt.bak >> start.txt". Yhtäkkiä taas ”käyttöoikeudet puuttuivat”.
Lähdin kopioimaan alkuperäistä tiedostoa pätkä pätkältä. Lopulta vastaan tuli yksi (wikinsisäinen) linkki, jonka lisääminen aiheutti tilanteen. Linkissä ei sinänsä ollut vikaa eikä sen osoittamassa tiedostossakaan. Siirtelin hetken tekstipätkiä sinne tänne paikalliskoneelta leikepöydän yli, ja yhtäkkiä kaikki taas toimi. Kaikki alkuperäinen teksti oli mukana, vain järjestys oli vähän muuttunut.
Nyt sama ”käyttöoikeusongelma” on ilmennyt toisessakin tiedostossa. Nyt vikana tuntuu olevan se, että tiedosto sisältää yhden parittoman <-merkin! (”<” on välttämätön, koska se on osa muistiin pantua FreeBSD:n komentoa. HTML-korvaaminen &html;-muotoon ei toimi.)
Kokeilin käpistellä tiedostoa suoraan nanolla SSH:n yli. Sivu näkyi wikissä ookoo – mutta yritys muokata sitä wikikäyttöliittymässä aiheutti taas virheilmon, ja saman tien katkesi palvelinyhteys. Ping-paketit häviävät taas sataprosenttisesti ja SSH-yhteyskin jämähti käyttökelvottomaksi. Odottelen nyt sen paluuta.
MISTÄ TÄSSÄ ON KYSE? Onko vika oikeasti yksittäisessä <-merkissä, joka kuitenkin pari vuotta ehti sivulla toimia ongelmitta? Vai onko DokuWikin PHP-koodiin tullut esim. päivityksen myötä bugi – yrittääkö se nyt käyttää wikin koodia siivoamatta ensin vaarallisia merkkejä? Vai onko kyseessä yksinkertaisesti palveluntarjoajan tiedostopalvelimen ongelma?