win7系统配置php+Apache+mysql环境的方法


Posted in PHP onAugust 21, 2015

B/S架构当下很流行,因为B/S架构有众多优点,例如:用户只需有浏览器就可使用,维护升级都比较方便,跨平台,等等。本文就讲讲Windows+Apache+PHP+Mysql的开发环境如何配置。

如何在win7系统下配置php环境呢,php+Apache+mysql都是在配置过程中必不可少的元素,php负责解析php代码,apache负责服务器端而mysql是数据交互的中转站。

那么如何将php+apache+mysql配置好呢,接下来我们看一下具体的方法,软件版本会改变所以需要自己因时制宜,随机应变。

第一步:

php-5.5.10-Win32-VC11-x64.zip 下载地址: http://windows.php.net/download/

httpd-2.4.7-win64-VC11.zip 下载地址: http://www.apachelounge.com/download/

mysql-5.6.16-winx64.zip 下载地址: http://dev.mysql.com/downloads/mysql/

第二步:

安装配置Apache2.4.7(httpd-2.4.7-win64-VC11.zip )

1、解压下载的安装包:httpd-2.4.7-win64-VC11.zip将其放到自己的安装目录(我的目录D:\phpEnv\Apache24)

win7系统配置php+Apache+mysql环境的方法

2.然后对http.conf(D:\phpEnv\Apache24\conf\http.conf)配置文件进行修改-使用记事本打开就行

     (1)修改ServerRoot Apache的根路径:

        (37行)ServerRoot"c:/Apache24"改成=>ServerRoot "D:/phpEnv/Apache24"

     (2)修改ServerName你的主机名称:

        如果此行不修改则启动apache 提示Starting httpd: AH00558

        (217行)ServerName www.example.com:80将前面的#去掉,该属性在从命令行启动Apache时需要用到。

     (3)修改DocumentRoot Apache访问的主文件夹目录,就是php、html代码文件的位置。Apache默认的路径是在htdocs(D:\phpEnv\Apache24\htdocs)下面,里面会有个简单的入口文件index.html。这个路径可以自己进行修改,我这里将其配置在我自己新建的文件夹www(D:\phpEnv\www)下。

          (247行) DocumentRoot "c:/Apache24/htdocs"

        <Directory "c:/Apache24/htdocs">

改为=>

        DocumentRoot "D:\phpEnv\www"
        <Directory "D:\phpEnv\www">

    (4)修改入口文件配置:DirectoryIndex一般情况下我们都是以index.php、index.html、index.htm作为web项目的入口。Apache默认的入口只有index.html需要添加其他两个的支持,当然这个入口文件的设置可以根据自己的需要增减,如果要求比较严格的话可以只写一个index.php,这样在项目里面的入口就只能是index.php

        (274行)<IfModule dir_module> 

        DirectoryIndex index.html
       </IfModule>

改为=>

       <IfModuledir_module>
        DirectoryIndex  index.php index.htm index.html
        </IfModule>

   (5)设定serverscript的目录:

        (358行)ScriptAlias/cgi-bin/ "c:/Apache24/cgi-bin/"改为=> ScriptAlias/cgi-bin/ "D:/phpEnv/Apache24/cgi-bin"

  (6)(380行)

        <Directory "c:/Apache24/cgi-bin">
          AllowOverride None
          Options None
          Require all granted
        </Directory>

改为=>

        <Directory "D:/phpEnv/Apache24/cgi-bin">
          AllowOverride None
          Options None
          Require all granted
        </Directory>

3、接下来就可以启动Apache了

开始---运行,输入cmd,打开命令提示符。接着进入D:\phpEnv\Apache24\bin目录下回车httpd回车,如图所示.

没有报错的话就可以测试了(保持该命令窗口为打开的状态)。

    把Apache24\htdocs目录下的index.html放到D:\phpEnv\www目录下,用浏览器访问会出现“It works”那么就说明apache已经正确安装并启动了。也可以自己写一个简单的index.html文件也可以打开。

win7系统配置php+Apache+mysql环境的方法

4、将Apache加入到window服务启动项里面并设置成开机启动

先关闭httpd的服务(将命令窗口关闭即可)

重新打开一个新的命令窗口进入到D:\phpEnv\Apache24\bin目录下:

添加HTTP服务的命令是:httpd.exe -kinstall -n "servicename"  servicename是服务的名称,我添加的是:httpd.exe -k install -n "Apache24"命令成功后会有成功的提示,此时你可以在window服务启动项中看到Apache24这个服务

然后点击启动就可以了,如果不想设置成开机启动的话也可以将启动类型修改为手动。

如果要卸载这个服务的话,先要停止这个服务,然后输入httpd.exe -k uninstall -n "Apache24"卸载这个服务。

当然也可以通过D:\phpEnv\Apache24\bin下面的ApacheMonitor.exe来启动Apache这里就不多说了

如此Apache的配置就基本完成了。

 win7系统配置php+Apache+mysql环境的方法

二、安装配置php5.5.10(php-5.5.10-Win32-VC11-x64.zip)

1、将下载的php-5.5.10-Win32-VC11-x64.zip  解压到安装目录下我的是(D:\phpEnv\php)

2、将目录下的php.ini-development文件复制一份并改名为php.ini他是php的配置文件

3、为Apache服务添加php支持

打开Apache的配置文件http.conf在最后加上

# php5 support
LoadModule php5_module “D:/phpEnv/php/php5apache2_4.dll”
AddHandler application/x-httpd-php .php
AddType application/x-httpd-php .html .htm
# configure thepath to php.ini
PHPIniDir "D:/phpEnv/php"

这里我添加在LoadModule下面

添加的时候要保证你的php5apache2_4.dll文件确实存在php5.5的早期版本里面是没有这个文件的,不过高点版本里面已经有了,可以打开php安装目录找下这个文件

PHPIniDir"D:/phpEnv/php"这个就是你的php根目录

win7系统配置php+Apache+mysql环境的方法

4.重启Apache服务器。

5.测试。

删除www中其他文件,新建一个index.php,内容为<?php phpinfo(); ?>保存,访问出现php的信息就说明php已经成功安装。

备注:

Php的一些常用配置修改:(D:\phpEnv\php\php.ini)

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

错误报告等级:error_reporting = E_ALL这个在开发模式下可以全部打开。

三、安装配置mysql5.6.16(mysql-5.6.16-winx64.zip)

1、安装mysql

64位的mysql暂时没找到msi的安装包,因此直接解压到安装目录下,然后配置相关的环境变量,修改配置文件,添加window服务就行,这里就不详细写了。这里把我的配置文件贴出来给大家参考下:  

[mysqld]
  loose-default-character-set = utf8 
  basedir = D:/program/mysql-5.6
  datadir = D:/program/mysql-5.6/data
  port = 3306
  sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 
  character_set_server = utf8
  [client]  
  loose-default-character-set = utf8

注:basedir是mysql的根目录,datadir是mysql的数据存储目录。其他的我就不做解释了

安装完mysql是没有图形用户界面的,可以安装个Navicat for MySQL之类的软件,这样看起来会比较方便点。

将mysql注册成为服务:mysqld.exe --install mysql

将mysql服务进行删除:mysqld.exe --remove mysql

2、安装完成mysql之后,为php添加mysql支持

打开php的配置文件php.ini(D:\phpEnv\php\php.ini)

(1)(721行); extension_dir = "ext",去掉前面的“;”,并改为extension_dir ="D:\phpEnv\php\ext"打开php的扩展支持,ext文件夹下有很多php的扩展支持.dll文件,感兴趣的同学可以看一下。

(2)然后就是打开php的mysql扩展了

    (875、876行)去掉前面的“;”

extension=php_mysql.dll
    extension=php_mysqli.dll

当然也可以打开881行的php_pdo_mysql.dll启用php的pdo支持我一般都用这个。

注:在第863行到第888行有很多扩展选择,你要用到什么,去掉前面的“;”就可以了。当然如果要添加其他的扩展支持如redis支持,php本身可能没有提供相应的dll文件,就需要自己去找到相应版本的dll添加到ext文件夹中,然后在配置文件中添加一个extension=…

完成之后,重启Apache

3)、启动MySQL服务

net start mysql

MySQL服务正在启动 .
MySQL服务无法启动。

4)、登陆MySQL服务器

mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.32-community MySQL Community Edition (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>

注意:MySQL的管理员用户名为root,密码默认为空。

5)、查看数据库

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
+--------------------+
3 rows in set (0.02 sec)

可以看到MySQL服务器中有三个数据库。

6)、使用数据库

mysql> use test
Database changed

7)、查看数据库中的表

mysql> show tables;
Empty set (0.00 sec)

8)、创建表ttt

mysql> create table ttt(a int,b varchar(20)); 
Query OK, 0 rows affected (0.00 sec)

9)、插入三条数据

mysql> insert into ttt values(1,'aaa'); 
Query OK, 1 row affected (0.02 sec)
mysql> insert into ttt values(2,'bbb'); 
Query OK, 1 row affected (0.00 sec)
mysql> insert into ttt values(3,'ccc'); 
Query OK, 1 row affected (0.00 sec)

10)、查询数据

mysql> select * from ttt;
+------+------+
| a | b |
+------+------+
| 1 | aaa |
| 2 | bbb |
| 3 | ccc |
+------+------+
3 rows in set (0.00 sec)

11)、删除数据

mysql> delete from ttt where a=3;
Query OK, 1 row affected (0.01 sec)

删除后查询操作结果:

mysql> select * from ttt; 
+------+------+
| a | b |
+------+------+
| 1 | aaa |
| 2 | bbb |
+------+------+
2 rows in set (0.00 sec)

12)、更新数据

mysql> update ttt set b = 'xxx' where a =2;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0

查看更新结果:

mysql> select * from ttt; 
+------+------+
| a | b |
+------+------+
| 1 | aaa |
| 2 | xxx |
+------+------+
2 rows in set (0.00 sec)

13)、删除表

mysql> drop table ttt; 
Query OK, 0 rows affected (0.00 sec)

查看数据库中剩余的表:

mysql> show tables;
Empty set (0.00 sec)

三、更改MySQL数据库root用户的密码

1、使用mysql数据库

mysql> use mysql
Database changed

2、查看mysql数据库中所有的表

mysql>show tables; 
+---------------------------+
| Tables_in_mysql |
+---------------------------+
| columns_priv |
| db |
| func |
| help_category |
| help_keyword |
| help_relation |
| help_topic |
| host |
| proc |
| procs_priv |
| tables_priv |
| time_zone |
| time_zone_leap_second |
| time_zone_name |
| time_zone_transition |
| time_zone_transition_type |
| user |
+---------------------------+
17 rows in set (0.00 sec)

3、删除mysql数据库中用户表的所有数据

mysql> delete from user; 
Query OK, 3 rows affected (0.00 sec)

4、创建一个root用户,密码为"xiaohui"。

mysql>grant all on *.* to root@'%' identified by 'xiaohui' with grant option; 
Query OK, 0 rows affected (0.02 sec)

5、查看user表中的用户

mysql> select User from user; 
+------+
| User |
+------+
| root |
+------+
1 row in set (0.00 sec)

6、重启MySQL:更改了MySQL用户后,需要重启MySQL服务器才可以生效。

net stop mysql

MySQL 服务正在停止..
MySQL 服务已成功停止。

net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。

7、重新登陆MySQL服务器

mysql -uroot -pxiaohui 
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.32-community MySQL Community Edition (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>

如果修改密码后net startmysql出现不能启动mysql的1067错误,则可以使用以下办法解决:
使用cmd命令:D:\Appserv\mysql\bin\mysqladmin -uroot -p shutdown,然后输入密码,再net start mysql 就没有这个错误提示了!

四、数据库的创建与删除

1、创建数据库testdb

mysql> create database testdb;
Query OK, 1 row affected (0.02 sec)

2、使用数据库testdb

mysql> use testdb;
Database changed

3、删除数据库testdb

mysql> drop database testdb; 
Query OK, 0 rows affected (0.00 sec)

4、退出登陆

mysql>exit 
Bye

C:\Documents and Settings\Administrator>

五、操作数据库数据的一般步骤

1、启动MySQL服务器

2、登陆数据库服务器

3、使用某个要操作的数据库

4、操作该数据库中的表,可执行增删改查各种操作。

5、退出登陆。

以上内容讲述了win7系统配置php+Apache+mysql环境的方法,希望大家喜欢。

PHP 相关文章推荐
一个很不错的PHP翻页类
Jun 01 PHP
PHP用身份证号获取星座和生肖的方法
Nov 07 PHP
PHP获取当前url的具体方法全面解析
Nov 26 PHP
php_screw安装使用教程(另一个PHP代码加密实现)
May 29 PHP
百度地图API应用之获取用户的具体位置
Jun 10 PHP
新浪SAE云平台下使用codeigniter的数据库配置
Jun 12 PHP
PHP闭包函数详解
Feb 13 PHP
php接口技术实例详解
Dec 07 PHP
PHP命名空间namespace的定义方法详解
Mar 29 PHP
php静态成员方法和静态的成员属性的使用方法
Oct 26 PHP
PHP中引用类型和值类型功能与用法示例
Feb 26 PHP
PHP中PCRE正则解析代码详解
Apr 26 PHP
php生成图片验证码-附五种验证码
Aug 19 #PHP
以实例全面讲解PHP中多进程编程的相关函数的使用
Aug 18 #PHP
深入探究PHP的多进程编程方法
Aug 18 #PHP
使用PHP和JavaScript判断请求是否来自微信内浏览器
Aug 18 #PHP
PHP的命令行命令使用指南
Aug 18 #PHP
使用PHP生成图片的缩略图的方法
Aug 18 #PHP
Nginx服务器上安装并配置PHPMyAdmin的教程
Aug 18 #PHP
You might like
SONY ICF-F10中波修复记
2021/03/02 无线电
Windows和Linux中php代码调试工具Xdebug的安装与配置详解
2014/05/08 PHP
php相对当前文件include其它文件的方法
2015/03/13 PHP
php根据一个给定范围和步进生成数组的方法
2015/06/19 PHP
PHP7之Mongodb API使用详解
2015/12/26 PHP
php使用crypt()函数进行加密
2017/06/08 PHP
PHP单例模式与工厂模式详解
2017/08/29 PHP
给网站上的广告“加速”显示的方法
2007/04/08 Javascript
JavaScript中Math对象方法使用概述
2014/01/02 Javascript
jquery移除、绑定、触发元素事件使用示例详解
2014/04/10 Javascript
javascript的日期对象、数组对象、二维数组使用说明
2014/12/22 Javascript
JS实现漂亮的时间选择框效果
2016/08/20 Javascript
Bootstrap 3浏览器兼容性问题及解决方案
2017/04/11 Javascript
JS正则验证多个邮箱完整实例【邮箱用分号隔开】
2017/04/19 Javascript
解决React Native端口号修改的方法
2017/07/28 Javascript
vue移动端实现下拉刷新
2018/04/22 Javascript
微信小程序学习笔记之目录结构、基本配置图文详解
2019/03/28 Javascript
JS实现指定区域的全屏显示功能示例
2019/04/25 Javascript
vue 使用axios 数据请求第三方插件的使用教程详解
2019/07/05 Javascript
小程序登录之支付宝授权的实现示例
2019/12/13 Javascript
Python实现爬取百度贴吧帖子所有楼层图片的爬虫示例
2018/04/26 Python
Django组件之cookie与session的使用方法
2019/01/10 Python
python的re模块使用方法详解
2019/07/26 Python
Python大数据之从网页上爬取数据的方法详解
2019/11/16 Python
在tensorflow中实现去除不足一个batch的数据
2020/01/20 Python
使用keras和tensorflow保存为可部署的pb格式
2020/05/25 Python
希尔顿酒店中国网站:Hilton中国
2017/03/11 全球购物
EJB3.1都有哪些改进
2012/11/17 面试题
教育基金募捐倡议书
2014/05/14 职场文书
农村门前三包责任书
2014/07/25 职场文书
2016自主招生教师推荐信范文
2015/03/23 职场文书
搞笑结婚保证书
2015/05/08 职场文书
格列佛游记读书笔记
2015/06/30 职场文书
22句经典语录:送给优柔寡断和胡思乱想的朋友们
2019/12/13 职场文书
windows系统搭建WEB服务器详细教程
2022/08/05 Servers
CSS使用Flex和Grid布局实现3D骰子
2022/08/05 HTML / CSS