mac php7.2 编译,在Mac上为本身手动编译安装一套PHP7的开发环境

本文档记录了一位开发者在Mac上安装PHP7beta1的详细步骤,包括从下载、编译到解决配置问题,以及如何在Apache环境下进行集成和测试。在安装过程中遇到了如mysql头文件缺失、mcrypt.h找不到等问题,并给出了相应的解决方案。最后成功安装并配置好PHP7,但遇到Apache无法解析PHP文件的问题,通过查找和修改配置文件解决了此问题。
摘要由CSDN通过智能技术生成

今天看到鸟哥发微博说php7 beta1测试版发布了,因而赶忙就去抢先下载,把本身的开发环境也升级到PHP7去,话很少少,下面就一块儿来搞起吧。。。php

首先你得去官网下载php7 beta1的版本

这里因为我是在mac上安装,因此就去下载linux相关的版本,地址也直接附上了

php7 beta1

windows版的官方也有发布详情猛戳:这里html

解压安装包,进入源代码目录

tar -zxvf php-7.0.0beta1.tar.gz

cd php-7.0.0beta1

创建配置

./buildconf --force

./configure --prefix=/usr/local/php7 --with-apxs2=/usr/sbin/apxs --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysqli --with-pdo-mysql --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --disable-fileinfo --enable-maintainer-zts

这里列出如下我编译过程遇到的错误和解决办法:mysql

configure: error: Cannot locate header file libintl.hlinux

安装 gettextsql

sudo brew install gettextapache

编辑 configure 文件,找到 $PHP_GETTEXT /usr/local /usr 在后面加上gettext的路径 $PHP_GETTEXT /usr/local /usr /usr/local/opt/gettextvim

从新配置便可【后面参数和上面同样,这里省略了】windows

configure: error: mcrypt.h not found. Please reinstall libmcrypt.浏览器

sudo brew install mcrypt libmcryptphp7

再次从新configure便可。。。

我这里多是由于以前就装过php7 alpha版本,因此错误会少一点,不过你们过程当中有什么错误的话,直接贴出来你们一块儿研究了。

编译

make

#

Generating phar.php

Generating phar.phar

PEAR package PHP_Archive not installed: generated phar will require PHP's phar extension be enabled.

clicommand.inc

directorygraphiterator.inc

directorytreeiterator.inc

invertedregexiterator.inc

pharcommand.inc

phar.inc

Build complete.

Don't forget to run 'make test'.

#

这里会持续一段时间,通常是不会出现什么错误的,除非你人品的问题了。。。

安装

sudo make install

上面的步骤都顺利的话,这一步作起来就是那么的简单了,可是安装过程的信息要记得留意一下,后面配置会须要。。。

命令行测试

/usr/local/php7/bin7 -v

#为了之后事业方便,直接替换系统默认的php命令

#当人你也能够备份一下,我这里直接覆盖算求了。。。

sudo cp /usr/local/php7/bin/ph* /usr/bin/

毫无违和感,运行的如此流畅,哈哈!

配置apache

打开apache的配置文件httpd.conf,找到原来的LoadModule php5_module这里,直接注释掉,下面加入LoadModule php7_module /usr/libexec/apache2/libphp7.so,最后以下:

sudo vim /etc/apache2/httpd.conf

...

#LoadModule php5_module libexec/apache2/libphp5.so

LoadModule php7_module /usr/libexec/apache2/libphp7.so

...

重启apache,而后测试一把看看

惊奇的发现,php文件直接输出到浏览器了。。。

感受是apache不知道要解析php文件了!!!

这里我排查了很久,发现切换成php5版本就没问题,php7就没法解析???

最后才发现apache在解析php的适合是判断了模块的,例如ifModule php5_module这样,在httpd.conf里面找到这一句:Include /private/etc/apache2/other/*.conf,进入到该目录一看,你就明白了...

里面有一个php5.conf文件,那是否是php7的就该对应一个php7的文件呢,因而赶忙复制一份,打开这个文件,看到相似php5_module的字样,直接替换成php7_module便可,相关内容以下:

#httpd.conf改动

...

Include /private/etc/apache2/other/php5.conf

Include /private/etc/apache2/other/php7.conf

#Include /private/etc/apache2/other/*.conf

...

#php7.conf内容

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps

DirectoryIndex index.html index.php

最后再次重启apache,测试一下

sudo apachectl restart

久违的画面出现了。。。

bVmFuS

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值