由于最近新找的工作要求php,所以在电脑上安装搭建了PHP环境。主要参考了这篇文章http://www.leapsoul.cn/?p=695(之前第一次搭建时由于版本问题没有弄好)
1、先装apache
下的是httpd-2.2.25-win32-x86-openssl-0.9.8y.msi,直接安装就可以了。在完成apache服务的安装后,在游览器中输入http://localhost/,出现It’s work!字样,说明Apache服务安装成功了。
2、安装php
下的是php-5.3.27-Win32-VC9-x86.zip(官网上虽然说了用apache的话,应该下VC6,但VC6在官网上都没有了,VC9看来也支持apache)。安装php只要解压就可以了,然后把里面的php.ini-development重命名为php.ini,这个就是配置文件了,需要修改这个文件里的一些默认设置。
2.1、找到; extension_dir = "ext"
改成 extension_dir = "C:/php/ext",表示指定PHP扩展包的具体目录,以便调用相应的DLL文件。
2.2、由于默认PHP并不支持自动连接Mysql,需开启相应的扩展库功能,比如php_mysql.dll等,即将
;extension=php_curl.dll
;extension=php_gd2.dll
;extension=php_mbstring.dll
;extension=php_mysql.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_odbc.dll
;extension=php_xmlrpc.dll
前面的分号去掉。(可以对应ext文件夹里的dll文件,把存在的扩展功能都开启)
2.3、配置PHP的Session功能
在使用session功能时,我们必须配置session文件在服务器上的保存目录,否则无法使用session,我们需要在Windows 7上新建一个可读写的目录文件夹,此目录最好独立于WEB主程序目录之外。
找到;session.save_path = "/tmp"
改成session.save_path = "D:/myphpsessiontmp"
2.4、配置PHP的文件上传功能
同session一样,在使用PHP文件上传功能时,必须要指定一个临时文件夹以完成文件上传功能,否则文件上传功能会失败,所以需要在建立一个可读写的目录文件夹。
找到;upload_tmp_dir =
改成upload_tmp_dir = "D:/myphpfileuploadtmp"
2.5、修改date.timezone,否则在执行date函数时会报warning。
找到;date.timezone =
改成date.timezone = Asia/Shanghai
(开始我改成Beijing,结果date会报warning,改成Shanghai后就正常了)
3、配置Apache以支持PHP
在apache的安装目录如E:\Program Files\Apache Software Foundation\Apache2.2\conf文件夹里的httpd.conf里
找到#LoadModule vhost_alias_module modules/mod_vhost_alias.so,在它下面添加
LoadModule php5_module "e:/php/php5apache2_2.dll"
PHPIniDir "e:/php"
AddType application/x-httpd-php .php .html .htm
(其中“e:/php/php5apache2_2.dll”根据具体路径和dll名而定,"e:/php"就是php的解压后路径)
4、配置Apache来修改WEB主程序目录
默认Apache服务器执行WEB主程序的目录为Apache2.2/htdocs,如果希望变更WEB主程序目录时,需要修改相应的Apache配置,
在httpd.conf里
找到DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs"
改成DocumentRoot "E:/myphpWeb"
找到<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs">
改成<Directory "E:/myphpWeb">
最后还可以修改具体的index文件先后顺序,如优先执行index.php,在httpd.conf里
找到DirectoryIndex index.html
改成DirectoryIndex index.php index.html
至此,在Apache服务器上PHP环境配置工作就完成了,在开始--所有程序里就可以看到Apache Http Server了,在其下可以开启、关闭、重启apache了。重启Apache服务器,在E:/myphpWeb目录下新建一个PHP文件,写入
<?
phpinfo()
?>
然后在游览器中输入http://localhost,就可以看到PHP的具体配置页面了,代表在Window 7上PHP环境配置工作就算完成了。
5、安装mysql
下的是mysql-essential-5.1.71-win32.msi,直接双击安装,安装过程中会有一些不同安装选项供选,一般可以选中等性能的选项,有一个是选择服务端口号,默认是3306,我装的时候选了以后会提示3306已经被占用,再重新选3307就可以了。还有要选默认的字符集,我选的是gbk。然后是设置root用户密码。我安装的时候在最后一步processing configuration...的时候遇到了一个问题,运行到第三个start service时显示一个红叉,提示“can't creat windows service for mysql...”。网上搜索以后用下列方法解决了:先在控制面板-管理工具-服务里停止mysql服务,在cmd中运行sc delete my sql,再在mysql安装程序中退回到上一步重新安装就可以了。
mysql也有一个配置文件my.ini,如果今后有什么需要改动,可以修改此文件。
测试PHP是否能连接Mysql,你可以在index.php中创建如下代码:
<?php
$connect=mysql_connect("127.0.0.1","root","password");
if(!$connect) echo "Mysql Connect Error!";
else echo "mysql connect ok";
mysql_close();
?>
在游览器中输入http://localhost/,如果看到:mysql connect ok就说明PHP连接Mysql成功了。
补充:
后来在mac安装apache和php后,出现一个问题:apache无法识别出<?php标记,在浏览器中查看发现变成了<!--?php 。。。-->变成注释了,解决方法如下:
在apache的配置文件httpd.conf中查找:
去掉下面一行前的#号:
#LoadModule php5_module libexec/apache2/libphp5.so
并添加:
<IfModule mod_php5.c>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
</IfModule>
补充:在mac的客户端中输入mysql命令,提示如下错误:
bash: mysql: command not found
假设mysql的执行文件所在的目录为/usr/local/mysql/bin/mysql,注意这个路径是包含bin的,把存有mysql可执行文件的路径添加到系统路径中即可。
可以使用下面的方式把它添加到系统路径中:
1.打开终端,输入: cd ~
会进入~文件夹
2.然后输入:touch .bash_profile
回车执行后,
2.再输入:open -e .bash_profile
会在TextEdit中打开这个文件(如果以前没有配置过环境变量,那么这应该是一个空白文档)。如果有内容,请在结束符前输入,如果没有内容,请直接输入如下语句:
export PATH=${PATH}:/usr/local/mysql/bin
然后,保存,退出TextEdit(一定是退出),关闭终端并重启,mysql命令就能正常使用了。