Windows7下PHP 7.1搭建开发环境
引言: PHP天生就是用来解决互联网时代的Web语言问题的专业工具,本文将记录在windows上搭建PHP的过程以及其中碰到的问题。
配置版本信息
OS: Windows 7
PHP: 7.1.7-nts-Win32-VC14-x64
前置条件
需要安装Windows Visual C++ VC14+以上的版本安装包。
下载地址: https://support.microsoft.com/en-hk/help/2977003/the-latest-supported-visual-c-downloads
正常情况下,下载2017年的版本
下载 apache
Apache就不用多少了,大名鼎鼎的Web服务器….
下载地址:http://httpd.apache.org/docs/current/platform/windows.html
选择下载windows下的版本即可。
比较有意思的是Apache本身不提供Windows下的安装包,只提供源代码,我晕,但是还好,提供了几个第三方提供的binary安装包:
我选择了Apache Haus 64位的, 版本为: 2.4.27
下载php7
目前最新的php版本是7.1.7, 它提供了non-thread-safe和thread-safe两个版本,这里提示大家下载thread-safe的版本:
下载地址: http://windows.php.net/download#php-7.1
安装目录的设置
将php7.1以及解压之后的apache 2.4放置到了特定目录:
配置Php
进入php的解压目录,将php.ini-production文件复制一份,重新命名为php.ini
将php当下的目录以及php\ext的目录放置到系统环境变量中的PATH中去。
例如: 当前目录为D:\Program Files\phpdev
则PATH中的目录为:D:\Program Files\phpdev\php-7.1.7-nts-Win32-VC14-x64
D:\Program Files\phpdev\Apache24
环境变量的设置路径: 右键我的电脑,点击属性–>高级系 统设置 –>环境变量–>系统变量,找到Path
配置Apache
打开apache安装目录下的conf,编辑httpd.conf, 将其中的SRVROOT修改为实际的安装目录,下面为从中截取的片段:
Define SRVROOT “D:\Program Files\phpdev\Apache24”
ServerRoot “${SRVROOT}”
这里着重讲SRVROOT替换为实际的Apache的安装目录。
其他的修改包括:
<IfModule dir_module>
DirectoryIndex index.html index.php index.htm
</IfModule>
新增index.php来支持php的版本
安装Apache服务
基于Administrator的身份运行windows下的cmd, 然后安装apache服务:
Apache_HOME\bin\httpd.exe -k install -n apache
正常情况下,系统会弹出一个提示对话框,提示是否允许Aapache访问外网,这个是Windows Firewall针对向外联网的请求进行了拦截,只要点击确定允许之后,即可。
启动Apache服务
进入Apache的安装目录,运行ApacheMonitor.exe
bin\ApacheMonitor.exe
点击启动Start,即可启动Apache Web服务器。
配置php.ini
基于文本编辑器,打开php.ini文件:
extension_dir [Line 734 ~~L738]
; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
extension_dir = “D:/Program Files/phpdev/php-7.1.7-nts-Win32-VC14-x64”
On windows:
extension_dir = “D:/Program Files/phpdev/php-7.1.7-nts-Win32-VC14-x64/ext”打开访问dll
- 893行 ;extension=php_curl.dll 去掉前面的分号
- 896行 ;extension=php_gd2.dll 去掉前面的分号
- 903行 ;extension=php_mbstring.dll 去掉前面的分号
- 905行 ;extension=php_mysqli.dll 去掉前面的分号
- 909行 ; extension=php_pdo_mysql.dll 去掉前面的分号
配置Apache的httpd.conf
- 在之前添加如下信息:
LoadModule php7_module “D:/Program Files/phpdev/php-7.1.7-nts-Win32-VC14-x64/php7apache2_4.dll”
PHPIniDir “D:/Program Files/phpdev/php-7.1.7-nts-Win32-VC14-x64”
这里的PHP_HOME: D:/Program Files/phpdev/php-7.1.7-nts-Win32-VC14-x64
- 在文件的最后新增如下信息:
<IfModule php7_module>
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php
AddType application/x-httpd-php .html
AddType application/pdf .pdf
</IfModule>
apache的错误信息查看
apache启动错误查询。右键点击“计算机”》打开“管理”》“事件查看器”》“windows日志”》“应用程序”即可查询报错内容
配置PHP扩展库curl
将php解压文件中的libssh2.dll、php_curl.dll、ssleay32.dll、libeay32.dll放入Windows/System32文件夹(即使你是用64位系统)
然后,把libssh2.dll放入Apache2.4解压目录下的bin文件夹
最后,在php.ini中,把extension=php_curl.dll前面的分号去掉
重启Apache,OK!
其中php_curl.dll在php目录下的ext目录下。
测试php页面
创建一个php页面:
<?php
phpinfo();
?>
打开浏览器:
参考资料
Windows7下PHP 7.1搭建开发环境的更多相关文章
- maven实战(01)_搭建开发环境
一 下载maven 在maven官网上可下载maven:http://maven.apache.org/download.cgi 下载好后,解压.我的解压到了:D:\maven\apache-mave ...
- Android移动APP开发笔记——最新版Cordova 5.3.1(PhoneGap)搭建开发环境
引言 简单介绍一下Cordova的来历,Cordova的前身叫PhoneGap,自被Adobe收购后交由Apache管理,并将其核心功能开源改名为Cordova.它能让你使用HTML5轻松调用本地AP ...
- Win10 IoT C#开发 1 - Raspberry安装IoT系统及搭建开发环境
Windows 10 IoT Core 是微软针对物联网市场的一个重要产品,与以往的Windows版本不同,是为物联网设备专门设计的,硬件也不仅仅限于x86架构,同时可以在ARM架构上运行. The ...
- window7下使用vagrant打造lamp开发环境(一)
前言: 公司电脑只有win7 + (xampp || wamp)开发,处于个人爱好,想学习下在最舒服的开发环境下开发,也不想安装双系统,想用Vmware电脑却配置不高,vagrant+virtual ...
- Android开发系列之搭建开发环境
接触Android好久了,记得09年刚在中国大陆有点苗头的时候,我就知道了google有个Android,它是智能机操作系统.后来在Android出1.5版本之后,我第一时间下载了eclipse开发工 ...
- Sublime Text3 + Golang搭建开发环境
Sublime Text3 + Golang搭建开发环境 http://blog.csdn.net/aqiang912/article/details/46775409 1.安装git 因为golan ...
- 物理引擎Havok教程(一)搭建开发环境
物理引擎Havok教程(一)搭建开发环境 网上关于Havok的教程实在不多,并且Havok学习起来还是有一定难度的,所以这里写了一个系列教程,希望可以帮到读者.这是第一期. 一.Havok物理引擎简单 ...
- hadoop搭建开发环境及编写Hello World
hadoop搭建开发环境及编写Hello World 本文地址:http://www.cnblogs.com/archimedes/p/hadoop-helloworld.html,转载请注明源地 ...
- ios搭建开发环境
ios搭建开发环境 好久就想试水IOS开发了,由于开发环境限制,一直局限于理论和虚拟机,近来入手了MacBook Pro,也来尝尝鲜,笔者也是现学现总结,如果有不足,请指正. IOS开发必备MAC O ...
随机推荐
- 20145321 《Java程序设计》第3周学习总结
20145321 <Java程序设计>第3周学习总结 教材学习内容总结 第四章 4.1 类与对象 1.定义类:类定义时用关键词 class. 一个原始码中可以有多个类定义,但只能有一个公开 ...
- 20145324 《Java程序设计》第4周学习总结
20145324 <Java程序设计>第4周学习总结 教材学习内容总结 第六章 1.继承是为避免多个类间重复定义共同行为 A extends B A继承B的行为 2.一个子类只能继承一个父 ...
- linux下安装mysql详细步骤
最近买了个阿里云服务器,搭建mysql环境. 该笔记用于系统上未装过mysql的干净系统第一次安装mysql.自己指定安装目录,指定数据文件目录. linux系统版本: CentOS 7.3 64位 ...
- 学习记录:交叉编译环境配置(buildroot and gdb&gdbserver)【转】
本文转载自:https://blog.csdn.net/zhy025907/article/details/52332528 1,背景 因为参加公司的路由器逆向培训,首先需要的就是环境的配置准备工作, ...
- 2017ACM/ICPC广西邀请赛-重现赛1005 CS course
2017-08-31 16:19:30 writer:pprp 这道题快要卡死我了,队友已经告诉我思路了,但是做题速度很缓慢,很费力,想必是因为之前 的训练都是面向题解编程的缘故吧,以后不能这样了,另 ...
- 配置servlet支持文件上传
Servlet3.0为Servlet添加了multipart配置选项,并为HttpServletRequest添加了getPart和getParts方法获取上传文件.为了使Servlet支付文件上传需 ...
- Struts2的select使用
struts2的select标签中,常用的有以下几个属性:(1)struts2中的select 标签中,必须设置的属性只有一个,即是list.(2)select标签的list中必须有值,不然会报错.如 ...
- Linux命令详解-rmdir
rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的.(注意,rm - r dir命令可代替rmdir,但是有很大危险性.)删除某目录时也必须具有对父目录的写权限. 1.命令 ...
- 总结网站Mysql优化
Mysql存储引擎 选择合适的存储引擎Innodb myisam myisam: 写入数据非常快,适合使用场合dedecms/phpcms/discuz/微博系统等写入.读取操作多的系统. inno ...
- 学习JVM
所谓虚拟机,就是一台虚拟的机器.它是一款软件,用来执行一系列虚拟计算机指令,大体上虚拟机可以分为系统虚拟机和程序虚拟机,大名鼎鼎的Visual Box.VMware就属于系统虚拟机,他们完全是对物理计 ...