【Azure Services Platform Step by Step-第13篇】在Windows Azure中使用PHP

简介:

PHP也许是当前web开发界最最流行的语言,所以“在Azure中使用PHP”这个问题引起了很多人的关注,流牛木马本人在最近两天也收到了好几个朋友的焦急求助。

也许是微软的那些牛人们最近在忙MIX09的缘故,提及Azure支持"FastCGI”的新闻报道很多,而却几乎没有提及具体怎样在Azure里配置使用PHP。就连在新版的Azure SDK里面,关于FastCGI的sample也不是使用php的。

不用着急,在本篇中,流牛木马将会演示在Azure中使用PHP的最详细流程。

(已部署到云端的Demo: http://ibm.cloudapp.net/php.php )

第一步,你必须知道的一些有关PHP&FastCGI的基本知识。

          FastCGI的官方网站:http://www.fastcgi.com/

          PHP的FastCGI模式:http://www.blogme.cn/node/6529

第二步,启用你IIS7中的FastCGI模块。
【注:本地调试环境需要。如果你打算直接部署到Cloud上,则不需要这一步。】
   (下面以Vista Ultimate中文版为例:)

  1. 打开控制面板,进入”打开或关闭Windows 功能”
    image
  2. 启用以下模块(图中红框的部分)
    image
  3. 下载安装最新的FastCGI模块:http://support.microsoft.com/kb/967131

第三步,下载一个"xcopy-deployable”版本的PHP。

    "xcopy-deployable”这个词来自微软的官方文档,但是很遗憾,在php的官方网站http://php.net/中,我们却没有找到这个词. - -P

    根据词义理解一下:可以直接拷贝部署的PHP版本。通俗地说就是不需要安装的。

    来到PHP官方网站的下载中心:http://www.php.net/downloads.php,在Windows Binaries部分找到最新版本号的"zip package“就可以了。比如现在php版本的最新版本是2009年3月10日的5.2.9-1,下载地址:http://cn2.php.net/get/php-5.2.9-1-Win32.zip/from/a/mirror

第四步,新建Web Cloud Service项目。

    image

第五步,配置Service Definition 文件(ServiceDefinition.csdef)。

复制代码
<? xml version="1.0" encoding="utf-8" ?>
< ServiceDefinition  name ="CloudService1"  xmlns ="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" >
  
< WebRole  name ="WebRole"  enableNativeCodeExecution ="true">
    
< InputEndpoints >
      
< InputEndpoint  name ="HttpIn"  protocol ="http"  port ="80"   />
    
</ InputEndpoints >
  
</ WebRole >
</ ServiceDefinition >
复制代码

      注意:需要在WebRole节点下增加enableNativeCodeExecution="true"属性

 

第六步:配置FastCGI和PHP

  1. 将刚刚下载的xcopy-deployable PHP压缩包解压缩到WebRole项目的php子目录下。
    image
  2. 在WebRole项目根目录下增加Web.roleconfig文件,内容如下:
    复制代码
    <? xml version="1.0" encoding="utf-8"  ?>
    < configuration >
      
    < system.webServer >
        
    < fastCgi >
          
    < application  fullPath ="%RoleRoot%\php\php-cgi.exe"   />
        
    </ fastCgi >
      
    </ system.webServer >
    </ configuration >
    复制代码

    这里我们使用了"%RoleRoot%"变量来获得Web Role的根目录。这也是Match 2009 CTP版本所提供的新特性之一。
  3. 在Web.config文件的system.webServer-handlers节下增加对PHP文件的处理:
    复制代码
       < system.webServer >
              
    < handlers >
            
    < .. >
        
    < add  name ="PHP via FastCGI"   path ="*.php"   verb ="*"   modules ="FastCgiModule"
                 scriptProcessor
    ="%RoleRoot%\php\php-cgi.exe"
                 resourceType
    ="Unspecified"   />
          
    </ handlers >
         
        
    </ system.webServer >
    复制代码

第七步:写一些简单的代码测试一下吧!
     代码:

复制代码
<? php

$iipp = $_SERVER [ " REMOTE_ADDR " ];
echo   " 你的IP地址是 " . $iipp . " <br /> " ;

echo   " 这是用PHP的echo命令输出的文字。<br /> " ;

echo   " <h1><font color='Red'><b>Hello PHP on Azure!</b></font></h1><br /> " ;

echo   " <a href='http://azure.cnblogs.com/'>流牛木马的Azure博客</a><br /> " ;

echo   " <font color='Blue'>以下是当前PHP环境的系统变量:</font><br /> " ;
phpinfo ();
?>
复制代码


     效果图:
     image


本文转自 流牛木马 博客园博客,原文链接:http://www.cnblogs.com/azure/archive/2009/03/20/1417885.html,如需转载请自行联系原作者

相关文章
|
5月前
|
PHP
windows11 vscode 配置 php环境
windows11 vscode 配置 php环境
43 0
|
3月前
|
安全 网络安全 Apache
Windows下Apache部署多个php项目
在 Windows 系统下,使用 Apache 服务器发布多个 PHP 项目是一项常见的任务。本文将介绍如何在 Windows 操作系统下使用 Apache 发布多个 PHP 项目。在 Windows 操作系统下使用 Apache 发布多个 PHP 项目可能有一些挑战,但是只要您按照本文的步骤进行操作,您就可以成功地完成这项任务。希望本文能够对您有所帮助。
59 0
|
PHP Windows
windows下 Call to undefined function posix_getpid() in ……\Workerman\Worker.php 的解决方法
windows下 Call to undefined function posix_getpid() in ……\Workerman\Worker.php 的解决方法
125 0
windows下 Call to undefined function posix_getpid() in ……\Workerman\Worker.php 的解决方法
|
Linux PHP Docker
Windows下PHP微服务框架Hyperf Swoole开发部署(Docker方式)
Windows下PHP微服务框架Hyperf Swoole开发部署(Docker方式)
674 0
Windows下PHP微服务框架Hyperf Swoole开发部署(Docker方式)
|
PHP Windows
PHP8.0尝鲜系列(一):Windows 10安装PHP8.0
PHP8.0尝鲜系列(一):Windows 10安装PHP8.0
494 0
PHP8.0尝鲜系列(一):Windows 10安装PHP8.0
|
存储 PHP 数据库
windows php关于session临时文件的一个坑
windows php关于session临时文件的一个坑
95 0
|
PHP Windows
php windows多进程,php windows创建多进程,
php windows多进程,php windows创建多进程,
503 0
|
PHP Windows
windows设置php环境变量
1、找到要设置的php版本路径,然后进行复制
|
Web App开发 搜索推荐 Linux
windows配置xhprof,PHP性能分析工具
本来以为配置这么一个工具不会费很大的力气,后面发现完全不是。
windows配置xhprof,PHP性能分析工具