php5.3.1和Apache2.2安装配置问题

来源:互联网 发布:中国帮非洲知乎 编辑:程序博客网 时间:2024/06/05 00:42

一,配置php

1.下载正确的版本,注意php有很多版本,要下载vc6的ts(thread safe)版本,这个版本的才能和Apache结合使用。

2.解压下来的里的php-ini-development改名为php-ini.(另一个是php-ini-production,这里不用这个,这个发布用的)

  修改这个文件中的一些项:

      a.找到;extension_dir 去掉前面的“;”然后加上“d:/php/ext”。这里的“d:/”表示php的安装路径。

      b.找到extension列表,去掉前面的分号开启服务,常用的有

        extension=php_gd2.dll

        extension=php_mbstring.dll

        extension=php_mysql.dll
extension=php_mysqli.dll

        extension=php_xsl.dll

3.配置环境变量

  在path里加“;”后加上“d:\php;d:\php\ext”。重启

二,安装apache

三,php部署到Apache

    打开Apache安装文件里conf文件夹下的httpd.conf文件

    找到DocumentRoot,把它修改成你网站得根目录,如“DocumentRoot "E:\Apache2\htdocs 

    如果安装Apache的时候选择默认安装,没有指定站点路径,同时查找”<Directory”,将<Directory “D:/dev/Apache2.2/htdocs”>更改为:
<Directory “E:\Apache2\htdocs”>


查找DirectoryIndex index.html index.html.var 在后面加入index.php

    查找#LoadModule ssl_module modules/mod_ssl.so 令起一行加入LoadModule php5_module c:\php\php5apache2.dll(这里要注意Apache的版本,我的是2.2,所以就要选c:\php \php5apache2_2.dll)
查找AddType application/x-gzip.gz.tgz后面加入一行AddType application/x-httpd-php  .php(注意x-httpd-php和.php之间的空格)

这里基本算配置完了,如果配置正常则可以进行测试,重启Apache。

---------------------------

我安装的时候,将php安装到了D:\Program Files下,所以启动apache的时候,报错"httpd.exe: Syntax error on line 62 of D:/Program Files/Apache Software Foundation/Apache2.2/conf/httpd.conf: LoadModule takes two arguments, a module name and the name of a shared object file to load it from.." 。百度了一下,由于program files 之间有空格,而apache将此处的空格作为参数分隔符,导致报错的。

解决方法:

1)目录中不带空格即可

2)只要了解 Windows 為了相容之前 8.3 的檔名時,超過的部份可以用 ~ 代替,範例如下:

LoadModule php4_module C:\Progra~1\PHP\php5apache2_2.dll

只是 ~ 後面接的編號會依 8.3 相容檔名的重覆先後次序而有所不同,甚這點是要注意的。像如果超過 9 ,可能就會變成 Progr~10