web-dev-qa-db-fra.com

Comment utiliser le php qui brasse installé?

Sur mon mac, j'ai installé php et je fonctionne bien. J'ai récemment voulu installer mcrypt, donc je l'ai fait en utilisant brew. Bien qu'il semble s'installer correctement, il n'apparaît pas dans mon phpinfo (). Je pense donc que le php qui a installé mcrypt dans brew n'est pas le php qu'Apache utilise.

Est-ce que quelqu'un sait comment je peux:

  1. vérifier s'il y a une différence entre le php installé par brew et le php qu'Apache utilise?
  2. faire Apache utiliser le php qui brasse installé?

Tous les conseils sont les bienvenus!

43
kramer65

Vous devez obliger votre Apache à utiliser le PHP que vous venez de télécharger.

  • Ouvrez votre httpd.conf (le mien est à /etc/Apache2/httpd.conf) et recherchez la ligne qui charge le module PHP, quelque chose comme:

    LoadModule php5_module path/to/php

  • Ensuite, indiquez la PHP qui a été installée pour vous avec le support mcrypt. La mienne était à ce chemin. La vôtre peut varier en fonction de la PHP version qui vous avez installé.

    /usr/local/Cellar/php54/5.4.21/libexec/Apache2/libphp5.so

  • Enfin, vous devrez redémarrer votre serveur Apache pour charger la nouvelle configuration:

    Sudo apachectl restart

44
Manuel Pedrera

Je ne peux pas encore commenter stackoverflow en raison de mon manque d'expérience, mais ajouter à la réponse ci-dessus est correct. Juste un commentaire supplémentaire pour trouver le bon chemin:

courir:

brew info php54

ou quelle version que vous ayez installée et il vous montrera le chemin:

To enable PHP in Apache add the following to httpd.conf and restart Apache:
    LoadModule php5_module    /usr/local/opt/php54/libexec/Apache2/libphp5.so
27
AnthonyT

Je créerais un alias pour que vous ne dérangiez pas le système PHP install.

brew info php71

Brew s'installe dans /usr/local/Cellar pour pouvoir ajouter les éléments suivants à votre ~/.bash_alias ou ~/.profile.

alias php7='/usr/local/Cellar/php71/7.1.10_21/bin/php'
8
Xeoncross

Voici les commandes bash pour php7.2; remplacez la version php dont vous avez besoin.

$ brew update php // get the latest homebrew php packages
$ brew install [email protected]
$ brew link [email protected] // create an alias to this keg-only version; see comments output during installation
$ echo 'export PATH="/usr/local/opt/[email protected]/bin:$PATH"' >> ~/.bash_profile // add the alias to your path; see comments output during installation
$ source ~/.bash_profile // reload .bash_profile to use the new settings immediately
8
Kay V

brew install php installe php 7.3 pour le moment, les versions ci-dessous sont uniquement keg

Vous pouvez créer des alias pour les versions ci-dessous en les ajoutant à:

~/.profile

alias [email protected]='$(brew --prefix [email protected])/bin/php'
alias [email protected]='$(brew --prefix [email protected])/bin/php'
alias [email protected]='$(brew --prefix [email protected])/bin/php'
alias [email protected]='$(brew --prefix [email protected])/bin/php'

~/.bashrc

source ~/.profile

~/.zshrc

[[ -e ~/.profile ]] && emulate sh -c 'source ~/.profile'

Ensuite vous pouvez:

[email protected] -v
[email protected] -v
[email protected] -v
[email protected] -v

Si vous utilisez composer et que la plateforme php n'est pas définie dans votre projet, cela peut être pratique:

~/.profile

alias [email protected]='[email protected] $(which composer)'
alias [email protected]='[email protected] $(which composer)'
alias [email protected]='[email protected] $(which composer)'
alias [email protected]='[email protected] $(which composer)'

Si vous utilisez beaucoup d'artisan (l'artisan mappe vers php qui est 7.3), cela peut être pratique:

~/.profile

alias [email protected]='[email protected] artisan'
alias [email protected]='[email protected] artisan'
alias [email protected]='[email protected] artisan'
alias [email protected]='[email protected] artisan'
3
Mike

Essayez: brew link php71 --force pour utiliser la version php spécifique à l'infusion. Ça a marché pour moi.

2
echo