Jag har installerat php på min server + mysql och MyPhpAdmin. Nu vill jag bara få igång CGI, och hur gör man det må tro?
Få igång cgi på servern?
28 svar · 787 visningar · startad av wunderbaren
Jag vill kunna köra .pl på min server.
Då är det Perl som du ska använda, och ActivePerl är enkelt och lätt. :)
Okej, har installerat det nu. Vart ska man lägga sina .pl filer?
Vad kör du för OS och webbserver? Windows 200x och IIS eller?
precis! 2003
Då skall installationen av ActivePerl sköta de associationer som behövs i IIS (webbservern i windows). Lägg .pl-filerna någonstanns bland "hemsides-filerna" (var spelar ingen roll så länge som du inte ändrar några default-inställningar) och anropa den via webbläsaren.
Windows install notes.
När jag söker efter filen via webbläsare så står det bara att den inte finns...varför?
Det låter som du använder IE med default-inställningen "Visa egna HTTP-felmeddelanden". Avaktivera det under menyn Verktyg->Internet-alternativ->Fliken Avancerat->långt ner i listan "Visa egna HTTP-felmeddelanden" (avmarkera). Det är steg 1 för att få ett felmeddelande som verkligen säger något. Sedan kan det vara så att scriptet inte är riktigt rätt konfigurerat eller rent av att det innehåller fel som gör exekveringen avslutas. Ett vanligt helloworld-script kan se ut så här:
#!/usr/bin/perl
print "Content-type:text/html\n\nHello world\n";
Första raden är en s.k. shebang och används egentligen inte av IIS men den gör ingen skada där.
Nästa steg är att kolla i log-filen för deb aktuella webb-platsen och se om IIS rapporterar något fel. Var den ligger ställer du in i IIS konsol-panel (Internet services manager) genom att bläddra fram till aktuell webbplats, ta egenskaper titta under första fliken "web site", se till att "enable logging" är markerat och under "properties" ser du var filen sparas. (Med reservation för skillnader i språk och version).
Kan du köra PHP-script så borde det inte vara några bekymmer med rättigheter vilket annars kan vara en möjlig felorsak.
(Flyttar tråden till IIS-forumet)
Det låter som du använder IE med default-inställningen "Visa egna HTTP-felmeddelanden".
Det gör ja inte...
Nästa steg är att kolla i log-filen för deb aktuella webb-platsen och se om IIS rapporterar något fel.
Den kollar fel, men vet inte vad jag ska göra med dom?
wunderbaren skrev:
Det gör ja inte...
Och du får en 404 (resursen finns inte)? Det låter skumt... Du är säker på att du anger rätt URL? Ligger servern publikt så att du kan länka till den?
wunderbaren skrev:
Den kollar fel, men vet inte vad jag ska göra med dom?
Du menar att logg-filen rapporterar fel? I så fall vad rapporteras i den. Det underlättar att hitta felet.
Du fråga kanske, men ligger verkligen perl-mappen under den aktuella webbplatsen? Om du lägger en "test.html" i den, hittar du den då?
Kan du köra Perlprogram via kommandotolken, t.ex.?
Jag har inte fattat vad det är. Hur gör màn?
Startmenyn->Kör-> "cmd" [enter]
Navigera dig fram till stället där du har scriptet ligger.
c:\>cd \katalog\där\du\har\scriptet\ligger [enter]
c:\>cd \katalog\där\du\har\scriptet\ligger\>perl.exe scriptnamn.pl [enter]
...här kommer output från scriptet...
Det funkade alledes utmärkt!!
Om du då tittar i IIS-konsolen, markerar aktuell webbplats, högerklickar, väljer egenskaper väljer fliken "home directory"(eller motsvarande), klickar "Configuration..." under "Application settings", bläddrar ner till extension ".pl", markera, klicka "edit" har du då C:\Program\Perl\bin\perl.exe "%s" %s (motsvarande din sökväg till perl) och "Script engine" markerad? (samma reservation för språk och version)