原文:win7 64bit下最新Apahe2.4.18+php7.0.2+MySQL5.7.10配置

一、说明

  以前配置apache+php+mysql都是参考网上的,一般都没有什么问题。最近公司有个任务需要在工作电脑上配置apache+php+mysql, 于是到它们的各个官网上下载了最新的版本,按照网上一步一步走,但是发现并没有那么顺利,中间出了各种问题,到处找资料,还好最后都解决了,现在写下来给大家参考一下。

  apache: http://httpd.apache.org/download.cgi   version: 2.4.18

  php: http://www.php.net/downloads.php   version: 7.0.2

  mysql: http://dev.mysql.com/downloads/mysql/   version: 5.7.10

  如图:

  

二、配置

1.php配置

  首先,由于php7.0.2是用vc14编译,所以需要vc14的支持,如果您的电脑安装了vs2015则可忽略,否则你需要到这里https://www.microsoft.com/en-US/download/details.aspx?id=48145下载vc14,如下图所示:

  

  然后,将php目录下的php.ini-development文件复制一份,并重新命名为php.ini作为php的默认配置文件,按以下步骤进行修改:

a.添加扩展

  只需去掉相应行前面的";"

  extension=php_curl.dll

  extension=php_gd2.dll

  extension=php_mbstring.dll

  extension=php_mysqli.dll

  extension=php_pdo_mysql.dll

  extension=php_pdo_odbc.dll

  extension=php_xmlrpc.dll

b.配置目录

  修改扩展目录,请提前在php目录下创建custom文件夹,然后在custum文件夹下再创建两个子文件夹,分别为upload和session

  ; On windows:
  extension_dir = "D:/Program Files/apmServer/php-7.0.2-Win32-VC14-x64/ext"

    修改上传目录

  ; http://php.net/upload-tmp-dir
  upload_tmp_dir ="D:/Program Files/apmServer/php-7.0.2-Win32-VC14-x64/custom/upload"

  修改session目录

  session.save_path = "D:/Program Files/apmServer/php-7.0.2-Win32-VC14-x64/custom/session"

2.apache配置

  打开apache目录下conf文件夹中的http.conf文件,按以下步骤修改配置:

a.设置apache服务器根目录

  Define SRVROOT "D:/Program Files/apmServer/httpd-2.4.18-x64-vc11/Apache24"
  ServerRoot "${SRVROOT}"

b.设置侦听端口

  Listen 80

默认是80,通过在netstat -ano命令查看系统80端口是否被占用,如果被占用,请更换一个没有被占用的端口

c.加载php模块

  在#LoadModule vhost_alias_module modules/mod_vhost_alias.so后面加上:

  LoadModule php7_module "D:/Program Files/apmServer/php-7.0.2-Win32-VC14-x64/php7apache2_4.dll"
  PHPIniDir "D:/Program Files/apmServer/php-7.0.2-Win32-VC14-x64/"
  AddType application/x-httpd-php .php .html .htm

注意:这里要是加载的php7模块

d.安装apache服务

  以管理员身份打开命令行cmd,进入apache的bin目录,输入命令:httpd -k install -n apache24, 显示安装成功,但是启动出错

  查看apache日志,发现只有这一行:

  [Sat Jan 23 20:33:04.958214 2016] [ssl:warn] [pid 7236:tid 344] AH01909: localhost:443:0 server certificate does NOT include an ID which matches the server name

  这是一个警告,并不是错误,似乎没有什么用

  打在服务,右键启动apache24,弹出启动失败错误提示:

  

  打开系统事件查看器查看系统日志,发现如下错误:

  

  还差最后步,这一步和其它版本不一样,我们需要给php添加环境变量,

  

  确定,启动apache24服务,成功。在浏览器里输入localhost回车

  

  如果看到这个页面,恭喜你,成功了。

3.MySQL配置

  a.修改配置文件

  将mysql目录下的my-default.ini文件复制一份,并命名为my.ini作为默认配置文件,主要配置如下: 

  [mysql]
    default-character-set=utf8

  [mysqld]

    basedir = "D:/Program Files/apmServer/mysql-5.7.10-winx64"

    datadir = "D:/Program Files/apmServer/mysql-5.7.10-winx64/data"
    port = 3306

    max_connections=200
    character-set-server=utf8
    default-storage-engine=INNODB
    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

b.安装sql服务

  添加环境变量: MYSQL_HOME   值为mysql目录的路径:

  

  给系统变量Path增加值:%MYSQL_HOME%\bin;

  从命令行cmd中进入mysql目录下的bin路径,执行命令 mysqld --install,执行命令net start mysql启动mysql服务,结果失败

  这是因为mysql5.7安装包中不带data文件夹,就算我们手动创建data文件夹,mysql启动还是失败,网上说可以从低版本的mysql中拷贝过来可以,本人没试。

  但是网上还有另一种方法:执行命令mysqld --initializ既可以自动创建data文件夹及需要的初始数据,亲测过可以。

c.测试mysql

  由于上一步中使用mysqld --initializ命令产生的数据中root账户的密码是随机的,所以我们没办法直接得到root的密码,也就不能登入使用mysql

  解决方法:

  打开my.ini配置文件,在最后加上这一行:#skip-grant-tables,即使用mysql时跳过授权表,也就是无需登录也能使用mysql。保存my.ini,重新启动mysql服务。

  在命令行中输入命令mysql,回车,进入mysql

  

  修改root密码:update user set password=password('your password') where user='root';
      不要忘记写入数据库: flush privileges;

  然后退出mysql,重新登录: mysql -u root -p,输入刚才设置的密码,回车成功。

  由于mysql的安全策略,此时还不能使用该账户执行其它操作,必须得重新改一次密码才可以。

  修改密码:SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');此时会让你输入旧密码才能执行。

  

  到此所有配置成功!

  总结2点与以前旧版本不一样的地方:

  1.php配置后需要增加系统变量

  2.mysql需要命令生成初始化数据,并且需要手动更改root密码   

  

win7 64bit下最新Apahe2.4.18+php7.0.2+MySQL5.7.10配置的更多相关文章

  1. tensor搭建--windows 10 64bit下安装Tensorflow+Keras+VS2015+CUDA8.0 GPU加速

    windows 10 64bit下安装Tensorflow+Keras+VS2015+CUDA8.0 GPU加速 原文见于:http://www.jianshu.com/p/c245d46d43f0 ...

  2. Win7 64bit下32bit的 ODBC 数据源问题

    win764位有数据源,但是如果我们在win7 64bit中使用32位的数据源的时候,我们就需要对其进行配置,很有趣的是,64为的数据源我们可以在控制面板——系统与安全——管理工具——数据源,进入可对 ...

  3. Win7系统下,docker构建nginx+php7环境实践

    前面两章介绍的是Windows系统下如何安装和配置docker,主要原因在于,公司大多人数用的是Windows环境,想通过在Windows环境上,通过docker,构建一个公用的配置. 首先要说明的是 ...

  4. Detour3.0 win7 64bit下的安装

    最近在做API hook相关的东西,用了inline hook后感觉不错,但是查找资料发现inline hook并不稳定 inline hook 的原理是在系统访问一个函数的时候先替换原函数入口处的内 ...

  5. Win7 64bit下值得推荐的免费看图软件

    自从更换到Win7 64bit后, 用了十多年的AcdSee3.x不能再正常工作了. 找到了两个替代品: Faststone Image Viewer 和 XnView Faststone Image ...

  6. windows 10 64bit下安装Tensorflow+Keras+VS2015+CUDA8.0 GPU加速

    原文地址:http://www.jianshu.com/p/c245d46d43f0 写在前面的话 2016年11月29日,Google Brain 工程师团队宣布在 TensorFlow 0.12 ...

  7. 在lnmp环境下,将原来的PHP7.0升级到PHP7.2

    基础环境: 系统:centos6.8   环境:lnmp 停止PHP7.0的版本,在做如下操作: 1.下载php-7.2.6.tar.bz2软件包放在/opt 路径下 mkdir /usr/local ...

  8. linux下使用yum安装新版php7.0

    这两天又装了一下虚拟机,又要编译lnmp,还要弄各种拓展,很麻烦,能不能直接yum安装呢?答案是可以的! 1.首先要更新yum源,不然是默认的老版本,一般都在5.6及以下,但是php7都出来好久了,性 ...

  9. win7,64bit下的OpenGL着色语言(glsl)开发环境配置(原)

    一.环境准备: 系统环境win7,64位,双显卡:集成显卡+gt540m,gt540建议下载最新的驱动,可以支持到opengl4.3标准,一般双显的笔记本,程序默认启用的是集显,我机器的集显驱动有点老 ...

随机推荐

  1. A标签执行js 代码和跳转

    5.执行JS代码: <a href="javascript:js代码">内容</a> ⑥.使用js来实现空链接 写法:<a href="ja ...

  2. ubuntu配置多个DNS

    Ubuntu设置了静态IP地址,设置DNS,打开/etc/resolv.conf cat /etc/resolv.conf# Dynamic resolv.conf(5) file for glibc ...

  3. mysql的时间函数

    from_unixtime()是MySQL里的时间函数 date为需要处理的参数(该参数是Unix 时间戳),可以是字段名,也可以直接是Unix 时间戳字符串 后面的 '%Y%m%d' 主要是将返回值 ...

  4. SMB/CIFS协议解析一概述

    一.SMB/CIFS协议的区别 在NetBIOS出现之后,Microsoft就使用NetBIOS实现了一个网络文件/打印服务系统,这个系统基于NetBIOS设定了一套文件共享协 议,Microsoft ...

  5. Java使用基本JDK操作ZIP文件以及zip文件的加密、解密等功能

    Java使用基本JDK操作ZIP文件 http://blog.csdn.net/zhyh1986/article/details/7723649 Java解压和压缩带密码的zip文件 http://b ...

  6. ACE_linux:任务 & 命令(Task and Command)

    1.涉及类 ACE_Task//ACE任务ACE_Activation_Queue//ACE命令队列 ACE_Method_Request//ACE请求(命令) 2.简介 ACE主动对象模式 主动对象 ...

  7. envi中多波段图层叠加layer stacking

    Basic Tools——layer stacking 选择投影和输出的文件 波段1-7波段图层都叠加在一个文件中了

  8. OFBiz进阶之HelloWorld(五)创建新实体

    参考文档 https://cwiki.apache.org/confluence/display/OFBIZ/OFBiz+Tutorial+-+A+Beginners+Development+Guid ...

  9. 详解Google-ProtoBuf中结构化数据的编码

    本文的主要内容是google protobuf中序列化数据时用到的编码规则,但是,介绍具体的编码规则之前,我觉得有必要先简单介绍一下google protobuf.因此,本文首先会介绍一些google ...

  10. ORA-15025: could not open disk 处理

    刚才下班回家的路上,接到客户的电话:"回家了吗?我们这边的一套RAC库有个节点有问题哦,一直刷异常,一下子就把磁盘弄满了,我现在停掉了那个节点了.从日志上看好像跟权限有关,现在还有个实例跑着 ...