Come impostare quale Apache / PHP 10.6 dovrebbe essere eseguito?

3

Tutti i miei problemi derivavano dal tentativo di ottenere mcrypt per PHP installato. La scorsa notte ho ceduto e ha seguito un tutorial su come fare un apache2 completamente nuovo e installazione php5.3.3. L'ho fatto usando MacPorts.

Purtroppo, non ho abilitato mcrypt per me la scorsa notte, anche se ero abbastanza contento di aver ottenuto 5.3.3 in esecuzione. :)

Il problema è che mi sono svegliato stamattina per scoprire che la mia versione php è tornata alla 5.3.1, il che può significare solo che OS X è tornato ai miei Apache e PHP originali.

Come posso dire a OS X di utilizzare il software che ho installato tramite MacPorts?

(E poi farò una nuova domanda su come abilitare mcrypt)

    
posta ed209 26.08.2010 - 11:42
fonte

3 risposte

4

Non è tanto la tua versione di Apache / PHP che è stata ripristinata, ma solo la versione sbagliata è stata caricata.

Se hai abilitato il Web Sharing di Mac OS X, abiliterà automaticamente la versione di Apache e PHP. Apple fornisce l'utilizzo di LaunchDaemon org.apache.httpd.plist in /System/Library/LaunchDaemons (questo sovrascriverà la versione di MacPorts). Dovrai disabilitare questa funzione disattivando la condivisione sul Web nel riquadro delle preferenze di condivisione o eseguendo sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist .

Quando hai installato Apache per MacPorts ha installato un LaunchDaemon in /Library/LaunchDaemons che, se attivato, avvierà automaticamente la versione MacPorts di Apache. Per abilitarlo esegui sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist e sei fuori per le gare.

Se stai eseguendo apachectl per riavviarti, assicurati di aver selezionato la versione corretta. Potrebbe essere necessario modificare il tuo $ PATH per avere /opt/local/apache2/bim prima di /usr/sbin

Per quanto riguarda la versione di PHP utilizzata; sulla riga di comando questo dipenderà dal tuo $ PATH mentre per Apache è interamente nella tua configurazione di dove si trova il modulo libphp5. ( /etc/apache2/ per la versione integrata, /opt/local/apache2/conf per la versione MacPorts installata)

    
risposta data 26.08.2010 - 22:51
fonte
1

Hai due soluzioni:

  1. Devi modificare la variabile globale PATH per aggiungere le cartelle MacPort all'inizio. Contiene l'ordine delle cartelle che il sistema utilizza per trovare i binari.
  2. Esegui il backup dei binari originali (in /usr/bin , /bin , ...), quindi aggiungi i collegamenti simbolici ai file binari MacPorts.

Normalmente, non utilizzare opzione 2 finché non sai veramente cosa stai facendo. L'ho appena menzionato perché è tecnicamente possibile.

Per modificare la variabile globale PATH , modifica il file /etc/paths , aggiungi /opt/local/bin all'inizio e infine riavvia per applicare le modifiche.

Puoi controllare, dopo il riavvio, che le modifiche sono state apportate eseguendo il seguente comando:

echo $PATH

Dovresti vedere /opt/local/bin appena prima di /usr/bin:/bin:… .

    
risposta data 26.08.2010 - 21:40
fonte
1

Perché OS X deve sapere quale Apache usare? Esegui da solo l'Apache corretto. Apri Terminale, cd nella directory MacPorts contenente l'Apache corretto (probabilmente /opt/something/something/something/Apache2/bin o qualcosa di simile) ed eseguilo (probabilmente qualcosa come ./httpd ).

    
risposta data 26.08.2010 - 15:18
fonte

Leggi altre domande sui tag