Virtuális könyvtár

Egy URL több részből áll:

Az URL részei http://www.emma.hu:80/gb/gb.html

Ebből a /gb/ az a virtuális path, amelyhez a Webszerveren egy directory, vagy magyarul könyvtár tartozik. A Webszerver konfigurációjában szerepelnek virtuális könyvtárak, amelyek mindegyikáhez egy valódi, a diszken megtalálható könyvtár van rendelve. Például elképzelhető a következő konfiguráció:
Virtuális könyvtárhozzárendelt valódi könyvtár
//usr/users/httpd/html/
/cgi-bin//usr/users/httpd/cgi-bin/
/cgitut//usr/users/verhas/cgitut/source/cgi-bin/
/gabli//usr/users/gabli/public_html/
Amikor egy URL-t feldolgoz a Webszerver akkor az URL-ben megadott könyvtárat megkeresi a konfigurációban megadott virtuális könyvtárak között. Ha például a /gb/ könyvtárhoz a /usr/users/gabi/ könyvtár van rendelve, akkor a példabeli URL-hez (http://www.emma.hu:80/gb/gb.html) tartozó fájl, amelyiket a Webszervernek vissza kell küldenie a böngésző felé a /usr/users/gabi/gb.html. Persze az is lehet, hogy nincs /gb/ nevű virtuális könyvtár, ilyenkor a /, másnéven gyökér virtuális könyvtárhoz tartozó könyvtár alatt keresi a gb könyvtárat a Webszerver, és ha létezik, akkor a /usr/users/httpd/html/gb/gb.html fájlt küldi vissza a böngészőnek, ha pedig nem talál ilyent, akkor 404 Not found hibaüzenetet tartalmazó http választ ad.

Kérdés, hogy mi van akkor ha létezik mind a két fájl, azaz a /usr/users/gabi/gb.html is a megfelelő virtuális könyvtárral bekonfigurálva és a /usr/users/httpd/html/gb/gb.html is? Nos ez Web szerver függő, de ajánlott az ilyesmit elkerülni. Persze tesztelni, kipróbálni lehet, de ez változhat verziónként is, és ha egy rendszer úgy van konfigurálva, hogy az ilyen, általában nem garantált tulajdonságokat kihasználja, akkor egy verzióváltásnál fejreállhat az egész.


Verhás Péter Home Page . . . . . . CGI röviden, tartalomjegyzék