Newsgroup: it.comp.lang.perl
Titolo: Problema basilare

Sto iniziando a scrivere script in Perl e trovo alcune difficolta':
uso Win 98, ho installato APache e MS Personal Web Server per vedere il sito
in locale.
Ho scritto un codice semplicissimo, giusto per provare:
print("Content-type: text/html\n\n\n");
print("Hello World\n");
Ho creato il file 
primo.pl
 nella sottodir cgi-bin e ho fatto un form che
come ACTION richiama questo file con ="cgi-bin/
primo.pl
"
Ho settato il Web server per le cgi mettendo la riga
ScriptAlias /cgi-bin/ "C:/Documenti/WebSite/cgi-bin/"
<Directory "C:/Documenti/WebSite/cgi-bin">
    AllowOverride None
    Options None
</Directory>
 in APACHE nel file httpd.conf.
Identicamente in PWS ho creato la directory virtuale cgi-bin e l'ho
abilitata a lettura, esecuzione e script.
Quando provo a premere il submit ottengo i seguenti errori:
Con APACHE:
Internal Server Error
The server encountered an internal error or misconfiguration and was unable
to complete your request.
Please contact the server administrator, ...
E nel file error.log:
[Mon Nov 13 18:57:13 2000] [error] [client 127.0.0.1] (2)No such file or
directory: couldn't spawn child process: c:/documenti/website/cgi-bin/
fun.pl
Con PSW l'errore e'
HTTP Errore 405
405 Metodo non consentito.
Non è possibile utilizzare il metodo specificato nella riga di richiesta per
la risorsa indicata. Controllare che sia installato il tipo MIME corretto
per la risorsa desiderata.
Se il problema persiste, contattare l'amministratore
Visto che il problema mi sembra basilare vi chiedo cortesemente aiuto.
Grazie anticipatamente.
Marco.

Ho anch'io lo stesso problema e ho il sospetto che il problema sia dovuto al
settaggio dei permessi ma io in locale non sono riuscito a settarli (sono
abituato con cute ftp che con il tasto destro...). Per il momento sto usando
un programmino come perl builder che però non è proprio la stessa cosa.
Ciao
                                      Alessio



print("Hello World\n");
Qual è ESATTAMENTE lo script e dove è l'eseguibile del perl: Apache su 
Windows è parecchio pedante con i path degli script, se il path non è 
corretto e completo (.exe compreso) non riesce a trovare l'eseguibile.
-- 
Roberto Lupi
|[ Work:     
http://www.lupex.net/
 ]|
|[ Personal: 
http://www.lupi.ws/
   ]|
Vendesi Citroen BX 1600 Station Wagon, L. 1.800.000 --> 
http://www.lupi.ws/

Lo script e' esattamente e semplicemente quello che ho riportato
print("Content-type: text/html\n\n\n");
print("Hello World\n")
forse e' troppo poco perche' funzioni?Ho bisogno anche in Win dello sharp bang
come in Unix?
Il Perl si trova in c:\Programmi\Perl\bin\perl.exe
dove devo settare Apache perche' funzioni correttamente il Perl?
Grazie per la risposta.
Marco.




dove devo settare Apache perche' funzioni correttamente il Perl?
Apache per Win può essere impostato per eseguire i CGI:
a) leggendo il path dell'interprete dalla prima linea come in Unix
 -- oppure --
b) utilizzando l'associazione del registry
Se vuoi usare il primo metodo, devi inserire
#!c:\Programmi\Perl\bin\perl.exe
come prima linea del tuo script.
-- 
Roberto Lupi
http://www.lupex.net/
	<-- Work
http://www.lupi.ws/
	<-- Personal (Italian)