Olisi tarkoitus tehdä virhesivu, joka näytetään aina kun tulee virhe 404. Osaako joku neuvoa, miten saan tietää mitä käyttäjä on urliksi kirjoittanut?
On mahdollista(kai), mutta onko se tuohon tarpeellista, kun on .htaccess? Käytä hakua, ja hae sanoilla htaccess ja 404
Olisi aika tarpeellista. Tulee tällä hetkellä paljon turhia 404-virheitä, koska osa käyttäjistä kirjoittaa tietyn osan urlista isoilla kirjaimilla. Täytyisi tietyissä tilanteissa muuttaa käyttäjän kirjoittama url pieniksi kirjaimiksi ja lähettää edelleen.
.htaccessilla ohjataan käyttäjä 404:n sattuessa php-sivulle. Haettu sivu taas löytyy muuttujasta $_SERVER['REQUEST_URI']
Kiitos vaan kovasti avusta! Piti aika paljon säätää, että sain sen siirtymään sinne minne halusin.
Itse olisin tehnyt tuon ohjauksen näin:
$user_url = $_SERVER['REQUEST_URI']; $user_url = strlower('$user_url'); header: ("Location: $user_url");
Miten sinä teit sen?
squid kirjoitti:
Itse olisin tehnyt tuon ohjauksen näin:
$user_url = $_SERVER['REQUEST_URI']; $user_url = strlower('$user_url'); header: ("Location: $user_url");
vai
$user_url = $_SERVER['REQUEST_URI']; $user_url = strlower($user_url); // ilman hipsuja, lainausmerkeilläkin toimisi, muttei mielestäni hipsujen kanssa header: ("Location: $user_url");
Tämä tosin voi johtaa loputtomiin uudelleen siirtoihin, jos käyttäjä kirjoittaakin oikeasti osoitteen ihan väärin.
Tämä vaatii selkeästi tarkistuksen, että kyseinen tuleva siirto todellakin onnistuu.
Oho... noh ei se mitään... en vain ole pahemmin kirjoitellut PHPtä pieneen hetkeen, niin unohtuvat tuommoiset pienet yksityiskohdat :S
Mutta, tarviiko siinä mitään sinänsä tarkistaa, sillä kun tuonne lähetetään, ja sitä ei löydy, niin se lyö 404 eteen?
Ja viilataan vielä pilkkua, eli strtolower on tuo funktio nimeltään :)
Papu kirjoitti:
Täytyisi tietyissä tilanteissa muuttaa käyttäjän kirjoittama url pieniksi kirjaimiksi ja lähettää edelleen.
Kuulostaa hommalta Apachen mod_spelingille (sic).
squid kirjoitti:
Mutta, tarviiko siinä mitään sinänsä tarkistaa, sillä kun tuonne lähetetään, ja sitä ei löydy, niin se lyö 404 eteen?
...jolloin avataan .htaccessin määrittelemä php-sivu, joka ottaa urlin, tekee sille strtolowerin. Tulosta ei jälleen kerran löydy, jolloin tulee uusi 404. Silloin avataan .htaccessin määrittelemä php-sivu...
Nojoo. Mod_speling varmaan hoitaa homman paremmin :)
Aihe on jo aika vanha, joten et voi enää vastata siihen.