Avatar billede alstrup Nybegynder
14. september 2003 - 23:02 Der er 26 kommentarer og
2 løsninger

IIS på XP - problemer med at køre noget kode.

Jeg sidder med min IIS på WXP og har nogle problemer med at få den til at afvikle lidt kode

Det kan sagtens lade sig gøre at få IIS til at afvikle asp sider indeholdende ssi, men hvis jeg sætter flg. kode ind så kommer siden aldrig frem.

<%
' Variabler
Dim fso, f, filespec

' Find den fysiske placering af folderen
filespec = Server.Mappath("/dan/asdf.asp")

' FileSystem objektet
Set fso = CreateObject("Scripting.FileSystemObject")

' File objektet
Set f = fso.GetFile(filespec)

' Find og skriv egenskaberne
Response.Write "<h1>Filen: " & filespec & "</h1>"
Response.Write "<p>Blev oprettet: " & f.DateCreated
Response.Write "<p>Er sidst redigeret: " & f.DateLastModified
Response.Write "<p>Og fylder " & f.Size & " bytes"
%>

Jeg forstår ikke hvad der er galt, kan det være noget jeg ikke har sat ordentligt op i min iis, (jeg har lige installeret den og er ret nybegynder indenfor iis.
hvis jeg uploader siden til min webhoteludbyder, er der ingen
problemer.....


Venligst Dan
Avatar billede nmh Nybegynder
14. september 2003 - 23:32 #1
Jeg har lige testet din asp-side, og den virker helt uden problemer.
Jeg valgte først en fil i samme katalog som asp-siden.

Du bør skrive "dan/asdf.asp" og undgå "/dan/asdf.asp".
Så fik jeg det til at virke.
Avatar billede medions Nybegynder
14. september 2003 - 23:34 #2
Hvis du har Norton antivirus installeret, så prøv at slå den fra og se om dit script så virker!

-Hvis det gør det er det fordi du skal ha' slået VBScript protection fra i Norton Antivirus!

//>Rune
Avatar billede nmh Nybegynder
14. september 2003 - 23:39 #3
Min kommentar skulle have været et svar.

Det er muligt dit problem skyldes det Medions siger, men jeg får fejl, hvis jeg bruger /dan/....
og det virker, når jeg skriver dan/...
Avatar billede alstrup Nybegynder
15. september 2003 - 10:15 #4
Til nmh!
Jeg har forsøgt at fjerne / som du foreslog, og det virkede ikke. Hvis jeg fjerner / på min webudbyders server, vil filen slet ikke åbne og jeg er da også ret sikker på at den skal være der da den ellers vil mangle imellem serverroden og mappenavnet. (jeg prøvede det selvfølgelig også med min Norton slået fra.)

Til medions!
Jeg bruger Norton, men det hjalp ikke at slå den fra.


Når jeg uploader siden til min webudbyder (buydomains) virker siden fint. men hvis jeg kører den selvsamme side på min lokale iis sker der intet - ingen fejlmeddelelse, eller noget, IE står bare og forsøger at åbne siden.

Håber at nogen kan hjælpe mig

Venligst Dan
Avatar billede nmh Nybegynder
15. september 2003 - 10:18 #5
Jeg må indrømme, jeg også ville have troet / skulle være der, men mit eksempel virkede først, da jeg fjernede den.
Prøv med en fil i samme katalog som din asp-side, så der nu står: filespec = Server.Mappath("asdf.asp")
Avatar billede alstrup Nybegynder
15. september 2003 - 10:29 #6
Det er nu prøvet, og heller ikke det hjalp.
Jeg er ret sikker på at det er noget med iis på min maskine, for hvis jeg prøver fra buydomains servere, så virker det fint.
Avatar billede nmh Nybegynder
15. september 2003 - 10:31 #7
Mon du har sat dit katalog op som et virtuelt katalog til IIS?
Avatar billede alstrup Nybegynder
15. september 2003 - 10:38 #8
Nu er det lige jeg blev tabt...
Jeg er ret novice mht. iis så hvis der skal gøres noget specielt for at få det til at kunne køre netop den slags scripts, så har jeg ikke gjort det.
Det skal siges at hvis jeg skriver: http://computernavn/fil.asp så åbnes den fil jeg reguester, men det er den specifikke kode der får iis til at stoppe.
Jeg har andre filer der bruger noget kode, som godt kan åbnes: fx. "include" af en anden fil i dokumentet.
Avatar billede nmh Nybegynder
15. september 2003 - 10:44 #9
Dvs du har ellers ingen problemer med at få dine asp-sider til at køre?
Prøv så at skrive den komplette sti til din fil. Altså f.eks.:
filespec = "d:\minfil\kat1\dan\asdf.asp"
(det vil så ikke køre hos din webudbyder, men måske på din egen maskine)
Avatar billede alstrup Nybegynder
15. september 2003 - 10:49 #10
Det har jeg forsøgt, og det vil heller ikke virke.
Jeg må indrømme jeg er bare stået totalt af, of aner overhovedet ikke hvad der kan være galt.
Har installeret iis, efter anvisning på html.dk - http://html.dk/tutorials/asp/lektion2.asp
koden er også fra dem - http://html.dk/tutorials/asp/lektion14.asp

hvis der så bare kom en fejlmeddelelse, men det gør der ikke. IE står bare og forsøger at åbne siden.......
Avatar billede nmh Nybegynder
15. september 2003 - 10:57 #11
har du prøvet at starte således
localhost/fil.asp
Avatar billede nmh Nybegynder
15. september 2003 - 11:03 #12
Du kunne evt. hente den seneste version af VBscript, hvis du ikke har den installeret:
http://msdn.microsoft.com/downloads/default.aspx
Avatar billede alstrup Nybegynder
15. september 2003 - 11:39 #13
Heller ikke det hjalp.
og hvis jeg bare skriver "localhost" så kommer der en IIS standard side frem
Avatar billede nmh Nybegynder
15. september 2003 - 12:29 #14
Nu har jeg prøvet at køre dit script på min egen maskine med IIS installeret. Og så her gik det galt med den første '/', men ellers virker det som det skal.
Prøv at lave et nyt virtuelt katalog.
Gå ind i kontrolpanelet vælg administration.
Åben Internet Information Services.
Nu kan du administrere IIS.
Højreklik på Standardwebsted og vælg ny.
Og tilføj så et katalog et eller andet sted på din maskine som et virtuelt katalog.
Hvis du giver det aliasnavnet kat1, Så vil en asp-side i dette katalog startes således:
localhost/kat1/minside.asp

Kunne det tænkes, at du ikke har givet anonym adgang til brugere (mappesikkerhed i din standardwebserver).
Avatar billede alstrup Nybegynder
15. september 2003 - 19:11 #15
Jeg har lavet en virtuel mappe, det hjalp ikke.
Der er anonym adgang, og desuden kan jeg jo godt åbne andre filer med kode. Det er bare her der går noget galt
Jeg har fx. ingen problemer med flg.
<%
Response.Write "This is a test ASP page."
%>
Så hvor fejlen helt nøjagtigt ligger aner jeg ikke.
Jeg har forsøgt af/geninstallation. installation af alt incl. ftp, mail, osv. men intet har hjulpet.
Jeg kan simpelthent ikke få det til at virke.
Hvordan kan man se en evt, logfil af hvad der sker?
Avatar billede nmh Nybegynder
15. september 2003 - 22:20 #16
Prøv et andet lille program, er bruger filsystemobjektet:
<%Option Explicit
Dim fso, MyFile
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.CreateTextFile("D:\kat1\testfile.txt", True)
MyFile.WriteLine("This is a test.")
MyFile.Close
%>
Det kræver at alle har skriverettigheder det pågældende sted
(her d:\kat1)
Avatar billede alstrup Nybegynder
16. september 2003 - 18:27 #17
Det giver da i det mindste en fejlmeddelelse:
Tekniske oplysninger (for supportteknikere)

Fejltype:
Der opstod en Microsoft VBScript-kompileringsfejl (0x800A0400)
En sætning var ventet
/test2.asp, line 9
Option Explicit
Avatar billede nmh Nybegynder
16. september 2003 - 19:02 #18
Du har vist skrevet andet end det jeg foreslog.
Det var meningen din asp-fil kun skulle indeholde
<%Option Explicit
Dim fso, MyFile
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.CreateTextFile("D:\kat1\testfile.txt", True)
MyFile.WriteLine("This is a test.")
MyFile.Close
Response.write("Det gik godt")
%>

Du har taget mere med siden der står noget om linie 9.
Option Explicit kan du godt fjerne. Jeg sætter det altid for at lette fejlfinding. Når denne ordre er med kræves at alle variable er erklæret  i en dim-sætning. Det mindsker fejlene, og siden vil ogås køre en lille smule bedre.
Avatar billede alstrup Nybegynder
16. september 2003 - 19:16 #19
Jeg har selvfølgelig et par html koder med head+body og det. ellers ikke noget
Så har jeg ændret d: til c: (d: er cdrom hos mig) og en ny sti. ellers ikke noget. - kopieret direkte over.
jeg har nu forsøgt en fil med kun flg. indhold:
<%Option Explicit
Dim fso, MyFile
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.CreateTextFile("c:\inetpub\wwwroot\testfile.txt", True)
MyFile.WriteLine("This is a test.")
MyFile.Close
Response.write("Det gik godt")
%>
Og intet andet, heller ikke head, body eller noget.
Samme resultat. ingen fejlmeddelelse eller noget. Den ståe bare og forsøger at åbne siden......
Avatar billede nmh Nybegynder
16. september 2003 - 21:55 #20
Det er som om Filsystemobkektet giver problemer.
Det ville være interessant at se om du heller ikke kan køre de tilsvarende VBscript-programmer.
Prøv at tage koden, du startede spørgsmålet med. Fjern <% og %>.
Erstat Response.write med MsgBox
Gem som en fil med navnet test.vbs.
Nu kan du køre dette program, ved blot at klikke på ikonet.
Avatar billede alstrup Nybegynder
16. september 2003 - 22:05 #21
hvilket så giver mig flg. fejlmeddelelse:
script:    C:\inetpub\wwwroot\test.vbs
Linje:    2
Tegn:      1
Fejl:      Et objekt er obligatorisk: 'server'
Kode:      800A01A8
Kilde:    Der opstod en Microsoft VBScript-kørselsfejl

Jeg brugte flg kode:
Dim fso, f, filespec
filespec = Server.Mappath("/test.asp")
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFile(filespec)
Response.Write "<h1>Filen: " & filespec & "</h1>"
Response.Write "<p>Blev oprettet: " & f.DateCreated
Response.Write "<p>Er sidst redigeret: " & f.DateLastModified
Response.Write "<p>Og fylder " & f.Size & " bytes"
Avatar billede nmh Nybegynder
16. september 2003 - 22:10 #22
min fejl, jeg glemte at der skal rettes noget mere.
Men du må ikke have response.write.
I VBscript direkte på maskinen skal du skrive msgbox istedet.
Så kommer der en boks op med udskriften.
2 sek, så kommer jeg med en yderligere rettelse.
Avatar billede alstrup Nybegynder
16. september 2003 - 22:20 #23
Jeg rettede - Server.Mappath - til den direkte sti, til filen.
Og Response.Write til Msgbox
Så kunne jeg sagtens køre den, og den kom med det hele i fire efterfølgende meddelelsesbokse.....
Så umiddelbart er problemet ikke VBScript på systemet generelt, men i IIS...
Avatar billede nmh Nybegynder
16. september 2003 - 22:22 #24
Dette VBscript burde kan køre, hvis du lige retter fil-henvisningen til Filespec:
'Variabler
Dim fso, f, filespec

' Find den fysiske placering af folderen
filespec = "d:\test-mappe\Tlfliste\chkdsk.vbs"

' FileSystem objektet
Set fso = CreateObject("Scripting.FileSystemObject")

' File objektet
Set f = fso.GetFile(filespec)

' Find og skriv egenskaberne
MsgBox "Filen: " & filespec
MsgBox "Blev oprettet: " & f.DateCreated
MsgBox "Er sidst redigeret: " & f.DateLastModified
MsgBox "Og fylder " & f.Size & " bytes"
Avatar billede alstrup Nybegynder
16. september 2003 - 22:33 #25
Jeg fik postet før du kom med dit nye script.
Dette her virkede:
Dim fso, f, filespec
filespec = ("c:/inetpub/wwwroot/test.asp")
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFile(filespec)
msgbox "<h1>Filen: " & filespec & "</h1>"
msgbox "<p>Blev oprettet: " & f.DateCreated
msgbox "<p>Er sidst redigeret: " & f.DateLastModified
msgbox "<p>Og fylder " & f.Size & " bytes"
-------------
Html koderne stod bare ogsp i boksen som skrift.
Avatar billede nmh Nybegynder
16. september 2003 - 22:37 #26
det er ret mystisk, at du ikke kan køre dette på din lokale Webserver. Jeg vil tænke mere over det.
Avatar billede alstrup Nybegynder
19. september 2003 - 08:33 #27
Tja, så blev mit problem løst.
Jeg kan desværre ikke sige hvad det var, men må konstaterer at det hjalp men en geninstallation af hele maskinen.........
Jeg har fået meget hjælp og er blevet meget klogere, så poinys uddeles i forholdet 80/20 for indsatsen med at indkredse problemet.
nmh 80 point
medions 20 points.
(er nogen utilfredse så skriv lige, så kan vi finde ud af det)

Venligst, og tak for al den nye viden
Dan
Avatar billede nmh Nybegynder
19. september 2003 - 16:36 #28
Nå, det var da godt, "der kom hul på bylden" med en geninstallation. Der må åbenbart værer gået noget galt i forbindelse med filsystemobjektet, men det har været en ret mystisk affære. Som jeg plejer at sige: Vi arbejder i et område kendetegnet ved, at det ikke skal være for let. :o)

Takker for point.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester