php533配置教程完全整理版.docx
《php533配置教程完全整理版.docx》由会员分享,可在线阅读,更多相关《php533配置教程完全整理版.docx(9页珍藏版)》请在冰点文库上搜索。
![php533配置教程完全整理版.docx](https://file1.bingdoc.com/fileroot1/2023-4/29/62dea609-b7a2-440b-b998-2b98aca6a6d4/62dea609-b7a2-440b-b998-2b98aca6a6d41.gif)
php533配置教程完全整理版
Windows下PHP5.3.3开发环境的配置
作者:
霡霂
PHPerYY新手群:
2076727
(注:
YY多玩的语音聊天工具YY,而不是腾讯的QQ群)
在windows操作系统下搭建PHP与安装其他的一些软件工具不同。
因为PHP是从Linux操作系统移植过来的一种语言,不仅在开发环境上尽量保留Linux的特点,(Apache是Linux下的Web服务器,地位就像Windows下的IIS。
Mysql是Linux系统中捆绑的数据库,且三者都是开源免费,发展迅速,功能越来越强大的项目。
是编程建站,项目开发,居家旅行的必备良药……脑袋抽筋了一下……我们言归正传……)在安装上也保留了linux上的印记。
除了正常的安装外,还要在各自的配置文件(.ini、.conf)中进行专门的设置。
废话少说,现在开始我们的PHP之旅……
第一步:
下载安装的文件
1.MySQL:
下载地址mysql-5.1.50-win32.msi;
2.Apache:
下载地址httpd-2.2.16-win32-x86-no_ssl.msi;
3.PHP5.3.3下载地址php-5.3.3-Win32-VC6-x86
注意:
一定要下载php-5.3.3-Win32-VC6-x86版本的,不要下载php-5.3.3-nts-Win32-VC6-x86版本,更不要下载VC9版本的,因为VC9是专门为IIS定制的,VC6是为了其他WEB服务软件提供的,如Apache。
Apache服务器又有openssl和no_ssl之分,openssl表示带有openssl模块,利用openssl可给Apache配置SSL安全链接。
关于更多PHP、Mysql安装版本的问题,可以本文后的附录
第二步:
安装文件
1.在要安装的磁盘建一个文件夹(笔者的做法是在D盘的根目录下创建一个php文件夹D:
\php)。
2.安装Apache服务器,安装完成后的目录结果是:
D:
\php\Apache。
(就是把Apache服务器安装在D:
\php\Apache文件夹里,这个安装目录是可以自定义的,是Apache的安装目录。
)
3.把下载的php-5.3.3-Win32-VC6-x86解压的D:
\php目录中,可以把文件夹的名字改短,结果D:
\php\php5
4.安装MySql数据库,它的安装和一般情况一样。
笔者把他安装在(D:
\php\MySQL)和php同目录。
其实关于安装Apache服务器以及Mysql数据库的图文教程网络上有很多,笔者在这里一笔带过。
第三步:
配置PHP5.3.3
1.配置PHP5.3.3,打开php安装目录(笔者是D:
\php\php5)可以看到目录下有两个这样的文件php.ini-development和php.ini-production,第一个是开发使用的配置文件,第二个是标准的生产环境的配置,选择前者借即可。
2.选择php.ini-development复制一份到同目录下,并改名为php.ini使用文本工具打开。
查找
1
2
;Onwindows:
;extension_dir="ext"
可以看到两个;extension_dir="ext",选择Onwindows:
下面的那个并去掉前面的分号;,修改为
1
2
;Onwindows:
extension_dir="C:
/php/ext"
表示指定PHP扩展包的具体目录,以便调用相应的DLL文件。
注释:
网络上有一些配置教程要求把php.ini复制到系统盘的windows文件夹下,笔者经过Windows7下的测试,没有必要,如果读者仍有疑虑,也可将php,ini放在windows文件夹下,呵呵。
3.php默认许多功能和扩展是关闭的,默认PHP并不支持自动连接Mysql,需开启相应的扩展库功能。
查找
1
2
3
4
5
6
7
;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
把extension前面的分号去掉。
注释:
网络上有些配置的教程是把php/ext内的这几个DLL文件拷贝到系统盘的system32文件夹下,原理都是一样的,这里是在php.ini文件中开启扩展程序,PHP5能够通过php.ini配置文件的配置自动识别DLL程序扩展,不用多此一举。
查找short_open_tag=Off把它修改成short_open_tag=On,让其支持短标签。
注释:
如果希望加载其他模块,方法相同,去掉前面的分号。
关于PHP的扩展库问题,我们待会还要讨论。
在更新配置时,最好备份php.ini文件,避免不必要的麻烦。
4.配置PHP的Session功能
(对于PHPer新手来说,这一步,以及开启文件上传扩展,调整时差问题,一开始可能不太常用,在以后的PHP学习中,在学到Session功能的应用时,相关资料上会有如何配置的介绍,以后霡霂也会更新和PHP配置高级应用的文章。
)
在使用session功能时,我们必须配置session文件在服务器上的保存目录,否则无法使用session,我们需要在Windows7上新建一个可读写的目录文件夹,此目录最好独立于WEB主程序目录之外,此处我在D盘根目录上建立了phpsessiontmp目录,然后在php.ini配置文件中找到
1
;session.save_path="/tmp"
改为
1
session.save_path="D:
/phpsessiontmp"
5.复制php5ts.dll文件到WINDOWS/system32目录下。
这步是保证系统能都识别PHP5,并能够正确的解释执行PHP脚本。
注释:
只有php-5.3.3-Win32-VC6-x86版本中才有php5ts.dll,
php-5.3.3-nts-Win32-VC6-x86版本是没有的。
第四步:
配置Apache
1.打开Apache目录下conf目录中的httpd.conf文件,查找#LoadModule,在其末尾处大概是128行的地方(提示,如果读者找不到128在什么位置,也没什么关系,确切的位置是#LoadModulevhost_alias_modulemodules/mod_vhost_alias.so下,也可以下载一个Notepad++,作为文本编辑软件,也可以用来编辑PHP脚本)
添加:
LoadModulephp5_module"D:
/php/php5/php5apache2_2.dll"
PHPIniDir"D:
/php/php5"
AddTypeapplication/x-httpd-php.php
AddTypeapplication/x-httpd-php.htm
AddTypeapplication/x-httpd-php.html
目录结构根据用户自己目录配置,在更改配置时最好先备份原文件。
2.修改具体的index文件先后顺序,由于配置了PHP功能,当然需要index.php优先执行
查找DirectoryIndexindex.html将其修改成
1
DirectoryIndexindex.phpdefault.phpindex.htmlindex.htmdefault.html
default.htm
配置这里是指在打开页面默认直接打开的页面,就好像我们登陆网站的主页,一般打开的都是名为index.php或者index.html的页面。
3.我们知道Apache默认服务器执行WEB主程序的目录为Apache2.2/htdocs,所以当你的WEB主程序目录变更时,我们需要修改相应的Apache配置,查找DocumentRoot将其修改为指向你需要放置web文件的文件夹上(笔者在D:
/php目录中创建了一个www文件夹)所以DocumentRoot就是DocumentRoot"D:
/php/www",读者可以根据自己配置来修改。
在安装Mysql时,也会出现提示,让读者选择数据库文件的存放位置,为了防止开发网站程序后期,上传网站程序时(一般自己建站都是租用虚拟主机)出现不必要的麻烦,建议把数据库表文件放在与PHP网页源码同一级的文件夹中,例如D:
/php/SQldata。
4.查找/php/www">)
第五步:
测试php+Apache+MySql是否配置成功
1.打开MySql在MySql中创建一个新数据库和表。
(笔者是userInfo数据库和users表就有id和name两个字段)
测试吗?
简单就好,呵呵!
!
2.在上面创建的www文件夹中创建一个index.php文件使用EditPlus(又一个文本编辑器)或者其他文本工具打开。
3.写入:
代码如下:
$DB_HOST="localhost";
$DB_USER="root";
$DB_PASS="root";
$DB_NAME="userInfo";
mysql_connect($DB_HOST,$DB_USER,$DB_PASS);
mysql_select_db($DB_NAME);
mysql_query("setNAMESgb2312");
$sql="Select*Fromusers";
$result=mysql_query($sql);
while($data=mysql_fetch_array($result)){
echo"------------------------";
echo$data['id']."
";
echo$data['name']."
";
}
mysql_close();
?
>
注释:
关于测试的代码还有很多,但是都大同小异……
笔者在这里再介绍两个源码,分别这是PHP配置和Mysql数据库是否关联成功
源码1:
PHP5配置相关信息
php
phpinfo();
?
>
源码2:
Mysql数据库是否关联成功
php
$link=mysql_connect("127.0.0.1","root","pwd");
//root为默认数据库用户名,pwd是你设置的数据库密码
if($link!
=false)
{
echo"成功连接mysql服务器";
}
else
{
echo"与本地Mysql服务器连接失败";
}
mysql_close();
?
>
4.启动Apache服务器,在浏览器输入http:
//localhost/回车。
如果进入相关页面,可以看到PHP的配置信息Mysql链接成功的页面:
表示我们大功告成了!
祝贺祝贺!
注释:
PHP对中文支持不好,文件名和文件夹名最好用字母或英文。
几点声明:
1、关于PHP扩展库的问题
PHP5一直在不断的升级更新,总体上围绕着性能、安全与新特新,不断为开发者提供新的动力。
PHP提供了一些扩展库使PHP如虎添翼,更加灵活方便,如网上社区、BBS论坛等,如果没有扩展库的支持,他们都可能无法使用,因此在安装PHP时要根据以后的用途安装配置,本文只是对一些常用的配置进行了简单说明,PHP的配置读者可以在PHP的学习过程中不断的了解掌握!
从PHP5开始,PHP就新增了内置的标准扩展库:
XML扩展库-Dom、SimpleXML、SPL、SQLite等,而像Mysql、Mysqli、Overload、GD2等这些库则被放在PECL外部扩展库中,需要时在php.ini配置文件中通过配置相关内容,选择加载。
Windows下加载扩展库,是通过修改配置文件php.ini文件来完成的。
用户也可以在脚本中通过使用dl()函数来进行动态加载,PHP扩展库的DLL文件都具有php_前缀。
很多扩展库都内置于Windows版本的PHP中,要加载这些扩展库不需要额外的DLL文件和extension配置指令。
因此,在编辑php.ini文件和PHP的深入学习时,应当注意以下几点:
1)需要修改extension_dir设置以指向用户放置扩展库的目录或者放置php_*.dll文件的位置,一般扩展库的文件的位置都在PHP的安装目录下。
第三步中的第2步,即为此。
2)要在php.ini文件中启用某些扩展库,需要去掉extension=php_*.dll前的注释符号,即将需要加载的扩展库前的分号“;”删除。
3)有的扩展库需要额外的DLL才能工作,其中一部分DLL文件包括在发行包中(PHP5中在主目录下),但有一些,如Oracle所需要的DLL(php_oci8.dll)没有绑定在发行包中,如果安装PHP5需要将绑定的DLL从C:
\php5\dlls复制到主目录C:
\php中,值得注意的是将C:
\php5放到系统路径PATH中去。
4)某些DLL没有绑定在PHP发行包中,PECL中有日益增加,数目巨大的PHP扩展库,这些扩展库需要单独下载。
所以在开发网站程序,需要加载扩展库时,一定要搞清楚所要加载的扩展库的信息,是内置扩展库(前面提到,不需要额外的DLL文件和extension配置指令)还是属于PECL的外置扩展库,因该怎样加载才能最为可靠方便:
配置php.ini文件;复制DLL文件到指定的目录中去;使用dl()函数动态加载。
由于phpini文件的配置以及扩展库的使用的确让小白和菜菜们有些为难,现在不能完全掌握,这并不妨碍你对PHP的学习,关于这些内容,是应该在以后深入学习PHP过程中逐渐加深理解直至精通掌握的,大可不必为此而耿耿于怀!
学习PHP最重要的就是掌握它的基础语法,才能循序渐进,才刚刚接触网络编程语言就急着想知道数据库的问题,想把php.ini的配置、php扩展库的使用理解清楚,是舍本逐末的做法,试问,你把这些弄的通透了,有何用处。
2、关于本文,本文是笔者在学习PHP之余写的分享交流的文章,肯定有不足之处,其实PHP技术也是在不断的弥补不足,互相交流的基础上发展起来的。
笔者只是想通过自己的努力,解决PHPer新手在学习中遇到的问题,使大家少走弯路。
PHPerYY新手群:
2076727,欢迎各路编程好手,高手,菜菜,小白,以及对PHP及开源事业热衷支持的平民大众。
附录:
PHP5.3下载时VC9、VC6、ThreadSafe、NonThreadSafe是什么意思。
在PHP官网上新版的PHP,ForWindows的一共给了四个版本:
VC9x86NonThreadSafe、
VC9x86ThreadSafe、
VC6x86NonThreadSafe、
VC6x86ThreadSafe
这让霡霂头疼啊,还好PHP官网提供下载的地方左边有个英文choose我看懂了,我估摸着就是如何来选择版本的意思吧,于是开始查字典及上网查找,终于看明白了具体意思,拿来分享给大家先。
一、如何选择PHP5.3的VC9版本和VC6版本
VC6版本是使用VisualStudio6编译器编译的,如果你的PHP是用Apache来架设的,那你就选择VC6版本。
VC9版本是使用VisualStudio2008编译器编译的,如果你的PHP是用IIS来架设的,那你就选择VC9版本。
二、如何选择PHP5.3的ThreadSafe和NonThreadSafe版本
先从字面意思上理解,ThreadSafe是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。
NonThreadSafe是非线程安全,在执行时不进行线程(Thread)安全检查。
再来看PHP的两种执行方式:
ISAPI和FastCGI。
ISAPI执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI来执行PHP,建议选择ThreadSafe版本;
而FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以FastCGI(无论搭配IIS6或IIS7)执行PHP,都建议下载、执行non-threadsafe的PHP(PHP的二进位档有两种包装方式:
msi、zip,请下载zip套件)。
FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以FastCGI(无论搭配IIS6或IIS7)执行PHP,都建议下载、执行non-threadsafe的PHP(PHP的二进位档有两种包装方式:
msi、zip,请下载zip套件)。
所以,对于PHP5.2选择ThreadSafe版本安装,而对于PHP5.3则下载None-ThreadSafe,执行PHP比较有效率。
Mysql数据库版本的TheEssentialsPackage
不包含embeddedserverandbenchmarksuite,有自动安装程序和配置向导,没有MySQLDocumentation。
TheCompletePackage:
包含embeddedserverandbenchmarksuite,有自动安装程序和配置向导,有MySQLDocumentation。
TheNoinstallArchive:
包含embeddedserverandbenchmarksuite,没有自动安装程序和配置向导,有MySQLDocumentation。
参考:
ForMySQL5.0,therearethreeinstallationpackagestochoosefromwheninstallingMySQLonWindows:
TheEssentialsPackage:
Thispackagehasafilenamesimilartomysql-essential-5.0.40-win32.msiandcontainstheminimumsetoffilesneededtoinstallMySQLonWindows,includingtheConfigurationWizard.Thispackagedoesnotincludeoptionalcomponentssuchastheembeddedserverandbenchmarksuite.
TheCompletePackage:
Thispackagehasafilenamesimilartomysql-5.0.40-win32.zipandcontainsallfilesneededforacompleteWindowsinstallation,includingtheConfigurationWizard.Thispackageincludesoptionalcomponentssuchastheembeddedserverandbenchmarksuite.
TheNoinstallArchive:
Thispackagehasafilenamesimilartomysql-noinstall-5.0.40-win32.zipandcontainsallthefilesfoundintheCompleteinstallpackage,withtheexceptionoftheConfigurationWizard.Thispackagedoesnotincludeanautomatedinstaller,andmustbemanuallyinstalledandconfigured.
TheEssentialspackageisrecommendedformostusers.Itisprovidedasan.msifileforusewiththeWindowsInstaller.TheCompleteandNoinstalldistributionsarepackagedasZiparchives.Tousethem,youmusthaveatoolthatcanunpack.zipfiles.
Yourchoiceofinstallpackageaffectstheinstallationprocessyoumustfollow.IfyouchoosetoinstalleithertheEssentialsorCompleteinstallpackages,seeSection2.4.8.2,“InstallingMySQLwiththeAutomatedInstaller”.IfyouchoosetoinstallMySQLfromtheNoinstallarchive,seeSection2.4.8.5,“InstallingMySQLfromaNoinstallZipArchive”.