Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    php 4 come modulo e php 5 cgi su porta dedicata

    Ciao,

    innanzitutto utilizzo: server apache 2.0.59, php 4.4.3 / 5.1.14 su windows xp sp2 build 2600

    ho installato utilizzando l'articolo molto completo di questo sito, php 4 come modulo.
    Vorrei ,come riportato nel manuale utilizzare php4 e far convivere php5 come CGI su porta dedicata (localhost:81 ad esempio), per fare esperimenti con le nuove funzionalità del 5 e testare in real time differenze php4/5

    Ho inserito il seguente codice nel httpd.conf


    Port 80
    Listen 80
    <VirtualHost *>
    ServerName localhost
    ServerAdmin admin@localhost
    DirectoryIndex index.php
    DocumentRoot "C:/Programmi/Apache Group/Apache/htdocs"
    ScriptAlias /cgi-bin/ "C:/Programmi/php5/"
    Action php5-script /cgi-bin/php-cgi.exe
    AddHandler php5-script .php5
    </VirtualHost>
    Listen 81
    <VirtualHost *:81>
    ServerName localhost
    ServerAdmin admin@localhost
    DirectoryIndex index.php
    DocumentRoot "C:/Programmi/Apache Group/Apache/htdocs"
    ScriptAlias /cgi-bin/ "C:/Programmi/php5/"
    Action php5-script /cgi-bin/php-cgi.exe
    AddHandler php5-script .php .php5
    </VirtualHost>


    Purtroppo con questo metododo, apache non parte piu' (uso apache 2.0.59)
    invece utilizzando il metodo di php5 come CGI solamente, e rinominando i file php da testare in php5, inserendo in httpd.conf il seguente codice:

    ScriptAlias /php5-cgi/ "c:/PHP5/"
    AddHandler php5-script .php5
    Action php5-script /php5-cgi/php-cgi.exe

    funziona bene.

    A me pero' serve la soluzione con la porta dedicata, almeno non devo rinominare i file in php5, ed e' un casino, capite?

    mi chiedo:

    qualche parametro scorretto? io ho controllato e ricontrollato
    va tolto lo scriptalias del CGI se uso il metodo del virtualhost, oppure vanno mantenuti entrambi i codici che ho postato?
    il parametro serveradmin forse? ma non credo!
    eventualmente potete postarmi l'esempio dell'httpd.conf corretto?

    grazie molte per il vostro eventuale aiuto e ciao!

    Oscar

  2. #2
    premettendo che non sono molto esperto nell'ambito del config...

    mi pare che dove hai configurato apache per usare tutti e due i php hai inserito i parametri solo per il php5... in duplice copia :S
    Nicolò "Remotes" Lucia
    "the 449257th penguin"
    PHP - GNU/Linux - modding
    "Long Live Aslan... and Merry Christmas!!!" [cit.]

  3. #3
    Grazie dell'aiuto, la guida pero' dice testualmente:

    Il trucco consiste nel configurare un virtualhost su un' altra porta, così da separare in modo sicuro le due modalità di interpretazione (CGI e modulo integrato nel webserver), utilizzando comunque lo stesso ambiente (stesso webserver e stessa document_root).

    Il trucco consiste nel configurare un virtualhost su un' altra porta, così da separare in modo sicuro le due modalità di interpretazione (CGI e modulo integrato nel webserver), utilizzando comunque lo stesso ambiente (stesso webserver e stessa document_root).

    Per ottenere questo risultato possiamo scrivere in fondo al file di configurazione di Apache, quanto segue:

    Port 80
    Listen 80
    <VirtualHost *>
    ServerName localhost
    ServerAdmin me@localhost
    DirectoryIndex index.php
    DocumentRoot "C:/Programmi/Apache Group/Apache/htdocs"
    ScriptAlias /cgi-bin/ "C:/PHP5/"
    Action php5-script /cgi-bin/php-cgi.exe
    AddHandler php5-script .php5
    </VirtualHost>
    Listen 81
    <VirtualHost *:81>
    ServerName localhost
    ServerAdmin me@localhost
    DirectoryIndex index.php
    DocumentRoot "C:/Programmi/Apache Group/Apache/htdocs"
    ScriptAlias /cgi-bin/ "C:/PHP5/"
    Action php5-script /cgi-bin/php-cgi.exe
    AddHandler php5-script .php .php5
    </VirtualHost>
    ovviamente io non sono espertissimo, quindi siamo in due, forse php4 essento integrato come modulo non ha bisogno della parte iniziale, forse dovrei inserire il codice partendo da
    [...] listen 81 che ne pensi?

    pero' questo codice si riferisce appunto all'uso di php4 come modulo e php come cgi, su porta dedicata, quindi non credo vadano parametri per il php4 nel virtualhost, boh!

  4. #4
    Stavo riflettendo, ravanando nel file di conf di apache ho visto un modulo interessante:

    forse devo abilitare il modulo in httpd.conf decommentandolo? :

    #LoadModule vhost_alias_module modules/mod_vhost_alias.so ?

  5. #5
    Originariamente inviato da Remotes
    premettendo che non sono molto esperto nell'ambito del config...

    mi pare che dove hai configurato apache per usare tutti e due i php hai inserito i parametri solo per il php5... in duplice copia :S

    ho inserito solo :

    Listen 81
    <VirtualHost *:81>
    ServerName localhostdelphp5suporta81
    ServerAdmin iosottoscritto@localhost
    DirectoryIndex index.php
    DocumentRoot "C:/miadocument_root"
    ScriptAlias /cgi-bin/ "C:/PHP5/"
    Action php5-script /cgi-bin/php-cgi.exe
    AddHandler php5-script .php .php5
    </VirtualHost>

    e infatti ora il motore del php 4 gira sul localhost
    mentre il php5 gira su localhost:81

    perfetto!

    chiedo scusa se ho postato senza prima cercare bene nel forum, ho visto altri 3d simili, ma in nessuno ho trovato una soluzione adatta.

    Ciao

  6. #6
    pero' ragazzi anche se ho risolto il problema, io sono un po' pignolo e vorrei capire come mai il codice postato nella guida non funziona, (quello che c'e all'inizio del tread che ho postato)
    non vorrei che mi stesse funzionando, a mo' di... funziona ma non so perche'! finche va lasciamolo andare, anche perchè devo installare tutte le librerie di PEAR e non vorrei succedessero casini.

    Ciaooo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.