Apache + mod_perl => niet werkend

Pagina: 1
Acties:
  • 130 views sinds 30-01-2008
  • Reageer

  • SyS_ErroR
  • Registratie: Juni 2002
  • Nu online
Ik probeer nu al 2 dagen mod_perl werkend te krijgen onder Apache. Ik heb onder andere de search al gebruikt (die vele topics mbt mod_perl gaf; maar die niet bleken te werken bij mij)

Allereerst het doel --> AWStats fatsoenlijk laten werken. Aangezien dit geschreven is in Perl, heb ik mod_perl nodig.

AWStats genereert (dmv een batch file die elke 30 min wordt uitgevoerd) braaf index.html (zoals te zien valt in www.syserror.nl/awstats) Echter; je kan bij sommige pagina's ook nog een "full list" opvragen. Hierbij moet Apache via mod_perl dat genereren.

Echter laat Apache dan gewoon de source zien, ipv dat hij hem verwerkt. Het logische om te denken is dan, dat mod_perl niet correct is geinstalleerd. Aangezien dit volgens mij wél zo is (maar het absoluut niet zeker weet) leek het openen van een topic hier mij wel gepast.

ik heb zowel de tutotial gevolgt die hier te vinden is ( http://www.devside.net/web/server/windows/mod-perl ). Alswel de install-guide die gewoon op apache.org te vinden is.

Mijn server signature geeft inmiddels ookal vrolijk aan dat mod_perl is geinstalleerd ( Apache/2.0.48 (Win32) mod_perl/1.99_17 Perl/v5.8.4 Server at www.syserror.nl Port 80 ).

Voor de volledigheid:
Apache 2.0.48 onder Windows 2000 Professional + SP4 (httpd conf http://www.syserror.nl/httpd.conf te vinden)
mod_perl-1.99_17
ActivePerl-5.8.4.810-MSWin32-x86 (wordt dus gebruikt om momenteel de statische pagina elke 30 minuten te genereren)
AWStats 6.1 (latest Stable)

Volgens mij doe ik slechts iets heel kleins verkeerd, maar wat dat nou precies is; geen idee :P...

[ Voor 4% gewijzigd door SyS_ErroR op 04-11-2004 17:58 ]


  • we_are_borg
  • Registratie: September 2000
  • Laatst online: 25-08 21:28

we_are_borg

You will Comply

Volgens mij staat dit verkeerd #!/usr/bin/perl

Je draait op Windows dus dit moet wel zo staan dat het een Windows installatie betreft #!/usr/bin/perl slaat in dit geval op Linux.

[ Voor 60% gewijzigd door we_are_borg op 04-11-2004 18:01 ]

You need the computing power of a P1, 16 MB RAM and 1 GB Harddisk to run Win95. It took the computing power of 3 Commodore 64 to fly to the Moon. Something is wrong here, and it wasn't the Apollo.


  • SyS_ErroR
  • Registratie: Juni 2002
  • Nu online
er staat een hekje voor, dan is het toch een comment (oftewel, perl doet daar nix mee)... of haal ik nu allerlei programmeertalen door elkaar? :|
edit:
Zoals ik al vermoedde, geen effect..

[ Voor 16% gewijzigd door SyS_ErroR op 04-11-2004 18:05 ]


  • we_are_borg
  • Registratie: September 2000
  • Laatst online: 25-08 21:28

we_are_borg

You will Comply

SyS_ErroR schreef op 04 november 2004 @ 18:02:
er staat een hekje voor, dan is het toch een comment (oftewel, perl doet daar nix mee)... of haal ik nu allerlei programmeertalen door elkaar? :|
Normaal gesproken betekent een # comment behalve de eerste regel in een perl script. Waarom dit is weet ik niet, ik weet alleen dat het goed moet staan om de perl te laten werken.

Volgens mij moet het c:\Perl\bin zijn i.p.v. c:/Perl/Bin

[ Voor 7% gewijzigd door we_are_borg op 04-11-2004 18:10 ]

You need the computing power of a P1, 16 MB RAM and 1 GB Harddisk to run Win95. It took the computing power of 3 Commodore 64 to fly to the Moon. Something is wrong here, and it wasn't the Apollo.


  • SyS_ErroR
  • Registratie: Juni 2002
  • Nu online
hmmz.. Het werkt nog steeds niet...
combinaties die ik geprobeerd heb -->

code:
1
#!c:/Perl/bin/



code:
1
#!c:\Perl\bin\



code:
1
#!c:/Perl/bin/perl.exe



code:
1
#!c:\Perl\bin\perl.exe


*dus zowel met als zonder executable, en zowel met / en \... ik weet dat het officieel \ zo moet, maar aangezien dit toch een Linux script is wat onder Windows moet werken, moeten de slashes in sommige gevallen de andere kant uitstaan*.. :)

  • seeKo
  • Registratie: November 2002
  • Laatst online: 26-01 09:37
Probeer die dan eens zonder # en !

  • we_are_borg
  • Registratie: September 2000
  • Laatst online: 25-08 21:28

we_are_borg

You will Comply

Deze hoort #!c:\Perl\bin\ goed te zijn het lijkt wel of het bestands type .pl herkent wordt.
Probeer eens een test script ff in de handleiding kijken is iets met hello world als die ook niet werk dan is Perl niet goed geinstalleerd.

You need the computing power of a P1, 16 MB RAM and 1 GB Harddisk to run Win95. It took the computing power of 3 Commodore 64 to fly to the Moon. Something is wrong here, and it wasn't the Apollo.


  • SyS_ErroR
  • Registratie: Juni 2002
  • Nu online
hello world draait inderdaad ook niet goed... .pl wordt wel herkend overigens :)
het probleem is alleen --> hoe moet het dan wel?! *gefrustreerd raakt..*

overigens wat ik net las in de FAQ van AWStats
FAQ-SET100 : I SEE PERL SCRIPT'S SOURCE INSTEAD OF ITS EXECUTION
PROBLEM:
When I try to execute the Perl script through the web server, I see the Perl script's source instead of the HTML result page of its execution !
SOLUTION:
This is not a problem of AWStats but a problem in your web server setup. awstats.pl file must be in a directory defined in your web server to be a "cgi" directory, this means, a directory configured in your web server to contain "executable" files and not to documents files. You have to read your web server manual to know how to setup a directory to be an "executable cgi" directory (With IIS, you have some checkbox to check in directory properties, with Apache you have to use the "ExecCGI" option in the directory "Directive").
owkee.. nu gaan we uitvissen hoe we dat gaan doen... :P

[ Voor 6% gewijzigd door SyS_ErroR op 04-11-2004 18:18 ]


  • we_are_borg
  • Registratie: September 2000
  • Laatst online: 25-08 21:28

we_are_borg

You will Comply

SyS_ErroR schreef op 04 november 2004 @ 18:18:
hello world draait inderdaad ook niet goed... .pl wordt wel herkend overigens :)
het probleem is alleen --> hoe moet het dan wel?! *gefrustreerd raakt..*

overigens wat ik net las in de FAQ van AWStats

[...]


owkee.. nu gaan we uitvissen hoe we dat gaan doen... :P
Hello World dient eerst goed te draaien als die werkt dan komt de rest van zelf. Hello World is speciaal er bij geleverd om te kijken of alles goed geinstalleerd is.

Ik weet dat in de meuktracker een pakket stond die je kon installeren waar gelijk Apache, Perl, PHP en MySQL in zit. Als je die neemt werk alles gelijk. Misschien dat dit een oplossing is.

You need the computing power of a P1, 16 MB RAM and 1 GB Harddisk to run Win95. It took the computing power of 3 Commodore 64 to fly to the Moon. Something is wrong here, and it wasn't the Apollo.


  • SyS_ErroR
  • Registratie: Juni 2002
  • Nu online
Ik weet dat in de meuktracker een pakket stond die je kon installeren waar gelijk Apache, Perl, PHP en MySQL in zit. Als je die neemt werk alles gelijk. Misschien dat dit een oplossing is.
Liever niet, wil graag de controle houden over wat k installeer etc. (vooral ook omdat er een MySQL Database voor oa een forum draait etc.

Ik ga nu prullen met Hello World..... :Y)

  • we_are_borg
  • Registratie: September 2000
  • Laatst online: 25-08 21:28

we_are_borg

You will Comply

SyS_ErroR schreef op 04 november 2004 @ 18:24:
[...]


Liever niet, wil graag de controle houden over wat k installeer etc. (vooral ook omdat er een MySQL Database voor oa een forum draait etc.

Ik ga nu prullen met Hello World..... :Y)
Wel zo pakket is even handig om te kijken hoe het geinstallerd staat later kan je het handmatig doen.

You need the computing power of a P1, 16 MB RAM and 1 GB Harddisk to run Win95. It took the computing power of 3 Commodore 64 to fly to the Moon. Something is wrong here, and it wasn't the Apollo.


  • SyS_ErroR
  • Registratie: Juni 2002
  • Nu online
Afbeeldingslocatie: http://www.syserror.nl/GoT/apache_restart.JPG
hmm.. als ik hello world op de manier uitvoer zoals in die tutorial staat beschreven krijg ik een reeks error waar ik geen touw aan vast kan maken? :| :(..
Hoezo vragen naar een file die imho nix met helllo.pl te maken heeft..


We Are Borg -> zo'n idee had ik ookal, maar daar ben ik niets wijzer van geworden

[ Voor 75% gewijzigd door SyS_ErroR op 04-11-2004 18:38 ]


  • SyS_ErroR
  • Registratie: Juni 2002
  • Nu online
Owkee.. we boeken vooruitgang (ahum.. :P)
inmiddels heb ik de file RequestRec.pm in een andere dir gevonden, hierna vroeg Apache/Mod_Perl whatever om de file XSLoader.pm

nadat ik deze ook in de correcte map had geplaatst komt dit weer tevoorschijn :X
Afbeeldingslocatie: http://www.syserror.nl/GoT/apache_error2.JPG

  • SyS_ErroR
  • Registratie: Juni 2002
  • Nu online
Owkee.. meer een workaround dan een oplossing..
Ik had als idee om behalve index.html ook de rest van het hele pakker statisch te laten genereren..

Als ik dan in mn batch file de option -staticlinks meegaf (eerst wist ik niet eens waar die voor diende) dan had ik gewoon .html files, ipv gebruik via mod_perl

de gebruikte code
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
@echo off
perl awstats.pl -config=syserror.nl -update -staticlinks -output > index.html
perl awstats.pl -config=syserror.nl -update -output=alldomains -staticlinks > awstats.syserror.nl.alldomains.html
perl awstats.pl -config=syserror.nl -update -output=allhosts -staticlinks > awstats.syserror.nl.allhosts.html
perl awstats.pl -config=syserror.nl -update -output=lasthosts -staticlinks > awstats.syserror.nl.lasthosts.html
perl awstats.pl -config=syserror.nl -update -output=unknownip -staticlinks > awstats.syserror.nl.unknownip.html
perl awstats.pl -config=syserror.nl -update -output=alllogins -staticlinks > awstats.syserror.nl.alllogins.html
perl awstats.pl -config=syserror.nl -update -output=lastlogins -staticlinks > awstats.syserror.nl.lastlogins.html
perl awstats.pl -config=syserror.nl -update -output=allrobots -staticlinks > awstats.syserror.nl.allrobots.html
perl awstats.pl -config=syserror.nl -update -output=lastrobots -staticlinks > awstats.syserror.nl.lastrobots.html
perl awstats.pl -config=syserror.nl -update -output=urldetail -staticlinks > awstats.syserror.nl.urldetail.html
perl awstats.pl -config=syserror.nl -update -output=urlentry -staticlinks > awstats.syserror.nl.urlentry.html
perl awstats.pl -config=syserror.nl -update -output=urlexit -staticlinks > awstats.syserror.nl.urlexit.html
perl awstats.pl -config=syserror.nl -update -output=browserdetail -staticlinks > awstats.syserror.nl.browserdetail.html
perl awstats.pl -config=syserror.nl -update -output=osdetail -staticlinks > awstats.syserror.nl.osdetail.html
perl awstats.pl -config=syserror.nl -update -output=unknownbrowser -staticlinks > awstats.syserror.nl.unknownbrowser.html
perl awstats.pl -config=syserror.nl -update -output=unknownos -staticlinks > awstats.syserror.nl.unknownos.html
perl awstats.pl -config=syserror.nl -update -output=refererse -staticlinks > awstats.syserror.nl.refererse.html
perl awstats.pl -config=syserror.nl -update -output=refererpages -staticlinks > awstats.syserror.nl.refererpages.html
perl awstats.pl -config=syserror.nl -update -output=keyphrases -staticlinks > awstats.syserror.nl.keyphrases.html
perl awstats.pl -config=syserror.nl -update -output=keywords -staticlinks > awstats.syserror.nl.keywords.html
perl awstats.pl -config=syserror.nl -update -output=errors404 -staticlinks > awstats.syserror.nl.errors404.html


Niet geheel de bedoeling, maar desondanks ben ik toch blij dat het zó wel werkt :)
Pagina: 1