Windows10+IIS+PHP7+MySQL5.7环境搭建

IIS配置

本次搭建使用的系统是Windows7,Windows8,10与此类似。

开启IIS

开始–>控制面板–>程序和功能,点击左边栏的开启或关闭Windows功能,如图:
Windows10+IIS+PHP7+MySQL5.7环境搭建

选择Internet信息服务并选择里面的CGI。
打开浏览器,输入localhost127.0.0.1,可以正常打开网页则说明开启成功。

新建站点

  1. 打开IIS(可在开始菜单搜索IIS打开),在左边栏右击网站,选择添加网站,填写以下信息:
    Windows10+IIS+PHP7+MySQL5.7环境搭建

这里端口设为5000(避免跟其他程序端口冲突就行)。最后点击确认

  1. IIS界面左边栏,选中刚才创建的站点,双击页面中的默认文档,添加一个默认文档,名称为index.html,并移到默认文档列表顶部
  2. 在刚才所填写的物理路径目录下,创建文件index.html并写入一些字符,如hello world!
  3. 打开浏览器,地址栏输入localhost:5000,如显示hello world!则说明设置成功

    如需设置局域网访问,可使用以下方法:方法一:直接关闭防火墙(不推荐);方法二:打开防火墙,并设置入站规则,步骤如下:控制面板->windows防火墙->高级设置->入站规则->新建规则,在弹窗的新建入站规则向导中,规则类型选择端口,下一步,协议和端口选择TCP,特定本地端口填写5000,下一步,操作选择允许连接,下一步,配置文件全部勾选,下一步,给该规则命名,点击完成即可。打开CMD,输入ipconfig查看本机内网ip地址;打开浏览器,输入ip_address:5000(ip_address替换为你自己的ip)进行测试。(以上设置好之后,编辑站点目录权限,添加IUSR账户,拥有修改与写入权限)

    PHP安装

  4. 下载最新版本的PHP,网址:https://windows.php.net/download/,注意系统的版本,我使用的系统是windows7 x64,这里选择版本:VC15 x64 Non Thread Safe。下载完成后解压到指定目录,如D:\dev\PHP7

    关于tf和ntf版本的区别:ts(Thread-Safety),线性安全,多线程访问时,采用了加锁机制,php以ISAPI方式加载的时候选择这个版本;nts(None-Thread Safe)即非线程安全,php以fast-cgi方式运行的时候选择这个版本,具有更好的性能。

  5. 下载PHP运行库Visual C++ 2015 runtime并安装,网址:https://www.microsoft.com/en-gb/download/details.aspx?id=48145
  6. 在IIS中配置PHP7:打开IIS,双击处理程序映射,点击右边栏添加模块映射,填写一下信息:
    Windows10+IIS+PHP7+MySQL5.7环境搭建

点击对话框中的请求限制...,按如下设置:
Windows10+IIS+PHP7+MySQL5.7环境搭建

最后点击两次确定,配置完成。

  1. 设置默认文档:在IIS中,选中之前所创建的站点,双击页面中默认文档,进行设置,添加index.php并移动到默认文档列表顶部。
  2. 测试:在站点根目录下,创建文件index.php,写入<?php phpinfo(); ?>并保存。打开浏览器,在地址栏中输入localhost:5000,如正常打开则表示已经配置成功。
  3. 配置php.ini:将PHP目录中的php.ini-development或php.ini-production复制一份并命名为php.ini.使用编辑器,如Sublime Text打开php.ini,作如下配置并保存(注意去掉前面的分号):
    (1)设置时区:date.timezone = Asia/Hong_Kong
    (2)设置扩展文件目录:extension_dir = "ext"(位于行; On windows:后面)
    (3)由于是IIS,还需有如下配置,以提高性能和安全性:cgi.force_redirect = 0,cgi.fix_pathinfo=0,fastcgi.impersonate = 1

    MySQL安装

  4. 下载最新版本MySQL,网址:https://dev.mysql.com/downloads/mysql/,选择对应的操作系统和版本,这里选择Windows X86-64bit,ZIP-Archive,点击下载跳转到下载页面,可点击No thanks, just start my download直接下载,无需注册账号。下载完成后解压提取到指定目录,如“D:\dev\mysql”
  5. 以管理员身份启动CMD,依次执行如下命令切换目录:
    D:
    cd dev/mysql/bin
    mysqld --initialize --console

    此时会提示生成了临时密码,务必将密码记下来。
    3.CMD中执行mysqld --install将mysql安装到windows服务中,Win—+R打开命令运行窗口,运行services.msc打开windows服务,找到MYSQL,启动类型设置为自动并启动该服务。

    可将mysql.exe加入到环境变量中,这里添加D:\dev\mysql\bin到环境变量,不用每次切换目录。

  6. 修改默认密码:CMD中执行mysql -u root -p,输入之前生成的临时密码进行登录。登录之后执行alter user ‘root‘@‘localhost‘ identified by ‘your_password‘;(your_password替换为你想设置的密码),执行quit;退出,使用刚刚设置的密码进行登录,查看是否登录成功。
  7. php.ini中配置mysqli扩展的支持:添加:extension=php_mysqli.dll
  8. 测试:编辑之前创建的index.php,将代码改为:
    $result = mysqli_connect("localhost","root","your_password");
    if ($result) {
    echo "success!";
    }

    your_password替换替换为你设置的mysql密码。
    打开浏览器,输入localhost:5000,如显示success!则表示php已经成功连接到mysql。
    到此,Windows+IIS+PHP7+MySQL5.7 web服务器就搭建完成了。

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/9655.html

(0)
江山如画的头像江山如画管理团队
上一篇 2021年8月14日 上午9:52
下一篇 2021年8月14日 上午10:59

99%的人还看了以下文章

  • String、StringBuffer、StringBuilder的区别?

    String在实例化之后,其内存空间的内容大小是不能够被修改的;而StringBuffer是一个线程安全的可变字符序列,在实例化之后可以动态的修改堆内存中的内容,所以内存长度和大小是可变的;StringBuilder实例化之后内存大小长度也是可变的,不同之处在于StringBuilder不是线程同步,因此操作起来必然比StringBuffer更加高效。

    2018年10月24日
    2.7K0
  • Tomcat8启动一闪而过、Tomcat8启动闪退的解决办法(精)

    下载了Tomcat8,在CMD命令下输入命令:startup,Tomcat8启动一闪而过,测试http://localhost:8080/ 无法打开,网上找了很多文章都没解决,后来折腾出来了,特写教程分享给大家! Tomcat8.0 解压缩完,运行tomcat8.exe屏幕一闪就没了,运行tomcat8w.exe弹出个筐:  Unable to open t…

    2019年4月8日 编程开发
    23.3K0
  • 第4课:标识符和关键字

     1.标识符 在程序中使用的变量名、函数名、标号等统称为标识符。除库函数的函数名由系统定义外,其余都由用户自定义。C 规定,标识符只能是字母(A~Z,a~z)、数字(0~9)、下划线(_)组成的字符串,并且其第一个字符必须是字母或下划线。 以下标识符是合法的:        a, x,  x3, BOOK_1, sum5 以下标识符是非法的:     3a …

    2020年4月5日
    6.5K0
  • HTTP错误 403.14 服务器配置为不列出此目录内容

    开发一个企业网站,使用ASP技术,在本地通过IIS管理器调试,出现 如下问题: HTTP 错误 403.14 – Forbidden Web 服务器被配置为不列出此目录的内容 解决方法: 在”功能视图“,中找到”目录浏览“,双击进入 在目录浏览右侧操作中选择”启用“! 这时再浏览网站,可以看到已经不报错了,但是网站是以文件目录的形式展现的! 这是…

    2018年7月3日 编程开发
    5.2K0
  • JAVA编程题:输入若个数,回车确认求和及平均值

    请输入若个数,每输入一个数回车确认 ,最后输入一非数字结束输入操作 package javaapplication1; import java.util.*; public class Outin { public static void main (String[] args) { System.out.println(“请输入若个数,每输入一个数回车确认…

    2020年3月22日
    8.3K0
  • pycharm 中pip不是内部或外部命令,也不是可运行的程序或批处理文件(直接解决问题)

    在pycharm中输入pip则显示:pip不是内部或外部命令,也不是可运行的程序或批处理文件。 和在命令行输入python提示python不是内部或外部命令,也不是可运行的程序或批处理文件一样,都是环境变量的问题。不用怀疑,www.125jz.com站长亲测!!! pip不是内部或外部命令,也不是可运行的程序或批处理文件的解决方法 1.首先找到pip的安装位…

    2023年1月13日 编程开发
    11.7K0

发表回复

登录后才能评论