Jälleen kerran kysyisin neuvoa asiantuntijoilta.
Tarkoitukseni on tehdä sivu jota pääsee katsomaan vain käyttäjätunnuksen ja salasanan antamalla. Olen löytänyt netistä lukuisia ohjeita, miten tämä toteutetaan, mutta jostain syystä homma ei lähde pelaamaan.
.htaccess -tiedostoni on seuraavanlainen:
AuthUserFile /home/sogkup4j/public_html/testi/.htpassword AuthName "name of login prompt" AuthType Basic <files "admin.php"> require valid-user </files>
ja .htpassword tiedostoni sijaitsee samassa kansiossa kuin .htaccess ja admin.php. Tiedostossa on ainoastaan online -palvelussa luotu enkryptattu tunnus ja salasana.
kun yritän mennä selaimella po. 'admin.php' sivulle, saan ilmoituksen: 'Sorry, no posts matched your critteria'.
Kiitos jo etukäteen.
Tuosta virheilmoituksesta päätellen vika on kirjautumisen sijaan itse admin.php -skriptissä, joka ei toimi niin kuin pitäisi.
Kiitos nopeasta vastauksesta.
admin.php on seuraavanlainen:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Lokin nollaussivu</title> </head> <body> <Form Name ="form1" Method ="POST" ACTION = "rename.php"> <INPUT TYPE = "Submit" Name = "Submit1" VALUE = "Nimeä lokitiedosto uudelleen"> </body> </html>
Ja tuo rename.php, johon viitataan on:
<?php $file = 'log.html'; $file2 = 'OLD_log-' . date('Y-m-d_H.i.s') . '.txt'; if (!file_exists($file)) { echo "Tiedostoa $file ei ole.\n"; } elseif (!@rename($file, $file2)) { echo "Siirto epäonnistui!\n"; } else { echo "Siirto onnistui. Nimi: $file2\n"; }
Mikäli poistan kansiosta .htaccess- ja .htpassword-tiedostot homma toimii hienosti (mistä kiitokset tällä foorumilla auttaneille osaajille).
Äkkiseltään vaikuttaa vähän wordpressin virheilmoitukselta. Ohjaakohan tuo käyttäjän johonkin toiseen osoitteeseen tms, koska tuo virheilmoitus ei vaikuttaisi tulevan mistään tänne laittamastasi koodista.
Tuo "Sorry, no posts..." ilmoitus näyttäisi olevan 404-virhesivun tekstiä. Kokeile vaikka mennä admin.php sijaan osoitteeseen abcdef.php, tulee samanlainen ilmoitus.
Eli tuo .htaccess ei jostain syystä toimi, vaan heittää virheen. Tuo tiedosto ainakin näyttäisi olevan suht oikein, minulla ei ole apachea asennettuna että voisin testata. Joku varmaan löytää sieltä jonkin pienen virheen...
Tarkista vielä, että tuo .htpassword on varmasti oikeassa paikassa ;)
Ja tuo rename.php kannattaa ehdottomasti suojata, se tässä se kaikkein tärkein suojattava on!
Kiitos vastauksista.
Aivan, abcdef.php antaa saman ilmoituksen.
Aihe on jo aika vanha, joten et voi enää vastata siihen.