Jag skulle vilja att en automatisk säkerhetskopiering sker på servern varje dag vid ett visst klockslag. Därför försökte jag med detta:
<%
if time = cDate("11:25:00") then
set fso = createObject("scripting.fileSystemObject")
datum = "2002-11-15"
fso.copyFile "rätt sökväg", "rätt sökväg" & datum & ".txt"
else
%>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<%
response.write "Nej"
%>
Detta funkar inte som det skall, filen kopieras inte. Om jag däremot skapar en länk som jag klickar på så fungerar det. Mao så har jag rätt sökväg och rättigheterna på webhotellet är rätt ställda. Vad är fel? :q
Det är det grundläggande tänket som brister i din metod.
ASP-filer körs enbart när en klient anropar själva filen, alltså besöker din ASP-sida. Därmed kan man inte skapa en ASP-fil och tro att den skall köras vid det datumet du specat, såvida ingen besöker den vid just det tidslaget. Och den sannolikheten är ganska promilleartad antar jag. Och givetvis fungerar det när du skapar en länk, som du säger, för då besöker ju du sidan.
Det du måste göra är att placera denna kod i t.ex. en .vbs-fil eller en .exe-fil och skapa en schemalagda aktivitet i Windows som kör filen. Annars kommer det inte att ske.
En vbs-fil kan ser ut som följande (det skall inte vara några <% eller %> i en sådan):
(Jag kommenterar bort if-satsen, eftersom den är onödig då den schemalagda aktiviteten ändå bara körs vid ett speciellt tillfälle.)
set fso = createObject("scripting.fileSystemObject")
datum = "2002-11-15"
fso.copyFile "rätt sökväg", "rätt sökväg" & datum & ".txt"
Jag såg att du utelämnat server. framför ditt createobject-anrop. I VB eller vbs är det rätt att göra så, men i ASP, skall man helst ange server.createobject(...).
En variant kan ju vara att scriptet triggas när någon besöker sidan och kollar om det finns en säkerhetskopia och när den är skapad.
Är den inte färsk nog => skapa en ny.
En variant kan ju vara att scriptet triggas när någon besöker sidan och kollar om det finns en säkerhetskopia och när den är skapad.
Är den inte färsk nog => skapa en ny.
Visserligen, men man måste nog räkna lite på besöksfrekvensen lite då också.
Besöker ingen sidan, så körs aldrig någon backup. Besöker någon sidan nångång ibland, då får du en inkonsistens i backup-rutinen. Plus att besökaren inte skall bli lidande av att din backup körs i t.ex. global.asa och väntetid blir resultatet.
Nej, schemalägg aktiveten istället så sköts det av Windows, ännu bättre, gör det med en .exe-fil så att det körs utanför IIS:en så att du slipper onödig belastning på webbtjänsterna.
267 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9