Php本地多版本安裝

Php多版本安裝

引言

lumen和laravel可使用自帶的install進行安裝(可參照參考1和參考2),使人髮指的是最新的安裝器默認採用的是php7.1,本地的環境是7.0,因此得不失禮貌微笑的說一聲:幹得漂亮!php

問題

那麼問題來了,我要安裝多版本的php了,php7.1html

步驟

安裝php7.1

brew install php71

修改php-fpm.conf

緣由是我有php70,php71,對php70我仍是使用以前默認的9000端口,php71更改成9001端口,這樣只要在nginx配置站點的時候制定端口就可使用不一樣版本的php版本啦!!nginx

php70的php-fpm配置

php71的php-fpm配置

啓動php-fpm

cd /usr/local/Cellar/php@7.0/7.0.27_19/sbin
./php-fpm -D

cd /usr/local/Cellar/php@7.0/7.1.18/sbin
./php-fpm -D

php啓動php-fpm

配置nginx

nginx

1.好比我爲了測試方便,須要打印本地的phpinfo,配置了兩個一個是localhost localhost9000.com,一個是localhost9001.com,監聽不一樣的端口,指向的是同一個directory,在/usr/local/var/www裏面index.php,其實就是laravel

echo phpinfo();

2.使用SwitchHost管理本地域名(工做中須要配置各類域名,這個工具棒棒噠),配置了兩個git

127.0.0.1 localhost9000.com
127.0.0.1 localhost9001.com

3.瀏覽器訪問:github

localhost

localhost

切換php版本

Q:lumen安裝他用的是php的環境變量,也就是說你不能經過參數告訴他我要用哪一個版原本建立lumen,你要指定php環境變量指向的php版本,否則仍是沒法建立應用。web

A:因爲運行了兩個版本的php-fpm,並且在不一樣的端口(9000,9001)因此web訪問的時候制定端口就行了,可是cli模式訪問的時候就比較尷尬了,這裏推薦php-version這個東東,不過我遇到了問題,就是切換不了,以致於我只能修改環境變量來制定不一樣的php版本。(待做者給我答覆吧,github~~)redis

安裝redis、xdebug、memcached擴展

感興趣的能夠看一下參考5,大體的意思是brew官方改版tap庫了,因此你就別期望brew install php71-redis方法來安裝redis擴展啦,xdebug,memcached等等通通不支持了,是否是瞬間憂傷成狗了???哈哈哈,還有一種方法叫源碼安裝。(參考4給出了擴展源碼地址,下載源碼,解壓,而後進入目錄)瀏覽器

1.確認phpize目錄php7

phpize

phpize

2.進去擴展目錄(確認好你的php環境變量是你要編譯擴展對應的版本~~)

/usr/local/Cellar/php@7.1/7.1.18/bin/phpize
./configure
make
make test
make install

ext

3.引入該擴展(xdebug是zend_extension擴展,redis和memcached是extension擴展)

ext

4.重啓php-fpm

備註

原初的目的就是爲了裝一下lumne5.6,沒想到引出了這麼多問題。。。。。不過多版本php安裝感興趣的小夥伴能夠了解一下~~~

參考

  1. https://lumen.laravel.com/docs/master
  2. https://laravel.com/docs/master
  3. https://blog.csdn.net/qdujunjie/article/details/38415033
  4. http://pecl.php.net/index.php
  5. https://newsn.net/say/brew-php-redis.html
相關文章
相關標籤/搜索