日期:2014-05-16  浏览次数:20724 次

php连不上mysql的大概问题

1、下载Apache2.2.15,到http://archive.apache.org/dist/httpd/binaries/win32/里下载apache_2.2.15-win32-x86-no_ssl.msi ,安装方法挺简单,在network domain、server domain中输入localhost,填入管理员的邮箱地址,出现选择安装路径的界面,默认的路径比较长,我把安装路径修改为:“D:\Apache2.2\”,继续安装,直到完成。

???? 安装完毕,apache就自动启动,可以测试apache是否成功启动。在浏览器地址栏里输入:http://localhost/或http://127.0.0.1/,如果出现“It works.”,那么恭喜你,apache已经成功安装了;同时在电脑右下角的任务栏里有一个绿色的apache服务器运行图标。

2、apache在D:\Apache2.2\conf目录中有一个配置文件:httpd.conf 需要配置,以便php运行。

??? (1) 查找“DocumentRoot”,这里是指定主页放置的目录。默认是:“D:\Apache2.2\htdocs”,你可以使用默认的目录,也可以自己定义一个,如:“D:/PHP,这里我使用了默认的目录。
??? (2)查找“DirectoryIndex”,这里是默认首页文件名,可以在index.html 的后面加入index.php和index.jsp等。每种类型之间都要留一个空格。

?? (3)查找“<Directory />”,将“Deny from all”修改为“allow from all”。如果不改这里的话,可能会出现 You don't have permission to access / on this server. 这样的错误提示,尤其在改变了默认主页的路径后,我在这里浪费了很多时间啊。

????? 注意:每次修改httpd.conf文件后,都要重启apache服务器。另外,如果你的win32系统上同时也运行iis服务器,那么就要先停止iis服务器的运行,然后再启动apache,否则apache服务器无法启动。

3、配置php。

???? (1)从php官网上下载,地址http://windows.php.net/download/,下载php-5.2.13-Win32-VC6-x86.zip。

???? (2)将PHP的压缩包zip解压到一个目录下,我解压到了:“D:/PHP”

???? (3)将PHP目录(D:/PHP)下的 php.ini-dist 文件重命名为 php.ini,PHP的配置文件就是它,修改以下几个地方,修改好后把???? php.ini 文件复制到 C:\WINDOWS\ 目录里:
???? 修改1:在php.ini中查找修改extension_dir="D:\php\ext" ;

???? 修改2:doc_root="D:\PHP" ,这里要跟httpd.conf中的DocumentRoot一致;
??? 修改3:default_charset="UTF-8" ,修改默认字符集,这里,如果前面有分号“;”,去掉这个分号;
??? 修改4:register_globals=Off 改为 register_globals=On ,使传递全局变量有效;

??? 修改5:查找extension并修改
???? extension=php_dba.dll 如果前面有分号,取消分号,以下同;
??? extension=php_dbase.dll
??? extension=php_gd2.dll GD库做图,一般用于图形验证码;
??? extension=php_mysql.dll 用于连接MYSQL数据库;

4、将PHP目录下的 php5ts.dll 和php5apache2_2.dll文件拷贝到 C:\WINDOWS\system32 目录。

5、最后修改 Apache 的 httpd.conf 文件。在该文件#LoadModule ssl_module modules/mod_ssl.so后面添加

???? LoadModule php5_module D:/php/php5apache2_2.dll,在 AddType application/x-gzip .gz .tgz后面添加
???? AddType application/x-httpd-php .php。

???? 以上就完成了apache和php的配置过程了,重启apache。在服务器的默认目录“D:\Apache\htdocs”里新建文件index.php,写上如下代码:
<?php
phpinfo();
?>

7、表面上看,已经配置好了,如果你的apache是自己安装的,而不是用在php附带中安装完成的话,你读数据的时候会报错Fatal error: Call to undefined function mysql_connect()

????? 改错:在

??????? LoadModule php5_module D:/php/php5apache2_2.dll??? 在下面加上

??????? PHPIniDir "D:/php/php5"???????(这一行必须加,后面的三行可以选择)
??????? AddType application/x-httpd-php .php
??????? AddType application/x-httpd-php .htm
??????? AddType application/x-httpd-php .html