ASP tip: K čemu jsou dobré serverové proměnné?

Píšete-li ASP skripty, můžete často s výhodou využít tzv serverové proměnné. Jedná se o zvláštní druh proměnných, kde se ukládají informace o klientovi i serveru.
Píšete-li ASP skripty, můžete často s výhodou využít tzv serverové proměnné. Jedná se o zvláštní druh proměnných, kde se ukládají informace o klientovi i serveru. Z ASP jsou tyto proměnné přístupné prostřednictvím kolekce Request.ServerVariables. Chcete-li například vypsat proměnnou LOGON_USER, můžete použít <%=Request.ServerVariables("LOGON_USER")%>.

Všechny proměnné můžete vypsat pomocí následujícího kódu:

<PRE>
  <%
  For Each Promenna In Request.ServerVariables
   Response.Write Promenna & " = "
   Response.Write Server.HtmlEncode(Request.ServerVariables(Promenna))
   Response.Write vbCrLf
  Next
  %>
  </PRE>
  

Význam řady proměnných je jasný z jejich názvu nebo obsahu, nicméně u některých se můžeme pozastavit blíže:

SCRIPT_NAME
Vrací relativní cestu k právě prováděnému skriptu, bez parametrů, od rootu serveru. Je-li URL například http://www.kdesi.cz/cosi.asp?query=string, hodnota proměnné bude /cosi.asp.

PATH_TRANSLATED
Vrací fyzickou cestu k právě prováděnému skriptu, typicky například C:\InetPub\WWWroot\default.asp. K převodu relativní na absolutní cestu je lepší používat Server.MapPath.

LOCAL_ADDR
Vrací IP adresu serveru, přesněji řečeno IP adresu, kterou požadoval klient.

SERVER_NAME
Vrací název serveru tak, jak jej požadoval klient. Pokud tedy klient šel na URL http://www.kdesi.cz/, bude obsahem této proměnné www.kdesi.cz.

SERVER_PORT
Vrací číslo portu, na kterém běží aktuální WWW server (standardně 80).

SERVER_PROTOCOL
Vrací typ protokolu, jakým byla stránka načtena, typicky HTTP/1.1.

HTTP_USER_AGENT
Jedna z nejzajímavějších serverových proměnných. Vrací typ prohlížeče, jeho verzi a operační systém, tedy například pro můj MSIE 5.0 beta 2 na Windows NT 4.0 vrátí Mozilla/4.0 (compatible; MSIE 5.0b2; Windows NT).

SERVER_SOFTWARE
Vrací název a verzi WWW serveru, tedy například Microsoft-IIS/4.0.

REQUEST_METHOD
Vrací metodu, jakou byl požadován aktuální skript, nejčastěji GET, při předávání hodnot některých formulářů PUT.

REMOTE_ADDR
Vrací IP adresu klientova počítače.

QUERY_STRING
Vrací část URL za otazníkem, tedy pro http://www.kdesi.cz/cosi.asp?prom1=val1&prom2=val2 vrátí prom1=val1&prom2=val2. Vhodná pro speciální případy (volání skriptu jako něco.asp?parametr), jinak je lepší používat kolekci Request.QueryString.

LOGON_USER
Pokud klient používá jinou identifikaci, než anonymní uživatel (u IIS standardně IUSR_jménostroje), je v této proměnné uloženo jméno tohoto uživatele, jinak je proměnná prázdná. Pokud si chcete vynutit přihlášení uživatele, můžete použít následující úsek kódu:

<%If Request.ServerVariables("LOGON_USER") = "" Then Response.Status = "401 Unauthorized"%>.
  
Pokud přistupujete k vlastnímu počítači, zareaguje MSIE při obdržení odpovědi 401 Unauthorized zasláním identifikace uživatele, pod kterým jste přihlášeni a teprve při druhém neúspěšném pokusu zobrazí okno pro přihlášení.

Jméno uživatele je vraceno ve formátu typickém pro Windows NT, tedy DOMÉNA\Uživatel. Jste-li přihlášen do domény CPINET jako uživatel Valasek, bude obsahem proměnné CPINET\Valasek. Pokud nejste přihlášen do domény, ale jenom ke svému počítači, bude místo domény uveden název vašeho stroje. Uživatel Altair na počítači RIDER tedy obdrží hodnotu RIDER\Altair.
  

Váš názor Další článek: VRML konsorcium mění jméno – doufejme, že nejen to

Témata článku: Software, Windows, Programování, Zvláštní význam, Zvláštní druh, Jasná odpověď, Neúspěšný počítač, Rider


Určitě si přečtěte

Externí SSD se může hodit. Je rychlé, malé zvenku, velké uvnitř a cena už se snese

Externí SSD se může hodit. Je rychlé, malé zvenku, velké uvnitř a cena už se snese

** Vyzkoušeli jsme rychlé externí SSD Samsung T5 ** Externí SSD je lepší než flešky i velké plotnové disky, většímu rozšíření doposud bránila především cena ** Samsung T5 zvládne i chytré šifrování a připojení k mobilu

David Polesný | 27

Google Cloud Next: Blíží se bitva o to, kdo ovládne cloud, tedy internet zítřka

Google Cloud Next: Blíží se bitva o to, kdo ovládne cloud, tedy internet zítřka

** Google v týdnu ukázal nové telefony Pixel ** V Londýně se ale také konal Google Cloud Next ** Konference o tom, jak bude vypadat internet v cloudu zítra

Jakub Čížek | 32

Google má nové telefony, počítač a domácí displej. Česko je stále mimo

Google má nové telefony, počítač a domácí displej. Česko je stále mimo

** Google dnes představil novinky ** Dočkali jsme se nového telefonu Pixel 3, tabletopočítače a domácího displeje ** Rozšíření Google Assistenta do dalších zemí se bohužel nekoná

David Polesný | 45

Velká podzimní aktualizace: Co nového teď najdete ve Windows 10

Velká podzimní aktualizace: Co nového teď najdete ve Windows 10

** Microsoft se opět snaží spojit telefony a počítače. ** Místo velkých novinek se zaměřil spíše na drobná vylepšení. ** Vyhledávání je konečně použitelné a hledá téměř všude.

Vladislav Kluska | 78

Roboruka se 100 let učila otočit kostičku. Skutečné A.I. se možná nikdy nedočkáme

Roboruka se 100 let učila otočit kostičku. Skutečné A.I. se možná nikdy nedočkáme

** Strojové učení v posledních deseti letech dokázalo divy ** Používáme ho dnes každý den nejen ve vyhledávači ** A přesto se člověku nepřibližuje ani náznakem

Jakub Čížek | 59

Porno insider: Jak virtuální realita vstupuje do filmů pro dospělé

Porno insider: Jak virtuální realita vstupuje do filmů pro dospělé

** Pornografie údajně představuje třetinu internetové obsahu a je technologický tahounem ** Do erotického obsahu postupně zasahuje i virtuální realita ** Kromě vizuálního vjemu se pracuje také na virtuálním uspokojení toho hmatového

Jan Dudek | 29

Nechali jsme dopadnout asteroid Ryugu na Prahu. Místo stověžatého města je pětikilometrový kráter

Nechali jsme dopadnout asteroid Ryugu na Prahu. Místo stověžatého města je pětikilometrový kráter

** Ryugu je blízkozemní planetka, která křižuje dráhu Země ** Její průměr je asi 900 metrů ** Co by se stalo, kdyby Ryugu dopadla na Zemi?

Petr Kubala | 5


Aktuální číslo časopisu Computer

Jak vytvořit a spravovat vlastní web

Velký test herních klávesnic a DVB-T2 tunerů

Vše o formátu RAW

Vybíráme nejlepší základní desku