实操日志之Windows Server2008R2 IIS7 配置Php7.4.3

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

配置需求

操作系统:windows2008IIS版本:7.0

PHP版本:7.4.3

MySQL版本:5.7.12 及以上第一步:

安装 IIS

默认"Internet 信息服务"打勾安装

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

2.新建网站目录

运行->inetmgr

右击"网站=>添加网站"

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

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

第二步:安装 PHP

下载地址:https://download.csdn.net/download/tjsoft/90565096

实操日志之WindowsServer2008R2IIS7配置Php7.4.3所需所有安装包资源-CSDN文库下载地址:实操日志之WindowsServer2008R2IIS7配置Php7.4.3所需所有安装包资源-CSDN文库

https://download.csdn.net/download/tjsoft/90565096

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

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

文件名版本名称备注php.ini-developmentphp.ini-dist(5.5版以后名称)(5.5版以前名称)拥有较低的安全性设定,对权限设置适合开发程式使用php.ini-productionphp.ini-recommended(5.5版以后名称)(5.5版以前名称)拥有较高的安全性设定,则适合正式上线的服务器中使用配置 php.ini

1.设置extension_dir插件

搜索并找到extension_dir = "",在""里面输入PHP插件ext目录所在的位置,extension_dir = "C:\websoft\php-7.4.3\ext"

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

extension=php_bz2.dll

extension=php_curl.dll

extension=php_gd2.dll

extension=php_mbstring.dll

extension=php_mysql.dll

extension=php_mysqli.dll

extension=php_pdo_mysql.dll

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

3.IIS 添加 PHP 支持

运行->inetmgr

打开:处理程序映射

打开:添加模块映射

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

Windows2008R2 安装 PHP7.4.30 必须 LocalSystem 启动应用程序池 不然500错误 FastCGI 进程意外退出

应用程序池-高级设置-进程模型 中的选项"标识"中,默认是"ApplicationPoolIdentity" 切换成"LocalSystem" 顺利解决。

5.5版本之前Windows配置IIS+PHP,需要安装VC9Windows配置Apache+PHP,需要安装VC65.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开发版本:

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

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

第三步:安装 MySQL

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

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

24.png

32位系统下载:Windows (x86, 32-bit), ZIP Archive64位系统下载: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 中,一定要存在下面的字符,如果不存在,就自己码进去,然后保存,

mysqld\]#skip-grant-tables #这名加上可以跳过验证basedir= C:/User/Administrator/XXX/XXX/mysql-noinstall-5.1.53-win32 #根目录#datadir=C:/User/Administrator/XXX/XXX/mysql-noinstall-5.1.53-win32/data #数据文件存放目录2.人工安装 MySQL 打开CMD控制台 通过CMD的 cd 命令,进入MySQL的根目录下的bin文件夹 在bin文件夹下分别输入下面三条指令: mysqld --install MySQL 回车(成功会提示,S开头字母)mysqld -remove 回车(如果安装位置出错,就用这个命令删除配置,然后重新安装。)net start mysql 回车(成功会提示服务已经运行)如果安装成功,就可以通过CMD命令,轻松开启/关闭MySQL了 注意:保存【my.ini】时编码一定设为Ansi,否则会报如下错误 error: Found option without preceding group in config file: D:\\Program Files\\mysql-5.6.25-winx64\\my.ini at line: 1Fatal error in defaults handling. Program aborted。 这时,你在CMD中运行net start mysql命令,恭喜,你进入了MySQL的的卡死循环状态中。 错误提示解决方案汇总 1.服务无法启动 C:XXX\>mysql\>bin\>net start mysqlMySQL 服务正在启动 ....MySQL 服务无法启动。服务没有报告任何错误。请键入 NET HELPMSG 3534 以获得更多的帮助。 解决方案:【MySQL】服务无法启动,服务没有报告任何错误的解决办法 2.新安装MySQL,Root空密码无法登录 MySQL\> mysql -u root -pEnter 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=5747IIS 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:修正你的语法,让你的代码更规范!!! 点击取消,返回修改端口,重新确定。点击确定,每次使用时,关闭其中一个网站

相关推荐
Tee xm44 分钟前
清晰易懂的跨平台 MySQL 安装与配置教程
linux·windows·mysql·macos·安装
无尽星海max1 小时前
M芯片,能运行普通应用程序的原架构虚拟机
windows·架构
Tee xm4 小时前
清晰易懂的 Jenkins 安装与核心使用教程
linux·windows·macos·ci/cd·jenkins
智想天开4 小时前
10.使用路由缓存提升性能
php
Lccee4 小时前
Windows安装 PHP 8 和mysql9,win下使用phpcustom安装php8.4.5和mysql9
开发语言·php
Tee xm5 小时前
清晰易懂的 Flutter 开发环境搭建教程
linux·windows·flutter·macos·安装
李恩泽的博客6 小时前
PHP时间处理
php
martian6657 小时前
NVM 多版本Node.js 管理全指南(Windows系统)
java·开发语言·windows·node.js
小徐Chao努力7 小时前
【计网】TCP 协议详解 与 常见面试题
网络协议·tcp/ip·php
QC七哥8 小时前
一个简单的php加密的理解
php