zoukankan      html  css  js  c++  java
  • PHP on Windows Azure 入门教学系列(一):在Windows Azure内运行PHP应用

    公告:本博客为微软云计算中文博客的镜像博客。部分文章因为博客兼容性问题,会影响阅读体验。如遇此情况,请访问原博客

    从今天开始,我们会陆续推出 PHP on Windows Azure 入门教学文章。PHP是一种非常流行的,主要用于处理动态网页的脚本语言。PHP用户对于能在Windows Azure平台内运行PHP应用必定会感到惊喜。

    我们知道,微软Windows Azure平台相较与其他云计算平台的优势之一便在于其拥有便利的开发工具和熟悉的编程语言的先天优势。

    下面我们就来看看,在Windows Azure内运行PHP应用是多么的简单和轻松。

    前置条件:

    代码:

    1.首先,我们从http://windows.php.net/download/ 处下载非线程安全的最新版PHP.

    笔者下载的是VC9 x86 Non Thread Safe (2010-Mar-04 20:11:07)版本。在下载页的侧边栏,我们可以看到VC6和VC9版本的差别,VC6版是用Visual Studio 6编译器编译的,而VC9版本是Visual Studio 2008编译器编译的,性能和稳定性都有提高。

    至于线程安全与非线程安全的区别在于Windows 操作系统采用多线程架构,而Linux和Unix采用多进程架构。具体请参看这里这里

    2.打开Visual Studio,新建项目->Visual C#->Cloud->Windows Azure Cloud Service。输入项目名称CloudService1,之后点击OK。

     

    添加CGI_Web Role,重命名为PHP_WebCgiRole。点击ok。

     

    3.在PHP_WebCgiRole项目内,新建目录,命名为php。将第一步下载的PHP解压至该目录。如下图:

     

    4. 在PHP_WebCgiRole项目内新建文件,命名为index.php。

     

    在index.php写入如下代码:

    <?php     

    phpinfo();

    ?>

    5.打开PHP_WebCgiRole项目内Web.roleConfig,将内容修改为下图:

    6.打开PHP_WebCgiRole项目内Web.config,为应用程序配置默认页面。定位到system.webServer,在最后加入如下粗体代码:

    <system.webServer>

      ...

      <modules>

        ...

      </modules>

      <handlers>

        ...

      </handlers>

      <defaultDocument enabled="true">

        <files>

          <add value="index.php" />

        </files>

      </defaultDocument>

    </system.webServer>

    7. 配置FastCGI Handler。在刚加入代码的上方,将内容修改如下图:

     

    验证:

    8.此时按下F5,调试程序。我们有可能会看到如下错误。因为我们会在本地模拟Windows Azure环境,需使用本地IIS。而我们还可能没有为IIS设置好FastCGI模块。(另,此程序已经可直接部署至Windows Azure,并可运行)。

     

    打开我的电脑,添加删除程序,打开或关闭Windows 功能, 在Internet Information Services下,勾选CGI选项,如下图:

     

    重新按F5,调试,我们会看到在浏览器中如下内容:

    我们看到我们的PHP版本号是5.3.2。

     

    按Shift+F5 退出调试。右击CloudService1项目,Publish ,选择Create Service Package Only。

     

    我们将2个部署文件部署至Windows Azure 云端之后(具体部署过程请参看这里),通过网址访问 ,便能看到如下内容:

     

    可以看到PHP程序已经成功的运行在了Windows Azure云端,是不是非常简单呢?

    在下一篇文章中,我们会讲解如何以PHP连接到SQL Azure数据库上,敬请期待。

  • 相关阅读:
    Android JS 交互出现 Uncaught Error: Error calling method on NPObject
    adapter.notifydatasetchanged()没有效果
    Android 正则表达式验证手机号码
    Android SpannableString实现TextView的点击事件
    使用Jquery的Ajax调用
    我们常用,却容易忽视——CSS的BFC(Block formatting contexts)
    React数据流和组件间的通信总结
    CSS清除浮动float方法总结
    CSS3幻灯片制作心得
    JavaScript中map函数和filter的简单举例
  • 原文地址:https://www.cnblogs.com/new0801/p/6176727.html
Copyright © 2011-2022 走看看