ASP与PHP本地服务器环境构建注意事项

 更新时间:2016年11月25日 16:08  点击:2104

在 winxp 中构建运行平台,很简单,也没有太多的注意事项。但在 windows 2003 server 中构建就很麻烦了。主要应该注意以下问题:

1、先卸载旧版本,再重新安装。建议不要覆盖安装,因为覆盖安装时,有些文件设置不能被更新。重新安装的软件至少包括:
(1)IIS;(2)PHP;(3)MySQL;(4)MySQL Administrator;(5)Zend;(6)phpMyAdmin。
2、IIS是否安装,且至少包括下列组件:
(1)网络服务-简单TCP/IP服务;(2)应用程序服务器-ASP.NET(以便运行aspx);(3)应用程序服务器-Internet信息服务(IIS)-公用文件/Internet信息服务管理器;(4)应用程序服务器-Internet信息服务(IIS)-文件传输协议(FTP)服务(以便运行ftp);(5)应用程序服务器-Internet信息服务(IIS)-万维网服务-万维网服务/Active Server Pages(以便运行ASP)
3、IIS配置:Internet信息服务管理器-新建“网站”或“FTP站点”(不要新建“虚拟目录”)。如果需要修改或上传文件,则除了“运行”脚本功能外,还应勾选“写入”功能。
  Web服务扩展把所有的均设置为“允许”,至少包括:Active Server Pages。点击“添加一个新的Web服务扩展”,扩展名“PHP 5.2.0”,要求的文件“C:PHP5php5isapi.dll”,并设置为“允许”,以便支持php。
4、PHP安装:
(1)使用手动版安装,不使用压缩包自动安装。
(2)是否安装在“C:PHP5”目录下,建议不要安装在D盘或E盘,因为可能导致无法加载php5isapi.dll文件。
(3)PHP.ini文件是否作了更改(直接使用php.ini-dist,不需要使用推荐的php.ini-recommended):
  short_open_tag = On(默认为On,以便php支持短标识符)
  asp_tags = On(Off改为On,以便php也支持asp标识符)
  output_buffering = On(Off改为On)
  register_globals = On(Off改为On,以便支持老版程序)
  post_max_size = 10M(默认8M,修改大些,以便支持Post的内容能多些)
  extension_dir = "c:PHP5ext"(默认是空,必须修改为实际的扩展文件夹)
  file_uploads = On(默认On,以便支持文件上传)
  upload_max_filesize = 20M(默认仅为2M,修改大些,以便支持上传的文件能大些)
  ; Windows Extensions(该语句以下的extension=php_mbstring.dll等前面的;号全部删除,以便PHP最大限度支持各种扩展)
  mysql.default_host = "localhost";mysql.default_user = "root";mysql.default_password = "";这三句通常不用设置,默认为空。
  session.save_path = "c:PHP5sessionTEMP"(必须启用该行,并且新建一个文件夹sessionTEMP,专门用来存放session变量,通常的网站都会使用session)
(4)PHP.ini是否剪切到了“系统盘/windows/”下。
(5)“系统属性-高级-环境变量-TEMP-Path”下是否新增了两个路径“;c:PHP5;c:PHP5ext”,以便系统能找到扩展文件。
(6)安装为ISAPI模式:Internet信息服务管理器-网站属性
  IP地址需要选择(网络连接-本地连接-属性-Internet协议TCP/IP-属性:ip地址172.**.*.55,子网掩码255.255.255.0,默认网关172.**.*.254,首选DNS服务器202.106.0.20,备用DNS服务器为空);
  ISAPI筛选器-添加-名称:PHP-可执行文件:c:PHP5php5isapi.dll
  主目录-配置-映射-添加-扩

什么是 GUID?

全球唯一标识符 (GUID) 是一个字母数字标识符,用于指示产品的唯一性安装。在许多流行软件应用程序(例如 Web 浏览器和媒体播放器)中,都使用 GUID。

GUID 的格式为“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”,其中每个 x 是 0-9 或 a-f 范围内的一个十六进制的数字。例如:6F9619FF-8B86-D011-B42D-00C04FC964FF 即为有效的 GUID 值。

为什么要用GUID?

世界上的任何两台计算机都不会生成重复的 GUID 值。GUID 主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符。在 Windows 平台上,GUID 应用非常广泛:注册表、类及接口标识、数据库、甚至自动生成的机器名、目录名等。

asp下生成guid的代码
<%

Dim objTypeLib

Set ōbjTypeLib = CreateObject("scrīptlet.TypeLib")

Response.Write objTypeLib.Guid

%>
php下生成guid要用到class .
guid.class.guid
<?
class  System
{
    function  currentTimeMillis()
      {
          list($usec,  $sec)  =  explode("  ",microtime());
          return  $sec.substr($usec,  2,  3);
      }
}
class  NetAddress
{
      var  $Name  =  ''localhost'';
      var  $IP  =  ''127.0.0.1'';
      function  getLocalHost()  //  static
        {
           $address  =  new  NetAddress();
           $address->Name  =  $_ENV["COMPUTERNAME"];
           $address->IP  =  $_SERVER["SERVER_ADDR"];
            return  $address;
        }
      function  toString()
       {
           return  strtolower($this->Name.''/''.$this->IP);
        }
}
class  Random
{
    functi PHP ADODB 1.99版手册中文翻译
翻译作者:Tripc
修正作者:heiyeluren
----------------------------------------------

修正说明:因为之前的版本是台湾版的,所以很多语句不符合大陆的使用习惯,于是我稍微用Editplus修正了一下,希望给学习ADODB的同志们一个参考。
(heiyeluren修正于2005-6-22)
 
ADODB
PHP 在数据库的支持上是很令人称道的,几乎所有的知名数据库系统都有对应的函数群支持,而且支持的很完整。但很不幸的,每一群数据库支持函数无论在名称或参数结构上,都有很大的差异,这使得PHP的系统开发者在面临更换数据库时,总会觉得痛苦万分。难道这个问题就没有解决方法吗?呵呵,当然有,答案就是我现在要介绍的 ADODB 这个PHP物件。

ADODB提供了完整的方法和属性让工程师去控制数据库系统,更棒的是你只要记得它的功能就好了,因为不同的数据库系统,只要修改一个属性值就可以了,ADODB会自动依据设定取用正确的PHP函数。此外,最多再配合数据库系统修改修改SQL指令,你的PHP系统就可以在最短的时间内更换到另一个数据库系统了,如果在编写程序时,对SQL指令能做妥善规划,那就更快了。

经过以上的介绍,相信你已经对ADODB的功用有所了解,以下为ADODB的详细介绍。

取得ADODB
你可以在 http://php.weblogs.com/ADOdb 取得最新版的ADODB。我在编写本文时,最新版本是1.99版,版权采BSD-Style及LGPL双轨制,换句话就是Freeware,没有什么限制。但在取得ADODB后,最好还是要看一下相关版权说明及用法,并和本文对照一下,以免错误。

使用ADODB
基本上使用ADODB是相当容易的,取得压缩文件后解开,我建议将整个内容都解到ADODB的目录里。然后你可以一边参考本文,一边研究里面的范例,就放在里面的test目录下。

由于ADODB附上的说明十分完整详实,以下的说明大部份来自ADODB的readme.htm,这里不是全部的内容,我把一些我认为没有用的内容都去掉了,像版本差异说明、何编写支持ADODB的驱动程序等与应用无关的部份。想要了解全部内容的读者还是可以自己去参考 readme.htm。


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

简介

特色

安装

启动ADODB

ADONewConnection

NewADOConnection

支持的数据库

学习手册

范例 1 : Select

范例 2 : 进阶 Select

范例 3 : Insert

范例 4 : 除错及 rs2html 范例

范例 5 : MySQL 及选单

范例 6 : 一次连接两个数据库

范例 7 : 产生更新及新增的SQL指令

范例 8 : 用下一笔及上一笔实作卷动

客制化错误处理及PEAR错误

数据集快取

参考手册

ADOConnection

连接数据库:Connect PConnect

执行SQL:Execute CacheExecute SelectLimit CacheSelectLimit Prepare PrepareSP GetOne GetRow

产生 更新/新增:GetUpdateSQL GetInsertSQL

BLOB : UpdateBlob UpdateClob UpdateBlobFile

换页/卷页 : PageExecute CachePageExecute

清除 : CacheFlush Close

交易 : BeginTrans CommitTrans RollbackTrans

提取数据 : $ADODB_FETCH_MODE BlankRecordSet

字串 : Concat qstr

日期 : DBDate DBTimeStamp UnixDate UnixTimeStamp

"列"管理器 : Affected_Rows Insert_ID GenID

错误处理 : ErrorMsg ErrorNo

数据辞典 : MetaDatabases Meta curl 是使用URL语法的传送文件工具,支持FTP、FTPS、HTTP HTPPS SCP SFTP TFTP TELNET DICT FILE和LDAP。curl 支持SSL证书、HTTP POST、HTTP PUT 、FTP 上传,kerberos、基于HTT格式的上传、代理、cookie、用户+口令证明、文件传送恢复、http代理通道和大量其他有用的技巧。

原来php默认并不进行此项功能的扩展,但还是有的,只是没有让它生效罢了。打开PHP安装目录,搜索以下三个文件 ssleay32.dll、libeay32.dll和 php_curl.dll,一一拷贝到系统目录下的system32文件夹下,修改php.ini文件,找到;extension= php_curl.dll行,去掉前面的;号,保存,重启服务器。在站点目录下建立一个PHP文件,内容如下
PHP代码

   1. <?php   
   2.     $ch = curl_init("http://www.php.net");   
   3.     curl_exec($ch);   
   4.     curl_close($ch);
   5. ?> 


预览如果能打开http://www.php.net的话说明就安装成功了。

至于linux及unix的安装可以要麻烦一些,得从http://curl.haxx.se/或其他网站上下载curl库
____________________________________________________________

以下关于此函数各项使用参数:

bool curl_setopt (int ch, string option, mixed value)
curl_setopt()函数将为一个CURL会话设置选项。option参数是你想要的设置,value是这个选项给定的值。下列选项的值将被作为长整形使用(在option参数中指定): 
*CURLOPT_INFILESIZE: 当你上传一个文件到远程站点,这个选项告诉PHP你上传文件的大小。
*CURLOPT_VERBOSE: 如果你想CURL报告每一件意外的事情,设置这个选项为一个非零值。
*CURLOPT_HEADER: 如果你想把一个头包含在输出中,设置这个选项为一个非零值。
*CURLOPT_NOPROGRESS: 如果你不会PHP为CURL传输显示一个进程条,设置这个选项为一个非零值。注意:PHP自动设置这个选项为非零值,你应该仅仅为了调试的目的来改变这个选项。
*CURLOPT_NOBODY: 如果你不想在输出中包含body部分,设置这个选项为一个非零值。
*CURLOPT_FAILONERROR: 如果你想让PHP在发生错误(HTTP代码返回大于等于300)时,不显示,设置这个选项为一人非零值。默认行为是返回一个正常页,忽略代码。
*CURLOPT_UPLOAD: 如果你想让PHP为上传做准备,设置这个选项为一个非零值。
*CURLOPT_POST: 如果你想PHP去做一个正规的HTTP POST,设置这个选项为一个非零值。这个POST是普通的 application/x-www-from-urlencoded 类型,多数被HTML表单使用。
*CURLOPT_FTPLISTONLY: 设置这个选项为非零值,PHP将列出FTP的目录名列表。
*CURLOPT_FTPAPPEND: 设置这个选项为一个非零值,PHP将应用远程文件代替覆盖它。
*CURLOPT_NETRC: 设置这个选项为一个非零值,PHP将在你的 ~./netrc 文件中查找你要建立连接的远程站点的用户名及密码。
*CURLOPT_FOLLOWLOCATION: 设置这个选项为一个非零值(象 “Location: “)的头,服务器会把它当做HTTP头的一部分发送(注意这是递归的,PHP将发送形如 “Location: “的头)。
*CURLOPT_PUT: 设置这个选项为一个非零值去用HTTP上传一个文件。要上传这个文件必须设置CURLOPT_INFILE和CURLOPT_INFILESIZE选项. *CURLOPT_MUTE: 设置这个选项为一个非零值,PHP对于CURL函数将完全沉默。
*CURLOPT_TIMEOUT: 设置一个长整形数,作为最大延续多少秒。
*CURLOPT_LOW_SPEED_LIMIT: 设置一个长整形数,控制传送多少字节
Framework PHP4 PHP5 MVC Multiple DB''s ORM DB Objects Templates Caching Validation Ajax Auth Module Modules
Akelos PHP Framework  
[!--infotagslink--]

相关文章

  • 分享一段php获取linux服务器状态的代码

    简单的php获取linux服务器状态的代码,不多说-直接上函数:复制代码 代码如下:function get_used_status(){ $fp = popen('top -b -n 2 | grep -E "^(Cpu|Mem|Tasks)"',"r");//获取某一时刻系统cpu和内存使用情况 $rs =...2014-05-31
  • Springboot+TCP监听服务器搭建过程图解

    这篇文章主要介绍了Springboot+TCP监听服务器搭建过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-10-28
  • 总结android studio注意事项及打不开等问题解决方法

    经过一段时间的使用,总结了android studio打不开等问题的6种解决方法及android studio注意事项,希望对大家有所帮助。 1 首次运行,建立好项目需要下载一些东西,如果...2016-09-20
  • 服务器 UDP端口占用几千个的解决办法

    前一段时间使用NetStat命令查看服务器端口时,发现服务器udp端口开放了好多,最少在1000个以上,当时事情比较多,没有管它,今天终于有点时间,仔细检查了一下,排除了这个问题. ...2016-01-27
  • PHP连接公司内部服务器的MYSQL数据库的简单实例

    “主机,用户名,密码”得到连接、“数据库,sql,连接”得到结果,最后是结果的处理显示。当然,数据库连接是扩展库为我们完成的,我们能做的仅仅是处理结果而已。...2013-09-29
  • 解决HttpPost+json请求---服务器中文乱码及其他问题

    这篇文章主要介绍了解决HttpPost+json请求---服务器中文乱码及其他问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-22
  • uploader秒传图片到服务器完整代码

    这篇文章主要为大家详细介绍了uploader秒传图片到服务器的完整代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2017-04-27
  • Hyper-V尝试连接到服务器出错无效类的解决方法

    这篇文章主要介绍了Hyper-V尝试连接到服务器出错无效类的解决方法,需要的朋友可以参考下...2016-09-28
  • mac使用Shell(终端)SSH连接远程服务器的方法

    这篇文章主要介绍了mac使用Shell(终端)SSH连接远程服务器的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-07-11
  • js实现上传图片到服务器

    这篇文章主要为大家详细介绍了js实现上传图片到服务器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-04-11
  • Illustrator文字转曲的操作方法与注意事项分享

    今天小编在这里就来给Illustrator的这一款软件的使用者们来说一说文字转曲的操作方法以及注意事项,各位想知道具体信息的使用者们,那么下面就快来跟着小编一起看看吧。...2016-09-14
  • c# HttpWebRequest通过代理服务器抓取网页内容应用介绍

    在C#项目开发过程中可能会有些特殊的需求比如:用HttpWebRequest通过代理服务器验证后抓取网页内容,要想实现此方法并不容易,本文整理了一下,有需求的朋友可以参考下...2020-06-25
  • Windows 2016 服务器安全设置

    最近公司的网站升级Windows 2016服务器,选择安装了最新版的Windows 2016,以前使用Windows服务器还是Windows 2003系统,发现变化还是挺多的,依次记录下来以备后面查阅...2020-10-05
  • Linux环境下nginx搭建简易图片服务器

    这篇文章主要介绍了Linux环境下nginx搭建简易图片服务器,需要的朋友可以参考下...2016-01-27
  • 图文详解本地Windows 7/8上IIS服务器搭建教程

    这篇文章主要以图文结合的方式详细介绍了本地Windows 78上IIS服务器搭建教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 ...2017-07-06
  • 使用node-media-server搭建一个简易的流媒体服务器

    这篇文章主要介绍了使用node-media-server搭建一个简易的流媒体服务器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-20
  • 阿里云免费套餐再次升级: 含云服务器、云数据库等35+产品

    阿里云免费套餐再次升级,提供更多产品,更久时长的使用,本次活动针对个人用户和企业用户,不过仅限新用户申请,想要了解更多,下面就来简单地了解一下活动规则 阿里云免费...2017-07-06
  • ECMall支持SSL连接邮件服务器的配置方法详解

    首先,主要是ecmall使用的phpmailer版本太低,不支持加密连接。然后,得对相应代码做一定调整。1. 覆盖phpmailer请从附件进行下载: 复制代码 代码如下:http://cywl.jb51.net:81/201405/yuanma/ecmall_phpmailer_lib(jb51.n...2014-05-31
  • golang DNS服务器的简单实现操作

    这篇文章主要介绍了golang DNS服务器的简单实现操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-01
  • C#如何连接服务器共享文件夹

    这篇文章主要为大家详细介绍了C#如何连接服务器共享文件夹,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-25