mac下使用homebrew搭建php7环境

今天把电脑系统重装了,所以重装PHP环境

环境要求

  • macOS 10.12.4
  • Apache2.4
  • PHP7
  • Mysql5.7

安装

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  • 先添加brew tap源,有点添加ppa的样子,添加第三方库

brew tap josegonzalez/php
# 不知道为什么执行了这句,一直就卡住,需要`control+c`才能执行
  • Apache2.4 + PHP7

brew install php70 --with-httpd24
# 可能会出现下面的报错
==> ./configure --prefix=/usr/local/Cellar/php70/7.0.17_9 --localstatedir=/usr/l
Last 15 lines from /Users/peterxu/Library/Logs/Homebrew/php70/01.configure:
checking for Kerberos support... /usr
checking whether to use system default cipher list instead of hardcoded value... no
checking for krb5-config... /usr/bin/krb5-config
checking for RAND_egd... no
checking for pkg-config... no
checking for OpenSSL version... >= 0.9.8
checking for CRYPTO_free in -lcrypto... yes
checking for SSL_CTX_set_ssl_version in -lssl... yes
checking for PCRE library to use... bundled
checking whether to enable PCRE JIT functionality... yes
checking whether to enable the SQLite3 extension... yes
checking bundled sqlite3 library... yes
checking for ZLIB support... yes
checking if the location of ZLIB install directory is defined... no
configure: error: Cannot find libz

If reporting this issue please do so at (not Homebrew/brew or Homebrew/core):
https://github.com/josegonzalez/homebrew-php/issues

/usr/local/Homebrew/Library/Homebrew/utils/github.rb:226:in `raise_api_error': curl failed!  (GitHub::Error)
curl: (22) The requested URL returned error: 422 Unprocessable Entity
curl: (3) <url> malformed
    from /usr/local/Homebrew/Library/Homebrew/utils/github.rb:184:in `open'
    from /usr/local/Homebrew/Library/Homebrew/utils/github.rb:233:in `issues_matching'
    from /usr/local/Homebrew/Library/Homebrew/utils/github.rb:266:in `issues_for_formula'
    from /usr/local/Homebrew/Library/Homebrew/exceptions.rb:338:in `fetch_issues'
    from /usr/local/Homebrew/Library/Homebrew/exceptions.rb:334:in `issues'
    from /usr/local/Homebrew/Library/Homebrew/exceptions.rb:388:in `dump'
    from /usr/local/Homebrew/Library/Homebrew/brew.rb:130:in `rescue in <main>'
    from /usr/local/Homebrew/Library/Homebrew/brew.rb:31:in `<main>'

# 提示没有找到libz
xcode-select --install
  • 安装PHP的mcrypt扩展

brew install -fs php70-mcrypt
  • 安装PHP的intl扩展

brew install -s php70-intl
  • 安装Mysql5.7

brew install mysql
# 启动 mysql
mysql.server start

配置

apache配置文件

/usr/local/etc/apache2/2.4/httpd.conf
# apache启动停止
/usr/local/bin/apachectl start
/usr/local/bin/apachectl stop
/usr/local/bin/apachectl restart
# 编辑配置文件httpd.conf
# 添加一下内容
<IfModule dir_module>
    DirectoryIndex index.php index.html
</IfModule>

<FilesMatch .php$>
    SetHandler application/x-httpd-php
</FilesMatch>
# 添加 PHP CLI 可以选择在 ~/.bashrc, ~/.zshrc, ~/.profile or your shell's 添加
export PATH="$(brew --prefix homebrew/php/php70)/bin:$PATH"

php配置文件

/usr/local/etc/php/7.0/php.ini

mysql配置文件

# mysql --help 可以查看到这一句 my.cnf配置文件的地址 但是这些路径下并没有这个文件
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf
# 拷贝一份配置文件到 /usr/local/etc/my.cnf
cp $(brew --prefix mysql)/support-files/my-default.cnf /usr/local/etc/my.cnf
# mysql启动停止
mysql.server start
mysql.server stop
mysql.server restart
# 可以通过下面的SQL语句查看basedir,datadir
select @@basedir;
select @@datadir;

OK! 完成

原文出自:https://pointline.github.io/2017/04/11/mac%E4%B8%8B%E4%BD%BF%E7%94%A8homebrew%E6%90%AD%E5%BB%BAphp7%E7%8E%AF%E5%A2%83/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容