windows下apache搭建php开发环境
《PHP实例:windows下apache搭建php开发环境》要点: 本文详细介绍了在Windows2003下使用Apache2.2.21/PHP5.3.5/Mysql5.5.19/phpMyAdmin3.4.9搭建php开发环境.PHP教程 第一步:下载安装的文件PHP教程 1. Apache 版本 httpd-2.2.21-win32-x86-no_ssl.msi 2. MySQL 版本 mysql-5.5.19-win32.msi 3. PHP 版本 php-5.3.5-Win32-VC6-x86.zip 4. phpMyadmin 版本 phpMyAdmin-3.4.9-all-languages.zipPHP教程 提示: 1. 建议选择无SSL功能的Apache版本来完成开发,因此我们这里使用了Apache 2.2.21-win32-x86-no ssl.msi. 2. Windows下安装MySQL就选择.msi安装包格式,我们选择了mysql-5.5.19-win32.msi,双击根据向导安装即可,简单方便. 3. PHP我们选择用Windows的.zip版本,php-5.3.5-Win32-VC6-x86.zip.从安全性和性能来说,都是zip版本的好,一般服务器也都是安装这个版本的. ?? 不要下载NTS版本或VC9版本的,因为VC9是专门为IIS定制的,而VC6 是为Apache或其他WEB服务软件提供的. 4. phpMyAdmin是以PHP为基础的在线MySQL管理工具,在进行phpMyAdmin3 安装时需要的PHP环境至少为PHP5.2,MySQL5 以上的版本,我们这里都符合要求.PHP教程 第二步:安装文件PHP教程 1. 在要安装的磁盘建一个文件夹.为了管理方便我们在D盘的根目录下创建一个WAMP文件夹. D:WAMP(WAMP是 windows+apache+mysql+php的缩写). 2. 在WAMP文件夹下创建一个WWW文件夹,用来存放你的PHP网站程序.D:WAMPWWW. 3. 安装Apache服务器,把Apache服务器安装到 D:WAMPApache 文件夹.具体Apache安装过程可以参考文档 Apache安装图解. 4. 把下载的php-5.3.5-Win32-VC6-x86解压到 D:WAMPPHP 文件夹. 5. 安装MySql数据库,把MySQL安装到 D:WAMPMySQL文件夹.具体MySQL安装过程可以参考文档 MySQL安装图解. 6. 解压phpMyAdmin-3.4.9-all-languages.zip,然后重命名为phpMyAdmin,将其复制到PHP网站程序目录.结果为 D:WAMPWWWphpMyAdmin.PHP教程 第三步:配置ApachePHP教程 首先使用文本编辑工具(推荐 EditPlus )打开 D:WAMPApacheconfhttpd.conf 文件,这个文件是Apache的配置文件,下面几步都是在修改这个文件的内容. 要注意的是修改完 httpd.conf 文件需重新启动Apache服务,新设置才会生效.PHP教程 1. 设置监听端口PHP教程 打开 httpd.conf 文件后,找到 Listen(大概在第46行),将它后面的数字改为8080,如下:PHP教程 ??????? Listen 8080 这个参数用来设置Apache服务器的监听端口,一般默认为80.修改为8080 是为了避免和Windows 2003系统的IIS端口号冲突,如果你没有启用IIS,也可以使用默认的80端口号.PHP教程 2. 让Apache加载PHP模块PHP教程 找到 #LoadModule vhost_alias_module modules/mod_vhost_alias.so (大概在第128行),在这行的后面添加以下内容: LoadModule php5_module "D:/WAMP/PHP/php5apache2_2.dll" AddType application/x-httpd-php .php PHPIniDir "D:/WAMP/PHP" LoadModule php5_module "D:/WAMP/PHP/php5apache2_2.dll" 这句意思是以module方式载入PHP5模块. AddType application/x-httpd-php .php 这句意思就是将.php扩展名的文件作为php脚本执行.你可以使用你喜欢的任何其他扩展名,如 .html、.php5 甚至是 .txt? 来执行PHP. PHPIniDir "D:/WAMP/PHP" 这句用来指定PHP的配置文件php.ini 所在的目录. 如果是Apache 2 以module模块方式运行php5的话,就可以使用 PHPIniDir 指令.PHP教程 3. 修改网站存放目录PHP教程 我们知道Apache默认的网站存放目录为Apache安装目录下的htdocs文件夹.当你更改网站存放目录,就必须修改相应的Apache配置. 在配置文件 httpd.conf 中查找 DocumentRoot(大概在182行),将其修改为指向网站目录的正确文件夹.我们这里改为PHP教程 ?DocumentRoot "D:/WAMP/www" 同时,查找 This should be changed to whatever you set DocumentRoot to(大概在207行),在它下面有行 <Directoy 默认的DocumentRoot >,将其修改为你自己配置的DocumentRoot 路径.我们这里修改为:PHP教程 <Directory "D:/WAMP/www"> 4. 修改目录首页文件PHP教程 ?在配置文件 httpd.conf 中查找 DirectoryIndex index.html (大概在244行)将其修改成: DirectoryIndex index.html index.htm index.php DirectoryIndex 指的是当客户浏览器访问的路径是一个目录时,Apache默认执行的文件. 以我们所修改的为例:当客户浏览器访问一个目录时,Apache会去找该目录下的index.html,如果没有再找index.htm,还没有再找 index.php.都找不到则默认显示该目录下的文件列表.参考文档:如果防止Apache显示文件列表PHP教程 第四步:配置PHPPHP教程 打开PHP安装目录,即D:WAMPPHP,我们可以看到目录下有两个这样的文件 php.ini-development 和 php.ini-production,第一个是开发使用的配置文件,第二个是生产环境的配置,因为我们是在本机做开发,所以选择前者.将php.ini-development复制一份到同目录下,并改名为 php.ini.这个php.ini 就是当前使用的配置文件,以下几步都是在修改这个php.ini文件的内容.要注意的是,修改php.ini文件后需重新启动Apache服务,新设置才会生效.PHP教程 1. 指定PHP扩展库的存放目录PHP教程 在Windows下PHP的扩展库通常以 DLL 形式存放在PHP的ext目录中. extension_dir = "D:/WAMP/PHP/ext" extension_dir 表示PHP扩展库的具体目录,以便调用相应的DLL文件.PHP教程 2. 开启相应的扩展库PHP教程 默认情况下许多PHP的扩展库都是关闭的,比如默认PHP不支持连接Mysql数据库,需开启相应的扩展库. 查找 ; Windows Extensions(大概在941行),在它的下面是extension列表. 找到如下扩展:PHP教程 ;extension=php_curl.dll ;extension=php_gd2.dll ;extension=php_mbstring.dll ;extension=php_exif.dll ;extension=php_mysql.dll ;extension=php_mysqli.dll ;extension=php_pdo_mysql.dll ;extension=php_pdo_odbc.dll ;extension=php_sockets.dll ;extension=php_xmlrpc.dll ;extension=php_xsl.dll 把以上extension 前面的分号 “;” 去掉.如果你希望加载其它扩展模块,方法相同,只要去掉前面的分号即可. 提示1:重启Apache提示 “unable to load dynamic library......php_curl.dll”,加载php_curl.dll错误.解决方法是拷贝 PHP 目录下的 libeay32.dll 和 ssleay32.dll 到 windows 目录或 windows/system32 目录下,只要是系统 Path 环境变量里包含的路径就可以.如果不想拷贝,你也可以直接把 PHP 路径放到系统 Path 环境变量里. 右击我的电脑=>属性=>高级=>环境变量=>系统变量里有个Path,双击打开,把你的PHP路径加个分号“;”再前面( ;D:WAMPPHP ),添加进去就OK了.重启Apache不再提示该错误. 提示2:Exif 扩展是用来显示图片的 exif 信息的,因为该扩展需要 mbstring.dll 支持,所以必须将 extension=php_exif.dll 这一行写到extension=php_mbstring.dll 的后面. 提示3:如果PHP自带的扩展库不能满足你的需要,你可以去 pecl.php.net 查找并下载你需要的库.windows用户可以去 pecl4win.php.net 或者 http://downloads.php.net/pierre/ 下载已经编译好的DLL文件,也可以去http://museum.php.net/php5/ 载PECL集合压缩包. 提示4:很多人在找php_zip.dll,其实从php5.3开始已经集成了zip扩展,直接使用就行了.你可以用<?php phpinfo()? ?> 找到zip扩展的说明.PHP教程 3. 让PHP支持短标签PHP教程 在 php.ini 配置文件查找 short_open_tag = Off (大概在266行)把它修改成:short_open_tag = On 让其支持短标签. 4. 配置PHP的Session功能PHP教程 在使用session功能时,我们必须配置session文件在服务器上的保存目录.我们需要为session建立一个可读写的目录,这个目录最好独立于网站目录之外. 这里把目录上建在了D:WAMPsessiontmp,然后在 php.ini 配置文件中找 ;session.save_path = "/tmp" (大概在1467行),去掉前面的分号“;”,改为如下:PHP教程 session.save_path = "D:/WAMP/sessiontmp" 5. 配置PHP的文件上传功能PHP教程 同session一样,在使用PHP文件上传功能时,我们必须要指定一个临时文件夹以完成文件上传功能,否则文件上传功能会失败. upload_tmp_dir = "D:/WAMP/fileuploadtmp" PHP默认上传文件大小不超过2M,要想上传大于2M的文件,请参考文档? 配置php.ini实现文件上传功能.PHP教程 6. 设置时区PHP教程 在 php.ini 配置文件查找 ;date.timezone = (大概在993行),去掉前面的分号“;” 改为如下:PHP教程 date.timezone = PRC date.timezone是PHP5.1开始新增加的配置参数,用来设置时区.默认date.timezone是被注释掉的,也就是默认时区是UTC格林威治标准时间. 我们这里改为 date.timezone = PRC(PRC,People's Republic of China,中华人民共和国),也就是日期使用中国的时区.这样可以解决时间相差八小时的问题.PHP教程 第五步:配置phpMyAdminPHP教程 打开phpMyAdmin目录,即D:WAMPWWWphpMyAdmin,我们可以看到目录下有一个config.sample.inc.php 文件,将这个文件复制一份到同目录下,并改名为 config.inc.php.这个config.inc.php 就是phpMyAdmin的配置文件,以下几步都是在修改这个config.inc.php 文件的内容.PHP教程 1. 设置phpMyAdmin登录方式PHP教程 打开config.inc.php文件,查找 $cfg['Servers'][$i]['auth_type'],设置如下:PHP教程 $cfg['Servers'][$i]['auth_type'] = 'cookie'; 这个参数的值设置为cookie,每次登录phpMyAdmin需要输入用户名密码.这也是phpMyAdmin的默认设置.PHP教程 然后找到? $cfg['blowfish_secret'],设置如下:PHP教程 $cfg['blowfish_secret'] = 'admin10000.com'; 此参数用于Cookies的加密,这是设置为admin10000.com,你可以改成自己的密码.PHP教程 这里介绍一下phpMyAdmin 的四种登录方式: cookie:这是phpMyAdmin配置默认的登录方式.需在登录界面输入MySQL的管理账号和密码. config:直接在地浏览器地址栏输入phpMyAdmin登录地址即可登录,任何人都可以访问.用户名和密码提前在配置文件中设定好. http:弹出一个对话框,输入用户名和密码后进入. 2. 开启phpMyAdmin 高级功能PHP教程 登录phpMyAdmin 后,在首页面的最下方会提示:“phpMyAdmin 高级功能未全部设置,部分功能不可用”. 接下来还需要新建一个MySQL用户,并授予其访问上一步操作建立的数据表的权限,这个MYSQL用户称为控制用户,为 phpMyAdmin 高级功能提供支持. 我们这里使用 pma 作为控制用户以及 pmapass 作为控制用户的密码.你可以自行更改.PHP教程 在phpMyAdmin的SQL查询功能框中输入以下SQL代码:PHP教程 GRANT USAGE ON mysql.* TO 'pma'@'localhost' IDENTIFIED BY 'pmapass'; GRANT SELECT ( Host,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv,Reload_priv,Shutdown_priv,Process_priv,File_priv,Grant_priv,References_priv,Index_priv,Alter_priv,Show_db_priv,Super_priv,Create_tmp_table_priv,Lock_tables_priv,Execute_priv,Repl_slave_priv,Repl_client_priv ) ON mysql.user TO 'pma'@'localhost'; GRANT SELECT ON mysql.db TO 'pma'@'localhost'; GRANT SELECT ON mysql.host TO 'pma'@'localhost'; GRANT SELECT (Host,Db,Table_name,Table_priv,Column_priv) ON mysql.tables_priv TO 'pma'@'localhost'; 接着我们在 config.inc.php 中找到 User used to manipulate with storage 这一行.把它下面的2行参数注释(双斜杠“//”)去掉.PHP教程 结果为:PHP教程 $cfg['Servers'][$i]['controluser'] = 'pma'; $cfg['Servers'][$i]['controlpass'] = 'pmapass'; 这两行分别是控制用户和控制用户密码.也就是上边我们创建的那个用户.PHP教程 接着找到 Storage database and tables 这一行,把下面的几个参数的注释去掉.结果为:PHP教程 $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin'; $cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark'; $cfg['Servers'][$i]['relation'] = 'pma_relation'; $cfg['Servers'][$i]['table_info'] = 'pma_table_info'; $cfg['Servers'][$i]['table_coords'] = 'pma_table_coords'; $cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages'; $cfg['Servers'][$i]['column_info'] = 'pma_column_info'; $cfg['Servers'][$i]['history'] = 'pma_history'; $cfg['Servers'][$i]['tracking'] = 'pma_tracking'; $cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords'; $cfg['Servers'][$i]['userconfig'] = 'pma_userconfig'; 第六步:测试PHP教程 将如下代码保存为index.php文件,放到D:WAMPWWW目录下面.PHP教程 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>测试服务器</title> </head> <body> <div style="text-align:center; color:red"> <?php $link=mysql_connect("localhost","你的mysql管理账号","你的mysql管理密码"); if(!$link) echo "MySQL数据库 连接失败!"; else echo "MySQL数据库 连接成功!"; mysql_close(); ?> </div> <br/> <?php phpinfo(); ?> </body> </html> 然后在浏览器地址栏输入“http://localhost:8080/index.php”.结果如下图所示:PHP教程 PHP教程 欢迎参与《PHP实例:windows下apache搭建php开发环境》讨论,分享您的想法,编程之家 52php.cn为您提供专业教程。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |