Configurazione perl per apache2

Installazione, configurazione e uso di Ubuntu come server: web, ftp, mail, news, proxy, dns e altro.
Scrivi risposta
orsomannaro
Prode Principiante
Messaggi: 6
Iscrizione: martedì 1 marzo 2011, 13:05

Configurazione perl per apache2

Messaggio da orsomannaro »

Ho installato ubuntu server 10.4 selezionando anche i pacchetti in
oggetto, creando in sostanza un server LAMPP.

- Ho verificato perl su apache2:

#a2enmod perl
Module perl already enabled

- Ho copiato in /var/www un software scritto in perl assegnando utente e
gruppo www-data e permessi 755

- Secondo quanto specificato dagli autori del software, ho abilitato il
virtual host cosi':

#cat /etc/apache2/sites-available/mysoft

Alias /mysoft/ /var/www/mysoft/


AddHandler cgi-script .pl
Options ExecCGI Includes FollowSymlinks



Order Deny,Allow
Deny from All



Il problema e' che andando su http://server/mysoft i file .pl non vengono
eseguiti ma il browser (firefox/chromium) propone di scaricarli.


Qualcuno mi puo' aiutare?
Grazie
Avatar utente
ReMichael
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4042
Iscrizione: venerdì 30 novembre 2007, 22:02

Re: Configurazione perl per apache2

Messaggio da ReMichael »

Hai abilitato mod_cgi?
orsomannaro
Prode Principiante
Messaggi: 6
Iscrizione: martedì 1 marzo 2011, 13:05

Re: Configurazione perl per apache2

Messaggio da orsomannaro »

ReMichael ha scritto: Hai abilitato mod_cgi?
si

# a2enmod cgi
Module cgi already enabled

Se creo un file cgi questo viene interpretato correttamente dal browser.
Se creo un file .pl questo viene correttamente eseguito da console, ma non dal browser.

Io credo sia una questione di permessi apache2 da settare in maniera corretta, perche' ritengo si possa presupporre che selezionando i pacchetti in fase di installazione di ubuntu, la configurazione di base di apache2 per mysql/php/perl sia automatica e corretta ...
Avatar utente
ReMichael
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4042
Iscrizione: venerdì 30 novembre 2007, 22:02

Re: Configurazione perl per apache2

Messaggio da ReMichael »

si

# a2enmod cgi
Module cgi already enabled

Se creo un file cgi questo viene interpretato correttamente dal browser.
Se creo un file .pl questo viene correttamente eseguito da console, ma non dal browser.

Io credo sia una questione di permessi apache2 da settare in maniera corretta, perche' ritengo si possa presupporre che selezionando i pacchetti in fase di installazione di ubuntu, la configurazione di base di apache2 per mysql/php/perl sia automatica e corretta ...
i permessi mi pare li hai settati in maniera corretta. ho fatto una prova veloce aggiungendo un virtualhost:

Codice: Seleziona tutto

<VirtualHost *:80>
   ServerName provaperl
   DocumentRoot /var/www/perl

   <Directory /var/www/perl>
      AllowOverride all
      AddHandler cgi-script .pl
      Options -MultiViews ExecCGI FollowSymLinks
      Order allow,deny
      Allow from all
   </Directory>
</VirtualHost>
proprietario e gruppo www-data, permessi 755 e mi funziona senza problemi.

Le differenze rispetto alla tua configurazione mi sembrano minime.. io ho creato un vhost in httpd e come vedi non ho specificato alias.. ho specificato in più allow e deny.

Prova anche a controllare i log nel caso, anche se non avendo nessun tipo di errore dubito che ci sia scritto qualcosa di interessante
orsomannaro
Prode Principiante
Messaggi: 6
Iscrizione: martedì 1 marzo 2011, 13:05

Re: Configurazione perl per apache2

Messaggio da orsomannaro »

Intanto grazie
ReMichael ha scritto: io ho creato un vhost in httpd e come vedi non ho specificato alias..
Qui ho un dubbio:
creare un vhost in httpd intendi un file in /etc/apache2/sites-available/ abilitato poi con a2ensite o altro?
Avatar utente
ReMichael
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4042
Iscrizione: venerdì 30 novembre 2007, 22:02

Re: Configurazione perl per apache2

Messaggio da ReMichael »

orsomannaro ha scritto: Intanto grazie
ReMichael ha scritto: io ho creato un vhost in httpd e come vedi non ho specificato alias..
Qui ho un dubbio:
creare un vhost in httpd intendi un file in /etc/apache2/sites-available/ abilitato poi con a2ensite o altro?
no, intendo inserire proprio un virtualhost nel file httpd.conf. Io sono solito togliere il site di default e impostare tutti i vhosts in httpd.conf.. però è una scelta, va bene sia usare httpd.conf che utilizzare i sites
orsomannaro
Prode Principiante
Messaggi: 6
Iscrizione: martedì 1 marzo 2011, 13:05

Re: Configurazione perl per apache2

Messaggio da orsomannaro »

ReMichael ha scritto: no, intendo inserire proprio un virtualhost nel file httpd.conf. Io sono solito togliere il site di default e impostare tutti i vhosts in httpd.conf.. però è una scelta, va bene sia usare httpd.conf che utilizzare i sites
Ho creato un site inserendo la configurazioni che hai testato tu, ma niente.

Ho provato poi a disabilitare il site default, e noto che cosi' facendo il browser pare vietare l'accesso a tutta la DocumentRoot.
Ho pensato che e' default site possa contenere restrizioni sull'esecuzione di script, ma anche fosse credo che queste verrebbero annullate dalla configurazione del site in perl ...
Avatar utente
ReMichael
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4042
Iscrizione: venerdì 30 novembre 2007, 22:02

Re: Configurazione perl per apache2

Messaggio da ReMichael »

orsomannaro ha scritto: Ho creato un site inserendo la configurazioni che hai testato tu, ma niente.

Ho provato poi a disabilitare il site default, e noto che cosi' facendo il browser pare vietare l'accesso a tutta la DocumentRoot.
Ho pensato che e' default site possa contenere restrizioni sull'esecuzione di script, ma anche fosse credo che queste verrebbero annullate dalla configurazione del site in perl ...
Io farei questa prova: come hai già provato, togli il site default e temporaneamente anche altri eventuali sites abilitati. Metti il virtualhost come l'ho scritto io nel file httpd.conf (aggiustando servername e path), restarta apache e vedi se così funziona.

Perché non mi torna il fatto che togliendo il default site non ti fa accedere.. io nel virtualhost ho specificato allow e deny e questi dovrebbero evitare appunto il problema.
orsomannaro
Prode Principiante
Messaggi: 6
Iscrizione: martedì 1 marzo 2011, 13:05

Re: Configurazione perl per apache2

Messaggio da orsomannaro »

ReMichael ha scritto: Io farei questa prova:
ora provo

Intanto ho provato a installare un programma perl da repository:

apt-get install otrs2

e tutto funziona a dovere... pertanto apache e perl sono ok.
orsomannaro
Prode Principiante
Messaggi: 6
Iscrizione: martedì 1 marzo 2011, 13:05

Re: Configurazione perl per apache2

Messaggio da orsomannaro »

ReMichael ha scritto: Io farei questa prova: come hai già provato, togli il site default e temporaneamente anche altri eventuali sites abilitati. Metti il virtualhost come l'ho scritto io nel file httpd.conf (aggiustando servername e path), restarta apache e vedi se così funziona.
500 Internal Server Error

ReMichael ha scritto: Perché non mi torna il fatto che togliendo il default site non ti fa accedere.. io nel virtualhost ho specificato allow e deny e questi dovrebbero evitare appunto il problema.
Mi correggo: collegandomi a http://MYIP/ vedo il messaggio "It works!" di apache, mentre collegandomi su http://MYIP/perl ho il su citato errore.


Inoltre:

# cat /var/www/test.pl
#!/usr/bin/perl
print "Hello World.\n";
# chown www-data:www-data /var/www/test.pl
# chmod 755 /var/www/test.pl
# /var/www/test.pl
Hello World.

ma http://MYIP/test.pl mi chiede se voglio scaricare test.pl
Idem con patate se invece metto il file nella directory /var/www/test e creo un site.
Ultima modifica di orsomannaro il mercoledì 2 marzo 2011, 14:25, modificato 1 volta in totale.
Avatar utente
ReMichael
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4042
Iscrizione: venerdì 30 novembre 2007, 22:02

Re: Configurazione perl per apache2

Messaggio da ReMichael »

L'errore ti esce perché prima della print devi mettere:

Codice: Seleziona tutto

print "Content-type: text/html\n\n";
Scrivi risposta

Ritorna a “Ubuntu su server”

Chi c’è in linea

Visualizzano questa sezione: Majestic-12 [Bot] e 3 ospiti