建立PHP的本地调试环境

 更新时间:2016年11月25日 15:29  点击:1839
对于windows平台而言,PHP提供了一个安装程序,但是这个安装程序是不能直接运行来建立个人服务器平台的,而是必须嵌入现有的服务器平台,如:Windows NT下的IIS或Windows 下的PWS,以及Apache等。根据自己使用的经验,我把建立基于PWS的个人服务器平台的PHP调试环境的过程写出来,希望 各位高手给予指点。
在安装之前,先下载PHP在windows下的安装程序,目前比较新的版本是4.0,在个大网站都下载。实在找不着,可以直接到PHP的站点Http://www.php.net 下载,在那,可以得到更新的信息。下载的文件是个压缩包,一般名为:php-4.0.x-win32.zip,x代表版本号,可以看出相应的版本,当然版本越新越好了。把它解压缩到c:PHP目录下(具体在下面第3.点解释),可以看到该目录下包含了PHP所需的所有文件。
准备工作做好了,下面可以开始真正的安装。首先,不用说,先装好微软的PWS,并且设置好PWS的各种参数以及相关的网络设置,具体的可以查看相关的资料,我再说,大家可能说我骗稿费来了。安装好后,最好先测试一下,不然,下面的工作就白费劲了。下面,分几步进行PHP的嵌入安装。
1. 进入c:PHP文件夹,可以看到一些*.dll 文件和其它的相关的文件,那些以php_开头的dll文件可以保留在c:PHP中,其它的dll 文件必需拷贝系统的搜索路径中,比较常用的是c:windowssystem文件夹。
2. 在c:php文件夹中找着名为php.ini-dist(没有扩展名),把文件名改为php.ini,用记事本打开该文件,可以看到里面是PHP的系统配置信息,具体信息查考里面的解释。不过是英文的,要多费脑汁了。相应的信息修改好后,把php.ini拷贝到c:windows文件夹里,注意把只读属性去掉。
 
用注册表编辑器打开注册表,按照如下的路径指示的键值:HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesw3svcparametersScript Map 在该的键值中,新建一个字符串值:".php" 数据为"C:PHPphp4isapi.dll"(注:该路径对应php-4.0.x-win32.zip压缩文件解压到的目录,如果你的解压的目录和我的不一致,请做相应更改),
 
到此,PHP文件方面的设置基本完成了,下面应该设置PWS,使之能解释PHP脚本。打开PWS的个人web管理器->点击高级,虚拟目录的树图中,右击需要PHP支持的目录,在此我选择php,选择“属性”,在弹出的“编辑目录”窗口中,在“读取”,“执行”,“脚本”三个复选框中划上勾,点“确定”退出即可。如图二。
本文主要介绍PHP4.04及mysql3.22.32在win98系统pws4.0下的安装。
 文中所汲及的软件都可以在本站的软件栏目下载。
....所需软件
php4.04 win 32位安装程序    
mysql3.22 win 32位版共享版    
phpmyadmin_2.0.5 管理MYSQL数据库的最佳工具    
第一步:下载所需程序,安装运行MYSQL3.22安装程序。
....下载包是一ZIP文件包需用WINZIP等工具解开,运行setup.exe安装,缺省安装目录是c:mysql。将PHP4文件包解开到c:php目录下。将phpmyadmin解开到c:admin目录下。
第二步:安装数据库及php4。
.... 首先确定你的系统有没有安装PWS4如果没有先在WIN98的系统CDROM上找到安装PWS4。如果你的系统是WIN95还要安装DCOM95, 确定你的PWS4已正常运行,可以在本机的IE中键入http://localhost来查看PWS的页面。
.... 在PHP的目录下有如下文件
php.ini-dist    
msvcrt.dll    
pws-php4.reg    
libmysql.dll    
php.exe    
php4ts.dll    
php4isapi.dll    
php_mysql.dll    
.... 将所有dll文件copy 到你的system目录如C:windowssystem 。
将php.ini-dist改名为php.ini    
修改 extension_dir = ./    
为 extension_dir = c:windowssystem    
修改 ;extension=php_mysql.dll    
除去前边的";"号    
在[mysql]栏下修改    
mysql.default_port = 3306    
mysql.default_host = localhost    
mysql.default_user = root    
这三栏原始参数为空。
 
复制php.ini 到c:windows目录下    
修改pws-php4.reg 改 ".php"="[******]php4isapi.dll"为 ".php"="c:phpphp4isapi.dll"
增加
".php3"="c:phpphp4isapi.dll"
行,这是为了保证与原有的以PHP3结尾的文件的通用。
Q:我使用RPM安装了PHP,但APACHE却不能处理PHP文件。为什么?
 
A:假设你使用RPM正确安装了PHP,那你必须反注或加入下面的几行到httpd.conf文件中:
#Extra Modules
AddModule mod_php.c
AddModule mod_php3.c
AddModule mod_perlc.
#Extra Modules
LoadModule php_module modules/mod_php.so
LoadModule php3_module modules/libphp3.so
LoadModule perl_module modules/libperl.so
另外,再加入:
AddType application/x-httpd-php3 .php3
到httpd.conf的全局部分,或到你需要提供PHP支持的部分。

在各种网络编程语言中。PHP以其简单易学、功能强大吸引了众多编程爱好者。然而PHP的安装却成为许多初学者面前的拦路虎。下面我来给大家较为详细的介绍一种在微软Windows 2000/XP平台下以模块化方式安装PHP及常用模块的方法。
 
一、基础知识
在介绍前,请各位先了解一些PHP安装的基础知识。PHP有 CGI 和模块化两种不同的安装方式。
用 CGI 方式安装的PHP,在每次解析PHP脚本时,服务器都会产生一个临时的PHP解析器(进程)来解析PHP脚本。当访问量大时,会使 Server性能降低。
而用模块化安装的PHP,它和Apache服务器运行在同一内存地址中。比CGI方式有相当大的性能提升和更高的安全性。
 
所以模块化安装比CGI方式有着更大的优越性。下面列出了相关软件:
Apache 服务器采用2.0.43系列版本。下载地址:http://www.apache.org/
PHP 采用较新具有良好安全性和稳定性的4.32版,支持模块化方式安装。下载地址:http://www.php.net/
二、安装Apache 服务器
当相关软件都准备好后。先安装Apache 2.0.43,在安装的时候。默认的安装路径是 C: 的开始菜单,建议把路径改为 C 盘根目录。这样在日常使用时会方便些。
Apache 安装好后。注意任务栏系统托盘区会出现一个红色羽毛的标志。如果羽毛下方是绿色的三角形。表示 Apache安装成功正在运行。如果出现一个红色的停止标志,则表示安装过程中出现了问题,一般是端口有冲突。如果你的机器上另外安装有IIS之类服务器的话,请检查一下80端口是不是被 IIS 占用了。如果你想让Apache使用其他的端口,OK。在开始菜单 Apache HTTP Server 2.0.43 项目的 Configure Apache Server 里选择 Edit the Apache httpd.conf Configuration File,打开后(建议安装使用 UltraEdit 之类带行号显示的文本编辑器),在 120 行左右有 Listen 80 字样。表示 Apache 默认使用的是 80 端口。你可以修改成你想要的端口。只要在浏览时加上你修改的端口号就可以了。如 http://localhost(:端口号)/index.html.en,这是Apache的起始页。
三、模块化安装 PHP
安装好 Apache 后,重要的一步开始了。将下载后的 PHP4.32 解压到 C 盘根目录。一般默认的文件夹名应该是 php-4.3.2-Win32 这种格式,将其改为 php 。再把其中 php.ini-dist 文件改为 php.ini,把这个文件复制到 C:WINNT或 C:WINDOWS 目录中。(这里有一个小知识,如果系统目录和 PHP 目录同时有 php.ini 配置文件的话,PHP会优先执行 PHP 目录中的那个!)这也是很多朋友在日常使用PHP时经常遇到的问题。修改了系统目录中的php.ini,但运行后却没有实现想要的结果。原因就在这里!
使用ISAPI方式安装PHP。
下载连接:http://cn2.php.net/get/php-4.4.0-Win32.zip/from/cn.php.net/mirror
ISAPI方式是WIN系统IIS下最有效率的PHP执行方式。强烈建议。
解压好PHP后,首先找到php.ini-dist
 
把-dist     去掉,就成了文本方式显示。
打开PHP.INI  做略微修改。使用查找方式找TMP  找到./TMP着个路劲后,把路劲改成C:/TMP
然后在C盘新建TMP文件夹
全做好以后,拷贝  PHP。INI和php4ts.dll,放到C盘WINNT/SYSTEM32文件夹下。
OK  第一步做好了。然后设置IIS
打开IIS     在服务器名称(有个小电脑标记的那一行)下点击右键选择 属性,编辑,ISAPI筛选器
111cn.net
然后选择添加。
筛选器名称输入:PHP
可执行文件选择:php-4.4.0-Win32sapiphp4isapi.dll
注意一定要使用php4isapi.dll,而不要使用PHP.EXE。因为用PHP.EXE就是CGI方式,而且占用进程了,php4isapi.dll下就是ISAPI方式了。
然后给单个网站添加PHP权限(注意PHP权限绝不能是用默认设置,除非你决定给每个网站都有PHP权限。否则很危险的)
打开IIS,在你要给权限的那个地址上点击右键,然后选择属性,主目录,配置。
然后选择添加。
可执行文件输入:.php
路劲:php-4.4.0-Win32sapiphp4isapi.dll
OK  支持ISAPI方式的PHP权限就做好了。。。。。。。

[!--infotagslink--]

相关文章

  • 源码分析系列之json_encode()如何转化一个对象

    这篇文章主要介绍了源码分析系列之json_encode()如何转化一个对象,对json_encode()感兴趣的同学,可以参考下...2021-04-22
  • php中去除文字内容中所有html代码

    PHP去除html、css样式、js格式的方法很多,但发现,它们基本都有一个弊端:空格往往清除不了 经过不断的研究,最终找到了一个理想的去除html包括空格css样式、js 的PHP函数。...2013-08-02
  • 在ASP.NET 2.0中操作数据之七十二:调试存储过程

    在开发过程中,使用Visual Studio的断点调试功能可以很方便帮我们调试发现程序存在的错误,同样Visual Studio也支持对SQL Server里面的存储过程进行调试,下面就让我们看看具体的调试方法。...2021-09-22
  • index.php怎么打开?如何打开index.php?

    index.php怎么打开?初学者可能不知道如何打开index.php,不会的同学可以参考一下本篇教程 打开编辑:右键->打开方式->经文本方式打开打开运行:首先你要有个支持运行PH...2017-07-06
  • Node调试工具JSHint的安装及配置教程

    现在我们介绍一种在Node下检查简单错误的JS代码验证工具JSHint。  JSHint的具体介绍参考http://www.jshint.com/about/,说直白点儿,JSHint就是一个检查JS代码规范与否的工具,它可以用来检查任何(包括server端和client端...2014-05-31
  • PHP中func_get_args(),func_get_arg(),func_num_args()的区别

    复制代码 代码如下:<?php function jb51(){ print_r(func_get_args()); echo "<br>"; echo func_get_arg(1); echo "<br>"; echo func_num_args(); } jb51("www","j...2013-10-04
  • PHP编程 SSO详细介绍及简单实例

    这篇文章主要介绍了PHP编程 SSO详细介绍及简单实例的相关资料,这里介绍了三种模式跨子域单点登陆、完全跨单点域登陆、站群共享身份认证,需要的朋友可以参考下...2017-01-25
  • idea 无法debug调试的解决方案

    这篇文章主要介绍了idea 无法debug调试的解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-09-09
  • PHP实现创建以太坊钱包转账等功能

    这篇文章主要介绍了PHP实现创建以太坊钱包转账等功能,对以太坊感兴趣的同学,可以参考下...2021-04-20
  • JavaScrip调试技巧之断点调试

    首先,在各个浏览器中,断点调试支持的最好的当然是Firefox,Firefox不仅可以使用Firebug调试页面js脚本,还可以用高级调试工具例如JavaScript Debugger (Venkman) 来调试Firefox扩展里的js。除此之外,Firefox还支持一些更为...2015-10-23
  • C#客户端程序Visual Studio远程调试的方法详解

    这篇文章主要给大家介绍了关于C#客户端程序Visual Studio远程调试的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧...2020-06-25
  • php微信公众账号开发之五个坑(二)

    这篇文章主要为大家详细介绍了php微信公众账号开发之五个坑,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2016-10-02
  • ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单

    首先是数据库的设计。分类表叫cate.我做的是分类数据的二级联动,数据需要的字段有:id,name(中文名),pid(父id). 父id的设置: 若数据没有上一级,则父id为0,若有上级,则父id为上一级的id。数据库有内容后,就可以开始写代码,进...2014-05-31
  • PHP如何通过date() 函数格式化显示时间

    这篇文章主要介绍了PHP如何通过date() 函数格式化显示时间,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-11-13
  • PHP+jQuery+Ajax实现多图片上传效果

    今天我给大家分享的是在不刷新页面的前提下,使用PHP+jQuery+Ajax实现多图片上传的效果。用户只需要点击选择要上传的图片,然后图片自动上传到服务器上并展示在页面上。...2015-03-15
  • c# 代码调试技巧和如何远程调试

    这篇文章主要介绍了c# 代码调试技巧和如何远程调试,帮助大家更好的理解和使用c#编程语言,感兴趣的朋友可以了解下...2020-12-08
  • golang与php实现计算两个经纬度之间距离的方法

    这篇文章主要介绍了golang与php实现计算两个经纬度之间距离的方法,结合实例形式对比分析了Go语言与php进行经纬度计算的相关数学运算技巧,需要的朋友可以参考下...2016-07-29
  • PHP如何使用cURL实现Get和Post请求

    这篇文章主要介绍了PHP如何使用cURL实现Get和Post请求,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-07-11
  • thinkPHP中多维数组的遍历方法

    这篇文章主要介绍了thinkPHP中多维数组的遍历方法,以简单实例形式分析了thinkPHP中foreach语句的使用技巧,需要的朋友可以参考下...2016-01-12
  • PHP正则表达式过滤html标签属性(DEMO)

    这篇文章主要介绍了PHP正则表达式过滤html标签属性的相关内容,实用性非常,感兴趣的朋友参考下吧...2016-05-06