首页
学习
活动
专区
工具
TVP
发布

PHP环境配置:Windows7+IIS7+PHP+MySQL-适用于

Windows7+IIS7+PHP+MySQL - 适用于(2008 R2 / 8 / 10)

配置需求

操作系统:Windows7(x32/x64), windows2008

IIS版本:7.0

PHP版本:7.0.6 及以上

MySQL版本:5.7.12 及以上

第一步:安装 IIS

注意:从IIS 7+PHP 5.5版本开始,Windows下PHP环境的配置完全不一样,相比之前版本的安装更快更轻松,配合FastCGI,只需鼠标简单操作一下就可以运行PHP环境。

1.找到”控制面板 => 程序和功能 => 打开或关闭Windows功能“

01.jpg

默认”Internet 信息服务“打勾安装

直接选择CGI,会自动安装FastCGI,不需要再安装ISAPI

02.jpg

2.新建网站目录

运行->inetmgr

03.jpg

右击”网站=>添加网站“

04.png

添加网站信息,一定按图片所示设置,除了路径自选

05.png

弹出”80端口占用“,意味着你将会有另一个网站【Default Web Site】同时占用80端口,解决办法:

点击取消,返回修改端口,重新确定。

点击确定,每次使用时,关闭其中一个网站

06.png

第二步:安装 PHP

下载地址:http://windows.php.net/download/

官网可以下载到Windows版的最新PHP包,但是PHP.net已经放弃5.6版以前的环境包,大叔这里整理了一份以前的环境包列表,有需要的同学可以自己去拿

百度云盘:https://pan.baidu.com/s/1BJgFhrCHRBj1VFkgGegZ8g

访问密码:11mh

将PHP环境包解压后,找到php.ini-xxx文件

既然是本地开发测试,大叔建议:复制”php.ini-development“ 并粘贴,重命名为php.ini

配置 php.ini

1.设置extension_dir插件

搜索并找到extension_dir = "",在""里面输入PHP插件ext目录所在的位置,extension_dir = "C:/ProgramFiles/XXX/XXX/php目录名/ext"

07.jpg

搜索并找到extension_dir=,会找到插件目录列表,大叔建议打开以下插件(去掉前面”;“)维持大部分的PHP网站功能,如果有其他需求再打开其他插件(注:配置一次PHP.ini就需要重启一次IIS)

08.jpg

2.设置时区:date.timezone =Asia/Shanghai

09.jpg

3.IIS 添加 PHP 支持

运行->inetmgr

10.jpg

打开:处理程序映射

11.png

打开:添加模块映射

12.png

填写如下内容

13.png

确定会有提示,点击”确定“

14.png

映射程序添加成功,列表中会有一条PHP程序映射记录

15.png

这样一个IIS+PHP环境就搭建好了。

PHP包:版本/型号区别

5.5版本之前

Windows配置IIS+PHP,需要安装VC9

Windows配置Apache+PHP,需要安装VC6

5.5版本之后只有VCXX了,只要选线程方式和32位/64位系统就可以了

Non Thread Safe是指非线程安全,Thread Safe则是指线程安全

使用ISAPI的方式来运行PHP就必须用Thread Safe(线程安全)的版本

使用FastCGI模式运行PHP的话就没有必要用线程安全检查了,用None Thread Safe(NTS,非线程安全)的版本能够更好的提高效率

FastCGI 进程错误汇总错误1:php-cgi.exe - FastCGI 进程意外退出

打开http://localhost页面,提示以上错误,95%以上就是环境对应的VC版本没装对。

你需要寻找PHP VC号对应的Visual C++ Redistributable for Visual Studio开发版本:

5.5版本需要安装 VS2012

5.7版本需要安装 VS2015

错误2:发生未知 FastCGI 错误错误代码为0x8007010b

如果之前的安装严格按照本文所述,那应该考虑权限问题,是否把PHP、Apache、MySQL程序放置在了C盘的严控权限位置(比如桌面)。

将程序文件夹添加人员【Everyone】,权限为【所有】,重新刷新页面即可。

第三步:安装 MySQL

下载地址:https://dev.mysql.com/downloads/mysql/

百度云盘:https://pan.baidu.com/s/19ffxCVYgTUbmMzNwI8CB6g

访问密码:l5fb

大叔建议使用免安装版,使用CMD方式安装,是最容易熟悉MySQL的方法,本文的安装流程是以绿色版为标准。

百度网盘是本文配套的MySQL 5.7 官方免安装版

进入官网下载页面,拖至最下面,或在页面搜索Other Downloads:

24.png

32位系统下载:Windows (x86, 32-bit), ZIP Archive

64位系统下载:Windows (x86, 64-bit), ZIP Archive

配置 my.ini

【my.ini】是MySQL安装使用的核心文件,安装与使用都需要靠他来引导。

将文件下载后解压,复制my--default.ini复制并重命名为my.ini(新版的好像都不再带my--default.ini,所以自己在根目录下建一个my.ini)

1.设置MySQL安装路径

在my.ini中,一定要存在下面的字符,如果不存在,就自己码进去,然后保存,

2.人工安装 MySQL

打开CMD控制台

16.png

通过CMD的cd命令,进入MySQL的根目录下的bin文件夹

17.png

在bin文件夹下分别输入下面三条指令:

如果安装成功,就可以通过CMD命令,轻松开启/关闭MySQL了

18.png

注意:保存【my.ini】时编码一定设为Ansi,否则会报如下错误

error: Found option without preceding group in config file: D:\Program Files\mysql-5.6.25-winx64\my.ini at line: 1

Fatal error in defaults handling. Program aborted。

这时,你在CMD中运行net start mysql命令,恭喜,你进入了MySQL的的卡死循环状态中。

错误提示解决方案汇总1.服务无法启动

C:XXX>mysql>bin>net start mysql

MySQL 服务正在启动 ....

MySQL 服务无法启动。

服务没有报告任何错误。

请键入 NET HELPMSG 3534 以获得更多的帮助。

解决方案:【MySQL】服务无法启动,服务没有报告任何错误的解决办法

2.新安装MySQL,Root空密码无法登录

MySQL> mysql -u root -p

Enter password:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

解决方案:【MySQL】免安装版安装并启动成功后,无法登录,root帐户密码强制重设

第四步:设置伪静态

1.下载 IIS 7 的 Microsoft URL 重写模块 2.0 模板

官网64位:http://www.microsoft.com/zh-cn/download/details.aspx?id=7435

官网32位:http://www.microsoft.com/zh-cn/download/details.aspx?id=5747

IIS URL Rewrite下载地址:http://www.iis.net/download/URLRewrite

2.设置web.config

其他问题

问题1:File upload error - unable to create a temporary file in Unknown on line 0

原因:因为PHP的临时目录为不可读写

解决方案:

打开php.ini找到upload_tmp_dir

找一个位置为php上传临时目录,然后upload_tmp_dir = "D://upload/"

问题2:PHP Notice: Undefined variable

原因:PHP默认的配置会报这个错误,虽然有利于发现错误,但同时实践中会出现很多问题。

解决方法:

方法1:修改 **php.ini **配置文件 **error_reporting **设置:

找到error_reporting = E_ALL

修改为error_reporting = E_ALL & ~E_NOTICE

原理:减弱PHP的敏感程度,使其遇到这种问题不报错。(不推荐这种方式,会导致你错误的语法继续出错)

方法2:在PHP文件头部加入以下代码

同样也可以解决问题,但同样不推荐,这个方法。

方法3:修正你的语法,让你的代码更规范!!!

附录

Windows 2008 R2 IIS角色安装方法

Windows 2008 R2是服务器版本,所以安装IIS7时和非服务器版有些不同,需要使用角色系统安装

第一步:安装IIS

首先进入”控制面板=>打开或关闭Windows功能“

19.jpg

服务器版本进入的是服务器管理器,我们需要进入【角色】并添加角色来增加IIS功能

20.png

进入引导页,点击”下一步“

21.png

打勾”Web 服务器(IIS)“,点击下一步

22.png

一路下一步,记得把 **CGI **勾选上,不要勾选ISAPI

等待安装过程

最后显示”安装成功 “,即大功告成。

23.png

Windows 10:MySQL my.ini 与 Windows7 不通用

Windows 7/8/10/2008R2 都使用了IIS7,使用及安装的方法几乎一致,但因为微软的老毛病,系统不同的情况下,Bug也会不同,这里大叔记录了一些安装其他系统时遇到一些情况记录。

MySQL的my.ini文件,各个系统之间不能通用,所以在安装时,无法直接把Windows7的MySQL直接移植过去,大叔就重写了my.ini就可以正常使用了。

Dy大叔的日常

读书,摄影,旅行,简单而快乐的慢生活。

微信直接搜索

DYdashuderichang

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180913A1BTS200?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券