windows下PHP APACHE MYSQ完整配置


Posted in PHP onJanuary 02, 2007

经过最近一段时间狂热的PHP编程,对WINDOWS平台下PHP的配置可算是深有感触,一开始我用的是一键安装的傻瓜包,但是考虑傻瓜包的安装版本已经落后,在真正手动配置PHP环境时遇到许多问题,在查阅了许多资料和尝试后,终于配置成功。现在,我将我的配置经验和大家分享一下,相信可以解决大家配置PHP环境的迷惑。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

首先说一下我用的软件版本。

PH<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />P 5.1.6

APACHE 2.0.59(注意:APACHE 2.2.X版本以上必须安装插件才支持PHP 5)

MYSQL 5.0.24a

 

  好了,现在开始安装,我先装的php5,直接解压文件到C:\php安装到哪里并不会有影响,凭个人喜号,本文中的所有路径都以我的安装路径,请大家在自己的机器上安装的时候注意修改为自己的路径),接着安装APACHE,我直接把它装到C盘根目录下,在安装过程中,会出现3个文本框,上面两个输入你的本机IP,最下面的输入你的EMAIL,好的。安装完毕。现在编辑..\Apache Group\Apache2\conf\下的httpd.conf文件。用记事本打开该文件,在最后添上这两行代码:

LoadModule php5_module "C:/php/php5apache2.dll"
AddType application/x-httpd-php .php

 

  我在C:\目录下建立了一个www的目录用于存放我的站点文件,在httpd.conf里找到这样一句话:DocumentRoot "C:/Apache2/htdocs"改成了DocumentRoot "C:/www"。这样,就将主目录设置成了C:\www。如果你不想更改主目录位置,可以不更改此项。

 

  修改目录的默认首页:
找到DirectoryIndex 后面写上你想设置为首页的文件名,如:index.html index.php等。

 

  语言优先级,找到下列语句

  LanguagePriority zh-CN zh-TW en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv
把中文(zh-CN zh-TW)的部分剪切放到前面(也就是将原来文件中的相应
部分改成如上的。

 

其他也没什么好改动的。APACH的配置就到这里。接着讲PHP的配置。

 

php.ini-dist复制到C:\windows 下改名为 php.ini(装过php的都做过吧)
然后修改了几个地方:

 

 

Data Handling下找到post_max_size = 8M

这是PHP将接受的POST数据最大大小,可更改为20M

 

Paths and Directories下找到extension_dir=

这里设置的是PHP搜索扩展库的位置,将其路径设为extensions文件夹的位置,即改成:

extension_dir= "C:\php\ext"

 

File Uploads下找到upload_max_filesize = 2M,允许上传的的最大文件大小

可更改为20M

 

Dynamic Extensions
这里是PHP扩展设置部分,列出了PHP所有的可支持扩展,前面都加了分号注
释,表示目前PHP配置不支持扩展,我们可以将分号去掉让PHP支持该扩展
下面列出的是几个常用且较实用的PHP扩展
把下面几句前面的分号去掉

;extension=php_mbstring.dll
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_filepro.dll
;extension=php_gd2.dll
;extension=php_imap.dll
;extension=php_mysql.dl
l

到这里php.ini就配置结束。接着很重要的一点将

C:\PHP\libmysql.dllC:\PHP\ext\php_mysql.dllC:\PHP\ext\php_mysqli.dll

拷贝到C:\Windows\system32下,这样PHP5才能支持MYSQL

  重起APACHE,在主目录下新建一个记事本文件test在里面输入

<?php

phpinfo();

?>

保存后修改后缀名为PHP。在浏览器输入http://127.0.0.1/test.php是不是看到PHP版本信息,没错,这样PHP的配置就完成了。接下来安装MYSQL

 

第一步:双击.exe文件出现的第一个需要选择的对话框是Setup Type 也就是
安装种类,这里我们可以选择Custom,根据自己的需要来安装组件和配置安装路径

点击Next,右键点击对话框出现几个硬盘形状的图标,根据自己的需要选择安装组件,

点击窗口右下的Change按钮更改安装路径的,设置好后,点击Next开始安装安装到最
后会有如下一个对话框在这里的三个选项分别是:

1:如果你没有MYSQL.com帐户,选第一个,创造一个新的免费的MYSQL.com帐户

2:如果你有MYSQL.com帐户,选第二个,填入已经注册好的邮箱名和密码

3:跳过此步骤

我们选第一个

接下来会一次出现三个对话框,在三个对话框中有* 号的部分是必须要填的,
按顺序分别是邮箱名,密码,确认密码;first name last name;邮政编码,
国家,省名。国家名选china,省名选other or N/A即可4.1.x4.0.x系列版
本很大一个区别就是在安装完毕后不是运行 mysql文件夹下面的winmysqladmin.exe
启动服务器后设置选项,而是有一个设置的过程。

第二步:设置MYSQL

首先你会看到这样的一个窗口,这里有两个选项,分别是详细配置和标准配置,
小型应用选第二项就可以了点击Next后出现下面的对话框,这里是重要的,一定
要在下拉菜单里选择MySQL41,否则不能正常启动,下面的选项是是否应用命令行,
最好选上点击Next后设置数据库密码的对话框,中间偏右和下面的选项分别是是否
允许远程控制和是否允许匿名帐号登入,为了安全,不要选择好了,点击Next后出
现最后的对话框,点击Execute按钮数据库服务器便启动了,依次出现四个对号后
点击Finish结束安装

  装上PHPMYADMIN后测试连接,若出现

#1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client
开始菜单找到刚刚安装的MYSQL命令行工具,输入root的密码后键入如下的字样:
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD(‘刚才设置的ROOT密码')
-> WHERE Host = 'localhost' AND User = 'root';
mysql> FLUSH PRIVILEGES;(
注意FLUSH后有空格)

然后浏览“http://localhost/phpmyadmin”OH YEAH 测试成功!

 

  在谈一下关于MYSQL 4.1以后由于采用UTF8导致的乱码问题解决办法。首先注意一点,在新建数据库的时候字符集一定要选择UTF8,在PHPMYADMIN中新建数据库下,创建按钮的左边,有个下拉列表,默认是“整理”,选择UTF8。你会发现表里数据不在是问号了。

但是网页的输出还是问号,不要急接着在PHP语句中要有所改动:

mysql_connect(…连接参数);后加上mysql_query("SET NAMES 'GBK'");linux 下GBK改为UTF8

但是如果网页很多,这样不是很麻烦,所以我在编写PHP时将所有数据库的操作写成一个类如:

class db{

.包含一些数据库调用方法….

  //创建数据库连接并选择相应数据库

       function createcon(){

           mysql_connect();mysql_query("SET NAMES 'GBK'");

}

}

这样,改动一处就可以了,是不是很方便?呵呵,相信大家看完这篇文章就在也不觉的PHP环境难配置了,好了,写这么多,累死了,祝大家学习愉快!

PHP 相关文章推荐
测试您的 PHP 水平的题目
May 30 PHP
由php if 想到的些问题
Mar 22 PHP
PHP下常用正则表达式整理
Oct 26 PHP
用C/C++扩展你的PHP 为你的php增加功能
Sep 06 PHP
PHPMailer的主要功能特点和简单使用说明
Feb 17 PHP
smarty自定义函数htmlcheckboxes用法实例
Jan 22 PHP
PHP  实现等比压缩图片尺寸和大小实例代码
Oct 08 PHP
PHP输出多个元素的排列或组合的方法
Mar 14 PHP
实例讲解PHP页面静态化
Feb 05 PHP
php伪静态验证码不显示的解决方案
Sep 26 PHP
php命令行模式代码实例详解
Feb 26 PHP
PHP对接阿里云虚拟号的实现(号码隐私保护)
Apr 06 PHP
PHP Ajax实现页面无刷新发表评论
Jan 02 #PHP
PHP+AJAX实现无刷新注册(带用户名实时检测)
Jan 02 #PHP
新手学PHP之数据库操作详解及乱码解决!
Jan 02 #PHP
默默小谈PHP&amp;MYSQL分页原理及实现
Jan 02 #PHP
默默简单的写了一个模板引擎
Jan 02 #PHP
超强分页类2.0发布,支持自定义风格,默认4种显示模式
Jan 02 #PHP
PHP小技巧搜集,每个PHPer都来露一手
Jan 02 #PHP
You might like
优化php效率,提高php性能的一些方法
2011/03/24 PHP
PHP设置进度条的方法
2015/07/08 PHP
Symfony2联合查询实现方法
2016/03/18 PHP
JS Excel读取和写入操作(模板操作)实现代码
2010/04/11 Javascript
Js参数值中含有单引号或双引号问题的解决方法
2013/11/06 Javascript
JavaScript中的正则表达式简明总结
2014/04/04 Javascript
JQuery插件iScroll实现下拉刷新,滚动翻页特效
2014/06/22 Javascript
JavaScript 学习笔记之语句
2015/01/14 Javascript
jQuery中animate动画第二次点击事件没反应
2015/05/07 Javascript
纯JavaScript基于notie.js插件实现消息提示特效
2016/01/18 Javascript
JS中多种方式创建对象详解
2016/03/22 Javascript
详解vue-Resource(与后端数据交互)
2017/01/16 Javascript
vue-cli的webpack模板项目配置文件分析
2017/04/01 Javascript
利用jsonp与代理服务器方案解决跨域问题
2017/09/14 Javascript
vue获取input输入值的问题解决办法
2017/10/17 Javascript
微信小程序自定义头部导航栏和导航栏背景图片 navigationStyle问题
2019/07/26 Javascript
JavaScript事件委托实现原理及优点进行
2020/08/29 Javascript
python内存管理分析
2015/04/08 Python
为Python的web框架编写MVC配置来使其运行的教程
2015/04/30 Python
Python中处理字符串之endswith()方法的使用简介
2015/05/18 Python
使用Pyinstaller的最新踩坑实战记录
2017/11/08 Python
详解pandas库pd.read_excel操作读取excel文件参数整理与实例
2019/02/17 Python
PyQt5显示GIF图片的方法
2019/06/17 Python
Pycharm新手教程(只需要看这篇就够了)
2019/06/18 Python
Python中list的交、并、差集获取方法示例
2019/08/01 Python
Pytorch自己加载单通道图片用作数据集训练的实例
2020/01/18 Python
python匿名函数lambda原理及实例解析
2020/02/07 Python
容易被忽略的Python内置类型
2020/09/03 Python
五年后的职业生涯规划
2014/03/04 职场文书
公司联欢晚会主持词
2014/03/22 职场文书
农林经济管理专业自荐信
2014/09/01 职场文书
选调生挂职锻炼工作总结
2015/10/23 职场文书
2016暑期社会实践心得体会范文
2016/01/14 职场文书
解决pycharm安装scrapy DLL load failed:找不到指定的程序的问题
2021/06/08 Python
用Python实现屏幕截图详解
2022/01/22 Python
python绘制云雨图raincloud plot
2022/08/05 Python