PHP+MYSQL+APACHE配置详细解析
原文地址:http://blog.chinaunix.net/u/13606/showart_72056.html
一、使用软件:
apache_2.0.52-win32-x86-no_ssl
php-5.0.2-Win32
mysql-4.0.21-win
phpMyAdmin-2.6.0
配置环境: Windows Xp sp2
二、具体步骤
注意事项:安装过程,任何目录和文件名都不要使用空格,
不要使用 D:\Program Files 而要使用 D:\ProgramFiles
1. apache_2.0.52-win32-x86-no_ssl
apache 服务器软件,我下载的是 win 版本, 2.0 系列的配置都是相似的。
双击安装 apache2.0.52, 我把它安装到 D:\ApacheGroup 注意,目录名不要包含空格,否则下面设置 php 会出错。安装结束后, apache 自动运行,在浏览器里输入 http://127.0.0.1 是不是显示出了默认的网页,如果你不希望看到这个页面,可以到 D:\ApacheGroup\Apache2\conf 目录下找到 httpd.conf 打开编辑,并查找 DocumentRoot " 在 2.0 系列的版本中,只会找到一个 DocumentRoot " ,把引号内的路径改为你自己的路径就可以了,比如 DocumentRoot "D:/php" 现在默认的根目录就是 D:/php 注意这里用的是“ / ”。
2 、安装 php5.0.2
下载过来的 php-5.0.2-Win32 一般是个 zip 格式的压缩包,解压缩到 D:\ApacheGroup 目录下,并使文件都在一个文件夹下,改文件夹名为 php5 ,这样方便接下来的工作。现在我们看到 D:\ApacheGroup 下面已经有两个文件夹了, 一个是 apache2( 安装 apache2.0.52 自动生成的一个文件夹 ) 另一个是 php5 ,我的方式是每一个软件一个文件夹,并且这些文件夹在同一目录下, 这样便于查找。 好了,我们现在开始配置 apache 使它支持 php5 .
首先,找到 D:\ApacheGroup\php5 目录下的 php.ini-dist 重命名为 php.ini 并复制到 C:\WINDOWS 目录下,
然后,复制 D:\ApacheGroup\php5 目录下的 php5ts.dll,libmysql.dll 到 C:\windows\system
接下去,我们开始配置 D:\ApacheGroup\Apache2\conf 下的 httpd.conf 文件,打开 httpd.conf ( 可用记事本打开 )
①找到 AddDefaultCharset ISO-8859-1 将其改为 AddDefaultCharset GB2312 (让默认语言编码为简体中文)
②找到 DirectoryIndex index.html index.html.var 在后面加入 index.htm index.php index.php3
-------------- 模块化安装配置 ------------------------------------
找到 #LoadModule ssl_module modules/mod_ssl.so 这行,在此行后加入一行
LoadModule php5_module D:/ApacheGroup/php5/php5apache2.dll
其中 D:/ApacheGroup/php5/ 为你 php 目录
查找 #AddEncoding x-gzip .gz .tgz
在下面的行中加入 AddType application/x-httpd-php .php .phtml .php3 .php4
即增加解析文件类型为 php.phtml.php3.php4
这里要做的主要有两个,一个是复制 php.ini 到系统盘,另一个就是配置 httpd.conf 使其支持 php5 ,这里要求绝对路径中,例如 D:/ApacheGroup/php5/ 中间不能出现空格,否则 apache2.0.52 将出错!
好了,现在看看你的 apache 是不是已经支持 php 了呢,呵呵,成功了吧!
3 、安装 mysql-4.0.21-win
因为在 win 环境下配置 apache 所以,这里用的 mysql 也是 win 版本的。解压缩之后,安装 mysql4.0.21 到 D:/ApacheGroup/ 目录下,并使 mysql 完整的安装到 mysql 目录下(可以在选择安装路径的更改文件夹名字),好了,装 mysql 没什么具体要求,主要是下一步的配置。首先启动 mysql (如果已经启动自然不用再去启动了,看看任务栏有没有小绿灯就知道了)再提一下,现在我的 mysql 已经安装到 D:\ApacheGroup\Mysql 目录下了, 那么进入 D:\ApacheGroup\Mysql\bin 找到 winmysqladmin.exe 双击, mysql 自动启动运行。好了。开始配置 php.ini 了。进入 C:\WINDOWS 打开 php.ini 找到 extension_dir = "./" 改为 extension_dir = "D:/ApacheGroup/php5/ext"
找到
;extension=php_mysql.dll
将 ';' 去掉改为
extension=php_mysql.dll
找到
;session.save_path = "/tmp"
将 ';' 去掉 设置你保存 session 的目录,如
session.save_path = " D:/ApacheGroup/php5/session_temp";
好了,到这里已经成功了!
4 、 phpMyAdmin-2.6.0 的配置
将 phpMyAdmin-2.6.0.zip 解压到自己定义的 WEB 根目录中去,重命名文件夹为 phpmyadmin 或其它
打开 phpmyadmin 目录中的 config.inc.php
找到
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '123456';
分别填上你 mysql 的用户和密码即可
超级实用补充:
1. php.ini 配置
register_globals = On
有些程序需要该项支持,否则无法上传文件
2. 禁止浏览目录 ( 不推荐,请看下面高级配置中的设置 )
去掉 httpd.conf 里所有的 indexes 去掉
用户将无法看到目录列表
3 、设置虚拟目录
编辑 httpd.conf 文件 , 在该文件中加一行 Alias /test/ "c:/php/test/"
4. 允许浏览特定的虚拟目录
Alias /test/ "D:/php/test/"
<Directory "D:/php/test/">
Options Indexes FollowSymLinks
</Directory>
将以上代码写入 httpd.conf 文末
说明:
行 1 :映射虚拟目录 test 到真实物理路径 D:/php/test
行 3 :即 Options Indexes FollowSymLinks 允许浏览虚拟目录 test 下的文件
5 、一点关于 apache2.0.52 的全局配置
ServerAdmin webmaster@****.net 设置为管理员的邮件地址
ServerName www.****.net:80 主机名(域名、 IP 地址均可)及端口地址
DocumentRoot “ D:/php ” 网站根目录
DirectoryIndex index.php index.html index.htm index.php3 index.html.var 加入默认文档
ServerTokens Full 显示服务器信息, Full 为全部, Prod 为最少,建议设置为 Prod ,不容易暴露服务器信息
AddType application/x-httpd-php .php .phtml .php3 .php4 加入对 php 、 phtml 、 php3 、 php4 文件的支持
好了,大功告成,呵呵,好好庆祝一番去!
谢丹峰 @zucc 2004-10-22
紧接上面的设置:
Apache 高级附加功能:
1. 配置 ActivePerl-5.8.4.810-MSWin32-x86( 以支持 cgi/pl)
双击下载过来的 ActivePerl-5.8.4.810-MSWin32-x86.exe 安装到 D:\ApacheGroup\Perl 目录下(最好安装到 c:\usr )为了便于文件管理,我把 perl 安装到了 D:\ApacheGroup\Perl 目录下。
下面开始设置 httpd.conf 使 cgi/pl 正常工作:
(1) 寻找 AddHandler cgi-script .cgi 后面加上 .pl , 即 AddHandler cgi-script .cgi .pl
(2) 如果还想增加 SSI ,需把下面几行前面的 # 号去掉(没有的自己加入)。
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
AddHandler server-parsed .shtml
还要注意 perl 脚本中的 perl 解释路径,必需把所有 cgi 或 pl 文件头的默认的 #! /usr/Perl/bin/perl.exe ( perl.exe 所在目录)改为 #!D:/ApacheGroup/Perl/bin/perl.exe (即你自己的 perl.exe 所在的目录,这样服务器才能找到 perl 编译器) ,如果使用 c:\usr 目录安装就不需要更改,强烈建议普通用户把 perl 安装在 c:\usr 目录下。在下面要设置 cgi/pl 所在目录为可浏览的,这么才能正确解析。
这里有一个重点就是 perl.exe 所在的目录,安装在 c:\usr 目录下,可以减少很多不必要的设置(比如,设置每个 cgi/pl 文件头的 #! /usr/Perl/bin 当然也可以使用 ultraedit32 来进行批量更改,我就是这样做的!)
目录安全设置:查找 <Directory /> 找到形如
<Directory />
Options None
AllowOverride None
</Directory>
# 以上部分设置为全局设置,即禁止所有目录的浏览。
# 以下允许特定的目录浏览。很重要,设置正确才能正常运行 cgi/pl
# 上面红字部分的 None 表示禁止所有目录浏览,如果是 All 就是允许目录浏 # 览 。要使 cgi/pl 正常运行,必须使 cgi/pl 程序所在目录能够浏览,比如我的 php 文件在 D:/php/zld/ 目录下,那么只要这个目录允许浏览,文件头指向正确就可以正常显示 cgi 页面了。
下面是具体步骤:
# 在 httpd.conf 文末加上
Alias /zld/ " D:/php/zld/"
# 设置 D:/php/zld/ 目录为虚拟目录,映射到网站根目录下为 /zld/
# 如果 D:/php/zld/ 如果你的 web 主目录设置在 D:/php/ 那么就不用设置虚拟
# 路径了,直接添加下面的内容就可以了!
<Directory "D:/php/zld/">
# 这里两个 Directory 尖括号的内容是用来定义 cgi/pl 程序所在的 D:/php/zld/ 目录可浏览
# D:/php/zld/ 可为其他目录
AllowOverride All
Options All
Order allow,deny
Allow from all
</Directory>
即设置 cgi/pl 程序所在目录在网站根目录下为可浏览 (cgi/pl 程序不能直接放在根目录下,必需处于二级目录或更下一级目录 )
这里已经设置好 cgi/pl 程序所在目录为可浏览了,好了,现在已经实现了禁止虚拟目录的浏览,又实现了特定目录可浏览,这样就可以正常运行 cgi/pl 程序。
这里重点就是要在 httpd.conf 里添加 AddHandler cgi-script .cgi .pl
再就是使 cgi/pl 程序所在目录在网站根目录下可浏览就好了!最后每个 cgi/pl 文件头的 perl.exe 路径一定要正确!
2. ZendOptimizer255Windows-i386 的安装 ( 优化 php 性能 )
双击下载过来的 ZendOptimizer255Windows-i386.exe 进行安装,在安装过程会出现选择 apache 的安装目录和 php.ini 所在目录,一般能够自动识别,如果不能请手动查找,安装完毕后会自动启动,不需要任何设置!该软件能够自动设置 php.ini 以进行 php 执行程序的优化!
检验:编制 php 页面:代码如下
<?php
phpinfo();
?>
保存为 info.php
运新 info.php 即可得知是否使用了 zend 引擎!
一、使用软件:
apache_2.0.52-win32-x86-no_ssl
php-5.0.2-Win32
mysql-4.0.21-win
phpMyAdmin-2.6.0
配置环境: Windows Xp sp2
二、具体步骤
注意事项:安装过程,任何目录和文件名都不要使用空格,
不要使用 D:\Program Files 而要使用 D:\ProgramFiles
1. apache_2.0.52-win32-x86-no_ssl
apache 服务器软件,我下载的是 win 版本, 2.0 系列的配置都是相似的。
双击安装 apache2.0.52, 我把它安装到 D:\ApacheGroup 注意,目录名不要包含空格,否则下面设置 php 会出错。安装结束后, apache 自动运行,在浏览器里输入 http://127.0.0.1 是不是显示出了默认的网页,如果你不希望看到这个页面,可以到 D:\ApacheGroup\Apache2\conf 目录下找到 httpd.conf 打开编辑,并查找 DocumentRoot " 在 2.0 系列的版本中,只会找到一个 DocumentRoot " ,把引号内的路径改为你自己的路径就可以了,比如 DocumentRoot "D:/php" 现在默认的根目录就是 D:/php 注意这里用的是“ / ”。
2 、安装 php5.0.2
下载过来的 php-5.0.2-Win32 一般是个 zip 格式的压缩包,解压缩到 D:\ApacheGroup 目录下,并使文件都在一个文件夹下,改文件夹名为 php5 ,这样方便接下来的工作。现在我们看到 D:\ApacheGroup 下面已经有两个文件夹了, 一个是 apache2( 安装 apache2.0.52 自动生成的一个文件夹 ) 另一个是 php5 ,我的方式是每一个软件一个文件夹,并且这些文件夹在同一目录下, 这样便于查找。 好了,我们现在开始配置 apache 使它支持 php5 .
首先,找到 D:\ApacheGroup\php5 目录下的 php.ini-dist 重命名为 php.ini 并复制到 C:\WINDOWS 目录下,
然后,复制 D:\ApacheGroup\php5 目录下的 php5ts.dll,libmysql.dll 到 C:\windows\system
接下去,我们开始配置 D:\ApacheGroup\Apache2\conf 下的 httpd.conf 文件,打开 httpd.conf ( 可用记事本打开 )
①找到 AddDefaultCharset ISO-8859-1 将其改为 AddDefaultCharset GB2312 (让默认语言编码为简体中文)
②找到 DirectoryIndex index.html index.html.var 在后面加入 index.htm index.php index.php3
-------------- 模块化安装配置 ------------------------------------
找到 #LoadModule ssl_module modules/mod_ssl.so 这行,在此行后加入一行
LoadModule php5_module D:/ApacheGroup/php5/php5apache2.dll
其中 D:/ApacheGroup/php5/ 为你 php 目录
查找 #AddEncoding x-gzip .gz .tgz
在下面的行中加入 AddType application/x-httpd-php .php .phtml .php3 .php4
即增加解析文件类型为 php.phtml.php3.php4
这里要做的主要有两个,一个是复制 php.ini 到系统盘,另一个就是配置 httpd.conf 使其支持 php5 ,这里要求绝对路径中,例如 D:/ApacheGroup/php5/ 中间不能出现空格,否则 apache2.0.52 将出错!
好了,现在看看你的 apache 是不是已经支持 php 了呢,呵呵,成功了吧!
3 、安装 mysql-4.0.21-win
因为在 win 环境下配置 apache 所以,这里用的 mysql 也是 win 版本的。解压缩之后,安装 mysql4.0.21 到 D:/ApacheGroup/ 目录下,并使 mysql 完整的安装到 mysql 目录下(可以在选择安装路径的更改文件夹名字),好了,装 mysql 没什么具体要求,主要是下一步的配置。首先启动 mysql (如果已经启动自然不用再去启动了,看看任务栏有没有小绿灯就知道了)再提一下,现在我的 mysql 已经安装到 D:\ApacheGroup\Mysql 目录下了, 那么进入 D:\ApacheGroup\Mysql\bin 找到 winmysqladmin.exe 双击, mysql 自动启动运行。好了。开始配置 php.ini 了。进入 C:\WINDOWS 打开 php.ini 找到 extension_dir = "./" 改为 extension_dir = "D:/ApacheGroup/php5/ext"
找到
;extension=php_mysql.dll
将 ';' 去掉改为
extension=php_mysql.dll
找到
;session.save_path = "/tmp"
将 ';' 去掉 设置你保存 session 的目录,如
session.save_path = " D:/ApacheGroup/php5/session_temp";
好了,到这里已经成功了!
4 、 phpMyAdmin-2.6.0 的配置
将 phpMyAdmin-2.6.0.zip 解压到自己定义的 WEB 根目录中去,重命名文件夹为 phpmyadmin 或其它
打开 phpmyadmin 目录中的 config.inc.php
找到
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '123456';
分别填上你 mysql 的用户和密码即可
超级实用补充:
1. php.ini 配置
register_globals = On
有些程序需要该项支持,否则无法上传文件
2. 禁止浏览目录 ( 不推荐,请看下面高级配置中的设置 )
去掉 httpd.conf 里所有的 indexes 去掉
用户将无法看到目录列表
3 、设置虚拟目录
编辑 httpd.conf 文件 , 在该文件中加一行 Alias /test/ "c:/php/test/"
4. 允许浏览特定的虚拟目录
Alias /test/ "D:/php/test/"
<Directory "D:/php/test/">
Options Indexes FollowSymLinks
</Directory>
将以上代码写入 httpd.conf 文末
说明:
行 1 :映射虚拟目录 test 到真实物理路径 D:/php/test
行 3 :即 Options Indexes FollowSymLinks 允许浏览虚拟目录 test 下的文件
5 、一点关于 apache2.0.52 的全局配置
ServerAdmin webmaster@****.net 设置为管理员的邮件地址
ServerName www.****.net:80 主机名(域名、 IP 地址均可)及端口地址
DocumentRoot “ D:/php ” 网站根目录
DirectoryIndex index.php index.html index.htm index.php3 index.html.var 加入默认文档
ServerTokens Full 显示服务器信息, Full 为全部, Prod 为最少,建议设置为 Prod ,不容易暴露服务器信息
AddType application/x-httpd-php .php .phtml .php3 .php4 加入对 php 、 phtml 、 php3 、 php4 文件的支持
好了,大功告成,呵呵,好好庆祝一番去!
谢丹峰 @zucc 2004-10-22
紧接上面的设置:
Apache 高级附加功能:
1. 配置 ActivePerl-5.8.4.810-MSWin32-x86( 以支持 cgi/pl)
双击下载过来的 ActivePerl-5.8.4.810-MSWin32-x86.exe 安装到 D:\ApacheGroup\Perl 目录下(最好安装到 c:\usr )为了便于文件管理,我把 perl 安装到了 D:\ApacheGroup\Perl 目录下。
下面开始设置 httpd.conf 使 cgi/pl 正常工作:
(1) 寻找 AddHandler cgi-script .cgi 后面加上 .pl , 即 AddHandler cgi-script .cgi .pl
(2) 如果还想增加 SSI ,需把下面几行前面的 # 号去掉(没有的自己加入)。
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
AddHandler server-parsed .shtml
还要注意 perl 脚本中的 perl 解释路径,必需把所有 cgi 或 pl 文件头的默认的 #! /usr/Perl/bin/perl.exe ( perl.exe 所在目录)改为 #!D:/ApacheGroup/Perl/bin/perl.exe (即你自己的 perl.exe 所在的目录,这样服务器才能找到 perl 编译器) ,如果使用 c:\usr 目录安装就不需要更改,强烈建议普通用户把 perl 安装在 c:\usr 目录下。在下面要设置 cgi/pl 所在目录为可浏览的,这么才能正确解析。
这里有一个重点就是 perl.exe 所在的目录,安装在 c:\usr 目录下,可以减少很多不必要的设置(比如,设置每个 cgi/pl 文件头的 #! /usr/Perl/bin 当然也可以使用 ultraedit32 来进行批量更改,我就是这样做的!)
目录安全设置:查找 <Directory /> 找到形如
<Directory />
Options None
AllowOverride None
</Directory>
# 以上部分设置为全局设置,即禁止所有目录的浏览。
# 以下允许特定的目录浏览。很重要,设置正确才能正常运行 cgi/pl
# 上面红字部分的 None 表示禁止所有目录浏览,如果是 All 就是允许目录浏 # 览 。要使 cgi/pl 正常运行,必须使 cgi/pl 程序所在目录能够浏览,比如我的 php 文件在 D:/php/zld/ 目录下,那么只要这个目录允许浏览,文件头指向正确就可以正常显示 cgi 页面了。
下面是具体步骤:
# 在 httpd.conf 文末加上
Alias /zld/ " D:/php/zld/"
# 设置 D:/php/zld/ 目录为虚拟目录,映射到网站根目录下为 /zld/
# 如果 D:/php/zld/ 如果你的 web 主目录设置在 D:/php/ 那么就不用设置虚拟
# 路径了,直接添加下面的内容就可以了!
<Directory "D:/php/zld/">
# 这里两个 Directory 尖括号的内容是用来定义 cgi/pl 程序所在的 D:/php/zld/ 目录可浏览
# D:/php/zld/ 可为其他目录
AllowOverride All
Options All
Order allow,deny
Allow from all
</Directory>
即设置 cgi/pl 程序所在目录在网站根目录下为可浏览 (cgi/pl 程序不能直接放在根目录下,必需处于二级目录或更下一级目录 )
这里已经设置好 cgi/pl 程序所在目录为可浏览了,好了,现在已经实现了禁止虚拟目录的浏览,又实现了特定目录可浏览,这样就可以正常运行 cgi/pl 程序。
这里重点就是要在 httpd.conf 里添加 AddHandler cgi-script .cgi .pl
再就是使 cgi/pl 程序所在目录在网站根目录下可浏览就好了!最后每个 cgi/pl 文件头的 perl.exe 路径一定要正确!
2. ZendOptimizer255Windows-i386 的安装 ( 优化 php 性能 )
双击下载过来的 ZendOptimizer255Windows-i386.exe 进行安装,在安装过程会出现选择 apache 的安装目录和 php.ini 所在目录,一般能够自动识别,如果不能请手动查找,安装完毕后会自动启动,不需要任何设置!该软件能够自动设置 php.ini 以进行 php 执行程序的优化!
检验:编制 php 页面:代码如下
<?php
phpinfo();
?>
保存为 info.php
运新 info.php 即可得知是否使用了 zend 引擎!