php7号称能直追facebook的HHVM,为了体验一把传说中的高性能,我特意在本地电脑上尝试着安装了php7,不得不承认,php7的运行环境相对于之前的php5来说还是有一点苛刻的。下面开始进入主题。
一.环境准备
1. windows7版本要求
如果你用的是win7系统,必须确保你的系统上安装了SP1这个更新包,这个绝对是必要条件,如图:
2. 下载php7
需下载线程安全版的php7,否则,我们将无法加载php7apache2_4.dll扩展,下载地址:
http://php.net/downloads.php
3. 下载Apache2.4
出于兼容性考虑,我们选择的是VC9编译环境下的Apache版本,下载地址:
http://httpd.apache.org/download.cgi
下载过程如下:
注意:Apache2.2中是不支持php7的,所以,我们必须下载Apache2.4
4. 下载Visual C++ 2015
由于php7使用了VC14的编译环境,所以我们还需要下载Visual C++ 2015,下载地址:
https://www.microsoft.com/en-US/download/details.aspx?id=48145
二. 开始安装
1. 双击安装vc_redist.x64.exe
2. 解压php-7.0.10-Win32-VC14-x64.zip,目录结构如下:
3. 解压httpd-2.4.23-x64.zip,目录结构如下:
4. 创建Apache服务
进入cmd命令行,输入:
"D:\program\myplatform\Apache2.4\bin\httpd.exe" -k install -n Apache2.4,如图:
上图,表示权限不够,我们以管理员权限再执行一次,如图:
上图,表示Apache2.4这个系统服务已经创建成功了。
三. 配置Apache
需要修改的文件:D:/program/myplatform/Apache2.4/conf/httpd.conf
1. 设置apache的安装目录
将Define SRVROOT "/Apache24"修改为
Define SRVROOT "D:/program/myplatform/Apache2.4"
2. 配置工作空间
将下面两行
DocumentRoot "${SRVROOT}/htdocs" <Directory "${SRVROOT}/htdocs">
修改为
DocumentRoot "D:/javapro" <Directory "D:/javapro">
3. 装载php模块
在<IfModule mime_module>标签的末尾处,添加如下三行内容:
PHPIniDir "../PHP/php-7.0.10" LoadModule php7_module "../PHP/php-7.0.10/php7apache2_4.dll" AddType application/x-httpd-php .php
注意:此处用的是相对路径,相对路径的根目录是ServerRoot参数的值,也就是前面SRVROOT定义的值,而不是httpd.conf配置文件所在的目录。
4. 禁止访问网站目录
出于安全方面的考虑,我们最好配置该选项,禁止访问网站的目录列表。如下:
在<Directory "D:/javapro">标签内,将
Options Indexes FollowSymLinks
修改为
Options None
5. 配置默认首页
在<IfModule dir_module>标签内,将
DirectoryIndex index.html
修改为
DirectoryIndex index.html index.php
四. 配置php
需要修改的文件:D:/program/myplatform/php-7.0.10/php.ini
1. 修改php.ini-development
将D:/program/myplatform/php-7.0.10目录下的php.ini-development文件名修改为php.ini
2. 修改扩展目录
extension_dir = "D:/program/myplatform/PHP/php-7.0.10/ext"
此处必须为绝对路径
3. 开启相关扩展
根据需要开启相关扩展,我这边只开启了如下扩展:
extension=php_gd2.dll
extension=php_curl.dll
extension=php_mbstring.dll
extension=php_openssl.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
注意:php7中,已经不支持php_mysql.dll这个扩展了。
4. 设置时区
date.timezone ="Asia/Shanghai"
5. 设置错误报告等级
error_reporting = E_ALL ^ E_NOTICE
五. 检查Apache配置
切换到apache安装目录的bin目录下,输入:httpd.exe -t,如图:
如果返回Syntax OK,则表示apache在配置上以及所需的运行环境都是OK的,如果不是,则需要根据错误提示,排查错误。
六. 测试Apache,php是否正常工作
在工作空间的根目录下,新建一个index.php,内容如下:
phpinfo();
然后,启动Apache服务,如图:
打开浏览器,输入:http://localhost:8081,如果看到如下界面,则表示运行环境配置成功了!