安装PHP

添加brew的PHP扩展库:

brew update
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php

可以使用brew options php55命令来查看安装php5.5的选项,这里我用下面的选项安装:

brew install php55 --with-fpm --with-gmp --with-imap --with-tidy --with-debug --with-mysql --with-libmysql

PHP编译过程中如果遇到configure: error: Cannot find OpenSSL's <evp.h>错误,执行xcode-select --install 重新安装一下Xcode Command Line Tools 在GitHub HomeBrew上有关于这个讨论:
For future reference of anybody looking for Command Line Tools with Xcode 5, open up a Terminal window and type xcode-select --install. A window will appear informing you command line tools are required. Click Install and you should be good to go

等待PHP编译完成,开始安装PHP常用扩展,扩展安装过程中brew会自动安装依赖包,例如php55-pdo-pgsql 会自动装上postgresql,这里我安装以下PHP扩展:

brew install php55-apcu\
php55-gearman\
php55-geoip\
php55-gmagick\
php55-imagick\
php55-intl\
php55-mcrypt\
php55-memcache\
php55-memcached\
php55-mongo\
php55-opcache\
php55-pdo-pgsql\
php55-phalcon\
php55-redis\
php55-sphinx\
php55-swoole\
php55-uuid\
php55-xdebug;

扩展里面提一下php55-phalcon 和 php55-swoole. 一个是C语言写的PHP框架,安装来个人摸索熟悉一下,还没有真正的使用过,大致看了一下文档,感觉非常吊炸天。目前公司的项目是基于Yii2的,也看看这个框架。 另外一个swoole是国产的PHP高性能网络通信框架,貌似不错,可能在项目中会考虑用到它。

由于Mac自带了php和php-fpm,因此需要添加系统环境变量PATH来替代自带PHP版本。

echo 'export PATH="$(brew --prefix php55)/bin:$PATH"' >> ~/.bash_profile  #for php
echo 'export PATH="$(brew --prefix php55)/sbin:$PATH"' >> ~/.bash_profile #for php-fpm
echo 'export PATH="/usr/local/bin:/usr/local/sbib:$PATH"' >> ~/.bash_profile #for other brew install soft
source ~/.bash_profile

测试一下效果:

#brew安装的php 他在/usr/local/opt/php55/bin/php
php -v
PHP 5.5. (cli) (built: Jul ::) (DEBUG)
Copyright (c) - The PHP Group
Zend Engine v2.5.0, Copyright (c) - Zend Technologies
with Zend OPcache v7.0.3, Copyright (c) -, by Zend Technologies
with Xdebug v2.2.5, Copyright (c) -, by Derick Rethans
#Mac自带的PHP
/usr/bin/php -v
PHP 5.4. (cli) (built: Jan ::)
Copyright (c) - The PHP Group
Zend Engine v2.4.0, Copyright (c) - Zend Technologies #brew安装的php-fpm 他在/usr/local/opt/php55/sbin/php-fpm
php-fpm -v
PHP 5.5. (fpm-fcgi) (built: Jul ::) (DEBUG)
Copyright (c) - The PHP Group
Zend Engine v2.5.0, Copyright (c) - Zend Technologies
with Zend OPcache v7.0.3, Copyright (c) -, by Zend Technologies
with Xdebug v2.2.5, Copyright (c) -, by Derick Rethans #Mac自带的php-fpm
/usr/sbin/php-fpm -v
PHP 5.4. (fpm-fcgi) (built: Jan ::)
Copyright (c) - The PHP Group
Zend Engine v2.4.0, Copyright (c) - Zend Technologies

修改php-fpm配置文件,vim /usr/local/etc/php/5.5/php-fpm.conf,找到pid相关大概在25行,去掉注释 pid = run/php-fpm.pid, 那么php-fpm的pid文件就会自动产生在/usr/local/var/run/php-fpm.pid,下面要安装的Nginx pid文件也放在这里。

#测试php-fpm配置
php-fpm -t
php-fpm -c /usr/local/etc/php/5.5/php.ini -y /usr/local/etc/php/5.5/php-fpm.conf -t #启动php-fpm
php-fpm -D
php-fpm -c /usr/local/etc/php/5.5/php.ini -y /usr/local/etc/php/5.5/php-fpm.conf -D #关闭php-fpm
kill -INT `cat /usr/local/var/run/php-fpm.pid` #重启php-fpm
kill -USR2 `cat /usr/local/var/run/php-fpm.pid` #也可以用上文提到的brew命令来重启php-fpm,不过他官方不推荐用这个命令了
brew services restart php55 #还可以用这个命令来启动php-fpm
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php55.plist

启动php-fpm之后,确保它正常运行监听9000端口:

lsof -Pni4 | grep LISTEN | grep php
php-fpm calvin 9u IPv4 0xf11f9e8e8033a2a7 0t0 TCP 127.0.0.1: (LISTEN)
php-fpm calvin 0u IPv4 0xf11f9e8e8033a2a7 0t0 TCP 127.0.0.1: (LISTEN)
php-fpm calvin 0u IPv4 0xf11f9e8e8033a2a7 0t0 TCP 127.0.0.1: (LISTEN)
php-fpm calvin 0u IPv4 0xf11f9e8e8033a2a7 0t0 TCP 127.0.0.1: (LISTEN)

#正常情况,会看到上面这些进程

PHP-FPM开机启动:

ln -sfv /usr/local/opt/php55/*.plist ~/Library/LaunchAgents
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.php55.plist

安装php composer

brew install composer
#检查一下情况
composer --version
Composer version 1.0.-alpha8 -- ::

redis memcached这些软件brew 已经自动依赖安装上,如果想开机自动启动,或者查看使用说明 brew info redis即可。另外,composer的中文文档:猛戳这里

【转】mac os 安装php的更多相关文章

  1. Mac os安装DVWA环境教程

    Mac os安装DVWA环境教程 1.尽管Mac自带Apache和php 事实上Mac和WIN都用XAMPP一键化安装比较方便 2.解压DVWA-master 改名为dvwa移动到XAMPP的目录 3 ...

  2. mac OS 安装配置Nginx服务器

    系统环境 安装工具 Homebrew软件包管理器 :<mac OS 安装 Homebrew软件包管理器>https://blog.csdn.net/weixin_41791279/arti ...

  3. <亲测好使>mac os 安装mcrypt扩展

    以前安装opencart的时候倒是不需要mcrypt 这个库.但是新版本需要了.加上自己的 是mac环境.当时闲麻烦,就一直没装.这次下午就寻思给装上吧! 1.首先你要先安装xcode这个工具.不然没 ...

  4. Mac OS 安装Wget

    没有Wget的日子是非常难过的,强大的Mac OS 下安装Wget非常简单 下载一个Wget的源码包,http://www.gnu.org/software/wget/ 安装与配置 1. 首先下载一个 ...

  5. Mac OS安装Windows各版本时注意事项(2014年后的Mac机相信会有这些问题)

    2014年后的Mac Mini安装Windows时候,会遇上更种坑,我这几天不断失败及尝试更种版本,各有心得体会,我写下来是为了避免大家遇到像我这种问题. (2014年之前的Mac Mini是否这样, ...

  6. Mac OS安装Scrapy失败

    报错: DEPRECATION: Uninstalling a distutils installed project (six) has been deprecated and will be re ...

  7. Mac OS安装Scrapy

    个人觉得掌握简单的爬虫知识非常有用,特别是想要从一些特定网站自动地下载一些资源或者统计一些数据,非常的有用.对于产品经理来说,如果要了解竞争产品.替代产品的价格,可以写一个爬虫脚本从各大电商网站爬取相 ...

  8. Mac OS安装octave出现的问题-'error:terminal type set to 'unknown'的解决'

    学习Machine learning需要使用Octave语言,毕竟Andrew Ng (恩达.吴)力荐.本机系统Mac OS X EI Capitan, 其实什么系统都无所谓了,安装原理都是一样的. ...

  9. Python 环境搭建(Win 安装以及Mac OS 安装)

    千里之行始于足下,今天我们先来学习 Python 环境搭建. 注意:本系列教程基于 Python 3.X Python 环境搭建 Win 安装 打开 Python 官网 https://www.pyt ...

  10. Mac os 安装 alipay-sdk-python 3.3.92错误 line 278,其实是另一个依赖包pycrypto安装有问题。

    日期2019.7.17解决的问题. 系统mac os 10.14.5 python 3.6 django 1.11 要安装alipay-sdk-python 3.3.92错误 line 278, in ...

随机推荐

  1. Using Redis to store php session

    Using Redis to store php session 默认情况下,php将会将session信息存储在文件系统上,在单机情况下没有问题,但是当系统负载增大,或者在对系统可用性要求很高的场景 ...

  2. winform开发之UI系列

    1.如何构造一个漂亮的主窗体 主要讲述如何对一个新建窗体的美化过程,涉及到经常需要用到的几个属性我会着重强调它的用法,并不断更新它,因为楼主也正在探索中.... 步骤如下: vs新建一个winform ...

  3. MSIL Emit AOP

    参考链接: https://pieterderycke.wordpress.com/tag/reflection-emit/ http://www.moon-soft.com/doc/23252.ht ...

  4. sublime text 3 安装 pakcage control

        安装sublime的pakcage control 参考:  https://packagecontrol.io/installation#st3 ctrl+`   import urllib ...

  5. 机器学习中的范数规则化之(一)L0、L1与L2范数

    L1正则会产生稀疏解,让很多无用的特征的系数变为0,只留下一些有用的特征 L2正则不让某些特征的系数变为0,即不产生稀疏解,只让他们接近于0.即L2正则倾向于让权重w变小.见第二篇的推导. 所以,样本 ...

  6. Net通用进销存管理系统 + 开发文档+ 使用说明

    通用进销存管理系统 + 开发文档+ 使用说明Net源码下载 包括下面的模块基础资料模块采购管理模块库存管理模块商务管理模块营业管理模块维修管理模块会员管理模块财务管理模块 Net通用进销存管理系统 + ...

  7. api服务端接口安全

    api服务端接口安全性解析 http://blog.csdn.net/tenfyguo/article/details/8225279 常用的基于token的实现方案 http://blog.csdn ...

  8. excel中的TEXT函数

    TEXT 函数可将数值转换为文本,并可使用户通过使用特殊格式字符串来指定显示格式. TEXT(value, format_text) value  必需.数值.计算结果为数值的公式,或对包含数值的单元 ...

  9. CSS的clip-path 一

    首先介绍一下,我觉得前端开发都是很具有分享精神的,很多人都写出了很多优秀的总结经验供新手们参考,本人只是个搬运工,将别人优秀的文章进行了总结,本文主要转载自  大漠  的文章  http://www. ...

  10. oracle 调用java

    1.首先在PL/SQL中创建JAVA类,并编译 例如:这个是到的一个查询目录下面文件列表的java类 创建此java 类用: create or replace and compile java so ...