原文: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. 关于delete

    上面三图在debug下,delete的时候会以fe ee覆盖指针所指向要回收内存前后较大一块区域的值. 下图对于release下delete的时候会先用fe ee覆盖指针所指位置起6*4=24字节, ...

  2. 坑爹系列:sizeof运算符

    C语言里的sizeof关键字用于返回变量的类型宽度(变量所占的字节个数).例如: #include <stdio.h> int main() { int i = 0; int size = ...

  3. Poj OpenJudge 百练 1860 Currency Exchang

    1.Link: http://poj.org/problem?id=1860 http://bailian.openjudge.cn/practice/1860 2.Content: Currency ...

  4. linux环境下配置github远程仓库

    1.设置git用户和邮箱 git config --global user.name "fujinzhou" git config --global user.email &quo ...

  5. DTcms 扩展字段标签调用

    前台模版: 文章列表:{dr[author]} 文章内容{model.fields[author]} 点击数 后台CS文件:model.fields["author"].ToStr ...

  6. WinForms 实现气泡提示窗口

    [实例说明] 气泡提示因为他的美观又好被大多数用户所接收,用户所喜爱的就是程序员要实现的. 本实例实现了任务栏气泡提示,运行本实例,效果图如下所示: 单击提示.气泡提示就会显示,单击“关闭”气泡又会消 ...

  7. YII千万级PV架构经验分享--俯瞰篇--业务扩展演变

    hello,大家好,我是方少,世上不如意事十有八九吧,即使你感到很满意,也有人感觉太差了,总得感觉我们技术人员都是一个人在战斗,感情却是最深的,一起吃过苦才难忘吧.娇妻艳女,你失意了会和你一起吃苦吗? ...

  8. Chrome浏览器安装插件提示(net::ERR_NAME_NOT_RESOLVED)

    在chrome的webstore中安装currently插件.使用goagentFQ后能正常访问,但出现"net::ERR_NAME_NOT_RESOLVED"错误. 该错误的含义 ...

  9. 深入浅出话XAML-学习笔记

    第一章 XAML是什么? 1.1XAML之前 *设计师的设计更不上程序逻辑的变化 *程序员未能完全实现设计师提供的效果图 *效果图与程序功能不能完全匹配 *从效果图到软件UI的转化耗费很多时间 1.2 ...

  10. Kinetic使用注意点--lable

    new Lable(config) 参数: config:包含所有配置项的对象. { x: "横坐标", y: "纵坐标", width: "宽度&q ...