Olen pitkään miettinyt, että millä tekniikalla on tehty sellaiset internet-sivut tai lähinnä internet-palvelut, joissa erisivuilla ei ole minkäänlaista tiedostopäätettä?
Jos kehtaan veikata, niin tarkoitat sivuja kuten esimerkiksi ohjelmointiputkan keskustelu (https://www.ohjelmointiputka.net/keskustelu/). Eikös ton voi toteuttaa vaa luomalla kansion keskustelu ja sijoittamalla index-tiedoston sekaan? :o
No siis esimerkiksi kun menee osuuspankinsivuille, niin etusivu on tälleen
"https://www.op.fi/op" ja kun vaihdentaan sivua niin se menee tälleen esim. "https://www.op.fi/op?sivu=true". Normaallisti se menee vaikka "https://www.op.fi/op.php?sivu=true"...
Ainakin J2EE-maailmassa saa tehtyä URL-mappingejä eli saa laittaa jonkun resurssin osoitteeksi melkeinpä mitä vaan.
Veikkaisin OP:n olevan juuri J2EE:tä.
Apachen kanssa mod_rewritellä voi tehdä yhtä jos toista.
Taitaa olla Apachen sisältöneuvottelu kyseessä. Mod_rewritea tähän ei tarvita.
Asiaan liittyen vanha mutta hyvä artikkeli:
http://www.w3.org/Provider/Style/URI#remove
URI:n tiedostopäätteellä ei periaatteessa ole mitään merkitystä. Selaimen avatessa URI:n http
://www.esimerkki.fi/polku/tiedosto?abc=123
se vain lähettää HTTP-hakemuksen
GET /polku/tiedosto?abc=123 HTTP/1.1 Host: www.esimerkki.fi ...
palvelimelle www.esimerkki.fi
. HTTP-palvelin voi tehdä merkkijonolla /polku/tiedosto?abc=123
aivan mitä huvittaa, kunhan se loppujenlopuksi vastaa HTTP-hakemukseen asianmukaisella sisällöllä - esimerkiksi:
HTTP/1.1 200 OK ... Content-Type: text/html; charset=UTF-8 ... <html>Tämä on ohjelman "tiedosto" tuottamaa tekstiä parametrin abc arvolla 123.</html>
Tiedostoa tiedosto
tai kansiota polku
ei tarvitse edes olla olemassa missään todellisessa tiedostojärjestelmässä. Sisällön hakeminen tiedostoista todellisen tiedostonnimen avulla on tietysti hyvin looginen tapa toteuttaa HTTP-palvelin. Samoin tiedostopäätteet ovat looginen tapa kertoa tiedostopohjaiselle HTTP-palvelimelle, mitä tiedostoilla tehdään: ohjelmatiedostot (*.php
, *.cgi
, ...) ajetaan ja palautetaan niiden tuloste, muiden tiedostojen sisältö palautetaan sellaisenaan asianmukaisella HTTP-sisältötyyppiheaderilla varustettuna (esim. kuville Content-Type: image/xxx
).
Oikeiden tiedostonnimien tai loogisten tiedostopäätteiden käyttö ei kuitenkaan ole välttämätöntä. Domainia seuraava URI:n osa voi olla vaikka Morse-koodia tai jpg-tiedostopäätteen takaa voi löytyä CGI-ohjelma, joka tulostaa (toimivan) Flash-sivun.
jmp kirjoitti:
Taitaa olla Apachen sisältöneuvottelu kyseessä. Mod_rewritea tähän ei tarvita.
Riitti lisätä .htaccess-tiedostoon "Options MultiViews", niin sain tuon toimimaan omilla sivuillani. Mukavan helppoa. :)
Aihe on jo aika vanha, joten et voi enää vastata siihen.