/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Problem med IIS ved flere sites i wwwroot
Fra : Kurt G


Dato : 23-07-09 13:31

Jeg vil gerne bruge IIS til flere sites og har anbragt dem således:
c:\Inetpub\wwwroot\Site1
c:\Inetpub\wwwroot\Site2
Ved brug af include filer giver det problemer; jeg skal skrive
<!--#include virtual="/Site1/funktioner.asp"-->
i stedet for
<!--#include virtual="/funktioner.asp"-->
for at IIS viser siden.
Men "/Site1" skal ikke med ved upload, da der jo ikke er noget dir. der
hedder "Site1" på www.
Det samme gør sig så også gældende flere steder i de forskellige funktioner,
og det vil give et for stort arbejde at skulle rette hver gangn man har fået
noget til at virke og vil uploade det!

Nu vil jeg gerne lave en variabel, som kan læses af alle sider og indsætte
"/Site1" eller "" afhændig af om det er på wwwroot eller www, siderne
afvikles!

Det skal sikkert være noget med global.asa, og der skal på en eller anden
måde detekteres på, hvor sitet kører, men det er også det eneste, som jeg i
øjeblikket fornemmer!

Er der tips at hente?

Mvh Kurt



 
 
Michael Weber (24-07-2009)
Kommentar
Fra : Michael Weber


Dato : 24-07-09 15:07

Kurt G wrote:
> Jeg vil gerne bruge IIS til flere sites og har anbragt dem således:
> c:\Inetpub\wwwroot\Site1
> c:\Inetpub\wwwroot\Site2
> Ved brug af include filer giver det problemer; jeg skal skrive
> <!--#include virtual="/Site1/funktioner.asp"-->
> i stedet for
> <!--#include virtual="/funktioner.asp"-->
> for at IIS viser siden.
> Men "/Site1" skal ikke med ved upload, da der jo ikke er noget dir.
> der hedder "Site1" på www.
> Det samme gør sig så også gældende flere steder i de forskellige
> funktioner, og det vil give et for stort arbejde at skulle rette hver
> gangn man har fået noget til at virke og vil uploade det!
>
> Nu vil jeg gerne lave en variabel, som kan læses af alle sider og
> indsætte "/Site1" eller "" afhændig af om det er på wwwroot eller
> www, siderne afvikles!
>
> Det skal sikkert være noget med global.asa, og der skal på en eller
> anden måde detekteres på, hvor sitet kører, men det er også det
> eneste, som jeg i øjeblikket fornemmer!
>
> Er der tips at hente?


Et sted at starte vil måske være i server-variablerne:
http://www.w3schools.com/asp/coll_servervariables.asp

"Returns the base portion of the URL":
Request.servervariables("url")

Den vil så returnerer det domænenavn,
derbliver requestet af klienten,
f.eks.: www.ditsite.dk

Vær dog opmærksom på
at, alt efter dns-opsætning, den
måske også returnerer _uden_ www,
altså returnerer ditsite.dk ,
hvis f.eks. klienten har indtastet http://ditsite.dk

Prøv at start med at lave en:
Response.Write Request.Servervariables("url")


:)


--
Ulige skal behandles ulige, for at være lige.
http://www.dubistterrorist.de/
Die Schöne neue Welt der Überwachung:
http://www.spiegel.de/media/0,4906,15385,00.swf



Christian Kragh (24-07-2009)
Kommentar
Fra : Christian Kragh


Dato : 24-07-09 17:55

> > Jeg vil gerne bruge IIS til flere sites og har anbragt dem således:
> > c:\Inetpub\wwwroot\Site1
> > c:\Inetpub\wwwroot\Site2
> > Ved brug af include filer giver det problemer; jeg skal skrive
> > <!--#include virtual="/Site1/funktioner.asp"-->
> > i stedet for
> > <!--#include virtual="/funktioner.asp"-->
> > for at IIS viser siden.
> > Men "/Site1" skal ikke med ved upload, da der jo ikke er noget dir.
> > der hedder "Site1" på www.
> > Det samme gør sig så også gældende flere steder i de forskellige
> > funktioner, og det vil give et for stort arbejde at skulle rette
hver
> > gangn man har fået noget til at virke og vil uploade det!
> >
> > Nu vil jeg gerne lave en variabel, som kan læses af alle sider og
> > indsætte "/Site1" eller "" afhændig af om det er på wwwroot eller
> > www, siderne afvikles!
> >
> > Det skal sikkert være noget med global.asa, og der skal på en eller
> > anden måde detekteres på, hvor sitet kører, men det er også det
> > eneste, som jeg i øjeblikket fornemmer!
> >
> > Er der tips at hente?

Det kan du ikke gøre...

Grunden:
Der kørers altid SSI før der køres ASP.
default.asp indeholder:
--------------------------------------------------
<!--#include virtual="/funktioner.asp"-->
Du er på Default.asp
<%= now() %>
--------------------------------------------------

Filen funktioner.asp indeholder
--------------------------------------------------
Dette er Funktioner.asp siden
--------------------------------------------------

Den færdige side før udførelse af ASP:
--------------------------------------------------
Dette er Funktioner.asp siden
Du er på Default.asp
<%= now() %>
--------------------------------------------------

Den færdige side efter udførelse af ASP:
--------------------------------------------------
Dette er Funktioner.asp siden
Du er på Default.asp
2009-09-09 12:34:52
--------------------------------------------------

Derfor kan du ikke bruge variabler til include af sider som foreslået.

> Et sted at starte vil måske være i server-variablerne:
> http://www.w3schools.com/asp/coll_servervariables.asp
>
> "Returns the base portion of the URL":
> Request.servervariables("url")
>
> Den vil så returnerer det domænenavn,
> derbliver requestet af klienten,
> f.eks.: www.ditsite.dk
>
> Vær dog opmærksom på
> at, alt efter dns-opsætning, den
> måske også returnerer _uden_ www,
> altså returnerer ditsite.dk ,
> hvis f.eks. klienten har indtastet http://ditsite.dk
>
> Prøv at start med at lave en:
> Response.Write Request.Servervariables("url")

Jeg ville lave et ny webscoop (en ny server med ny WWWRoot) og så kører
den på port 81, 82, 83 eller en anden du har ledig.

Så kører du site1 på localhost, site2 på localhost:81, site3 på
localhosdt:82 ect.

Christian

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Michael Weber (24-07-2009)
Kommentar
Fra : Michael Weber


Dato : 24-07-09 19:12

Christian Kragh wrote:
>>> Jeg vil gerne bruge IIS til flere sites og har anbragt dem således:
>>> c:\Inetpub\wwwroot\Site1
>>> c:\Inetpub\wwwroot\Site2
>>> Ved brug af include filer giver det problemer; jeg skal skrive
>>> <!--#include virtual="/Site1/funktioner.asp"-->
>>> i stedet for
>>> <!--#include virtual="/funktioner.asp"-->
>>> for at IIS viser siden.
>>> Men "/Site1" skal ikke med ved upload, da der jo ikke er noget dir.
>>> der hedder "Site1" på www.
>>> Det samme gør sig så også gældende flere steder i de forskellige
>>> funktioner, og det vil give et for stort arbejde at skulle rette
>>> hver gangn man har fået noget til at virke og vil uploade det!
>>>
>>> Nu vil jeg gerne lave en variabel, som kan læses af alle sider og
>>> indsætte "/Site1" eller "" afhændig af om det er på wwwroot eller
>>> www, siderne afvikles!
>>>
>>> Det skal sikkert være noget med global.asa, og der skal på en eller
>>> anden måde detekteres på, hvor sitet kører, men det er også det
>>> eneste, som jeg i øjeblikket fornemmer!
>>>
>>> Er der tips at hente?
>
> Det kan du ikke gøre...
>
> Grunden:
> Der kørers altid SSI før der køres ASP.
> default.asp indeholder:

Korrekt.

Og man kan så tvinge SSI til at blive
afviklet efter asp:

if something then
%><!--#include virtual="/funktioner.asp"--><%
else
%><!--#include virtual="/andreFunktioner.asp"--><%
endif

Eller?

--
Ulige skal behandles ulige, for at være lige.
http://www.dubistterrorist.de/
Die Schöne neue Welt der Überwachung:
http://www.spiegel.de/media/0,4906,15385,00.swf



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste