webForumDet fria alternativet

Skillnad på Server.Mappath remote och lokalt?

ASP

9 svar · 346 visningar · startad av peppar

Medlem sedan dec. 2001873 inlägg
Frågan#1

Skall öppna en databas och anger sökvägen till databasen med

Server.MapPath("/katalog/fil.mdb")

Fungerar grejt lokalt...
Men när jag skicar upp allt till servern (dataphone) så hittar den inte databasen ... Hur kan detta vara, någon som har erfarenhet av detta...?

Medlem sedan apr. 20031 660 inlägg
#2

HEJ!

Eftersom du har en absolut sökväg (går från webbroten) borde det fungera. Men, eftersom det inte gör det, är det endast att skriva ut variabeln, och lista ut hur servern är inställd.
Jag vet inte hur virtuella webbar påverkar detta exempelvis.

Medlem sedan dec. 2001873 inlägg
#3

Lokalt har jag sökvägen

f:\katalog\siteroot\[b]databaskatalog[/b]

remote har jag

d:\katalog\katalog\siteroot\den_publika_katalogen\[b]databaskatalog[/b]
Medlem sedan nov. 20017 144 inlägg
#4

Strunta i Server.MapPath då?

Medlem sedan dec. 2001873 inlägg
#5

... och hårdkoda sökvägarna menar du?

Eftersom sökvägarna ser olika ut och jag testar lokalt och vill kunna testa remote så hur skall jag göra då? typ

if ip=xxx.xx.x.xx then 
   sökväg såhär
else
   sökväg på detta sätt
end if

eller finns det andra sätt?

Medlem sedan nov. 2002830 inlägg
#6

Testa följande:

<%
        Respone.Write(Server.MapPath("/katalaog/db.mdb"))
%>

Då får du den exakta sökvägen dit utskriven. Därefter underlättar dessutom för felsökning :)

Medlem sedan dec. 2001873 inlägg
#7

Sasch-> Det är det som hag gjort i exemplet ovan... Det spelar ingen roll om jag hårdkoar sökvägarna heller, det verkar just nu som om det vore något annat fel.

Medlem sedan juni 200032 967 inlägg
#8

Felmeddelande?

Medlem sedan dec. 2001873 inlägg
#9

Jag får ju inget... Dom har ju stängt av det (tror jag) men det jag får ser ut såhär...

 Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, and inform them of the time the error occurred and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Supporten sa att mina "server.mappath" måste börja med en slash för att den skall hitta in i mitt "virtual directory" och sedan katalogen jag vill in i, men fick inte sökvägarna att stämma då... Till jag tog bort slashen i början och vips... då fungerar det att hårdkoda databasöppnandet i varje fil jag vill öppna databsen i.

Men nu kan jag inte använda

include [b]virtual[/b] (som jag haft databasöppnaren i) utan får använda include [b]file[/b]

Är det skillnad på ASP versioner eller något sådant?

Medlem sedan apr. 20031 660 inlägg
#10

HEJ!

Virtual utgår från webbroten, file kan gå utanför densamma.
Dock, på W2003 går inte det att göra så, där kan man endast gå i samma webbplats-mapp. (Ev går det att ändra i IIS:en, men standard är såhär.)

Hur virtuella mappar påverkar ovanstående har jag ingen kunskap om.

263 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)