Newsgroup: it.comp.programmare
Titolo: Diversi usi di PYTHON

Buonasera a tutti, sono nuovo in questo gruppo e vorrei chiedere: 
Python si può usare per fare delle pagine web e creare anche dei programmi eseguibili, è vero?
Python si può integrare con pagine PHP?
Grazie

 Grazie
 
Prego.
 
 
Ciao  Manlio

Intanto ti ringrazio Manlio per la risposta.
Intendevo dire:
- Con pyton posso creare dei file ".exe" da eseguire in sistemi operaitivi windows che non hanno python?
- posso inserire codice python in pagine web che contengono php?

 - posso inserire codice python in pagine web che contengono php?
 
In genere Python non si usa in quella maniera ci si fa restituire il 
contenuto della pagina da un programma completo, chiamato usando 
CGI/FCGI o più comunemente secondo WSGI.
 
A rigore neanche il codice PHP è "nelle pagine web", ma è l'interprete 
PHP che accetta di elaborare soltanto i frammenti contenuti dai tag di 
apertura e chiusura. Secondo me PHP avrebbe da guadagnere 
dall'abbandono di questa politica, ma l'incompatibilità col codice 
attuale sarebbe netta e totale e immagino che oramai sia una strada 
difficile da seguire.
 
 
-- 
Andrea
 

 
 
Beh, aspetta..
PHP può girare sia attraverso un'estensione del webserver (che richiama
l'inteprete prima dell'output verso il client) sia tramite CGI (alla "vecchia
maniera") sia tramite FCGI (ovvero come long-living application).
Di solito si usa la prima strada per vari motivi, ma niente vieta di usare
un'architettura di sistema diversa.
 
Ciao!

 un'architettura di sistema diversa.
 
Certo, difatti uso lighttpd+fcgi, ma i file .php mantengono la stessa 
struttura con il codice incluso nei tag di apertura e chiusura.
Il codice PHP non è "nelle pagine web" ma nei file sorgente 
indipendentemente da dove gira l'interprete, se un processo autonomo o 
un thread del server web o altro (non conosco bene il funzionamento di 
mod_php di Apache).
 
-- 
Andrea
 

 - posso inserire codice python in pagine web che contengono php?
 
Una pagina web o contiene codice PHP o contiene codice Python, altrimenti 
il web browser non saprebbe che handler usare per eseguire il codice.
 
Comunque si, con Python è possibile eseguire codice all'interno di una 
pagina web come con PHP, anche se non è considerata buona pratica e non è 
supportato dai tools moderni.
 
Il metodo raccomandato è tramite WSGI, che è un protocollo per la 
comunicazione tra server web ed applicazione Python.  I dettagli di come 
WSGI è implementato variano; leggi la documentazione relativa al web 
server che usi (o servizio di hosting).
 
 
Ciao  Manlio

Grazie anche a te Manlio

Grazie Manlio

 
 
mod_php non fa niente di più strano di tutti gli altri moduli di apache (ma
di qualsiasi altro modulo di altri webserver, se è per questo): registra un
po' di hooks (una decina) che vengono richiamati dal webserver a seconda
dello stato della richiesta; il fatto che una richiesta PHP vada in fork,
su un thread o blocchi tutto dipende solo dalla configurazione generale del
webserver.
FCGI è una buona idea, ma è meno performante (giusto perché di solito è
un incubo sistemare i lock, sia manualmente che per gli interpreti, e in caso
di un bug va fatto ripartire, cosa che in certi sistemi significa ritirare su
interprete e thread pool all'interno di una richiesta mettendo in wait tutte
le altre) e ha bisogno di più attenzione nelle configurazioni (se usi un
modulo vale la configurazione generale). Se si usa bene però è sicuramente
la soluzione migliore, IMO.
 
Ciao!