Windows Azure 网站开发Stacks支持
编辑人员注释:本文章由 Windows Azure 网站团队的项目经理
Daria Grigoriu 和 Windows Azure 网站开发人员体验合作伙伴共同撰写。
Windows Azure 网站 (WAWS) 团队积极投资开发了一款用于开发Stacks的支持模型,可使您的 Web 应用程序快速开始运行,并为您的 Web 应用程序提供增长空间。本博客文章重点介绍了我们用于开发Stacks版本控制和可扩展性的几个基本原则,以及这些原则如何应用到您的 Web 应用程序。
目前我们支持 .NET、PHP、Node.js 和
Python Stacks。Windows Azure 开发中心(网址为:http://www.windowsazure.com/en-us/develop)为以上每种Stacks均提供了良好的知识库。您创建网站后即可上传您的内容,只需最少的信息输入,我们就能使其投入运行。
WAWS 开发Stacks版本控制
我们支持的某些开发Stacks(如 PHP)被设计为支持并行版本。对于这些开发Stacks,我们提供了一系列经过验证适用于我们的平台的当前版本。我们还建立了一个默认版本,因此除非您出于兼容性原因更喜欢特定版本,否则无需输入。
其他开发Stacks(如 .NET)被设计为提供某些版本(如 .NET 4.5)的就地升级。在这种情况下,我们努力维护开发Stacks的当前状态,并为您提供最新版本的功能和优势。
对于支持的每个开发Stacks,随 WAWS 提供的版本及相应的版本默认设置摘要可从此链接获取:https://github.com/projectkudu/kudu/wiki/Azure-Web-Sites-Development-Stacks。
开发Stacks可扩展性
如果您需要自定义,我们可为每个开发Stacks所提供的扩展点提供支持。
.NET
.NET Framework 已与 WAWS 平台深入集成。
配置
可以使用 web.config 文件指定配置。某些开发人员习惯使用的
apphost.config 文件无法使用 WAWS 直接编辑,但可以使用 XML
文档转换 (XDT) 声明进行修改。apphost.config 中的某些设置(如默认文档),可通过 Azure 门户在网站的 CONFIGURE 选项卡中进行编辑。
可扩展性
可以将可进行 Bin 部署的组件(如 MVC 或网页)添加到您的 Web 应用程序文件夹中。
Node.js
配置
以下是与在 WAWS 上部署的 Node.js 应用程序相关的主要配置文件:
· package.json
这是一个与跨平台相关的特定于 Node.js 的配置文件。示例用法包括指定 Node.js 模块依赖项(如 Express.js)以及运行时版本号。
· iisnode.yml
这是由特定的 iisnode 自定义 IIS 模块使用的配置文件。示例用法包括指定用于启动 node.exe 的命令、iisnode 将创建的 node.exe 进程数以及日志记录配置。
· web.config
这是由 WAWS 平台使用的 IIS 配置文件。此文件会捕获所需的处理程序注册,并允许使用 URL 重写以进行静态文件使用性能优化。
可扩展性
与 WAWS 集成的 Node.js 开发Stacks包括
http://nodejs.org/api 中所述的核心功能。https://npmjs.org
中所述的 NPM 模块生态系统可用于扩展核心开发Stacks功能。package.json 配置文件可用于指定要包括在 Web 应用程序中的模块。如果使用与 WAWS 平台集成的基于 GIT 的源代码版本控制,npm install 会在
GIT push 操作期间运行以提取和安装依赖项。如果使用其他开发机制(如 FTP),则可以在本地开发期间下载和配置模块,并将整个 Web 应用程序上传到 WAWS。请记住,NPM 模块包括跨平台兼容的 Javascript 模块和设计用于特定平台的本机模块 – 对您的应用程序进行测试始终是个好主意。
运行时版本
可以选择 WAWS 平台中包括的任一 Node.js 版本,或者上传和配置自定义 Node.js 运行时版本。可通过 Windows Azure 开发人员中心获取相关说明,网址为:http://www.windowsazure.com/en-us/develop/nodejs/common-tasks/specifying-a-node-version。
PHP
配置
在 WAWS 上部署的与 PHP 应用程序相关的主配置文件是标准的 PHP
.user.ini 文件。此文件可用于设置可更改的 PHP 指令,如用于诊断的 display_errors。
可扩展性
默认情况下,WAWS 支持一系列核心 PECL 扩展。我们也欢迎您进行自定义扩展。要启用自定义扩展,请在 FTP 根目录下引入 DLL,并在 CONFIGURE 选项卡下添加 PHP_EXTENSIONS 应用程序设置, 其值应设置为 PHP 扩展的位置 (到应用程序根目录的相对位置)。
运行时版本和自定义
通过 Azure 门户访问网站的 CONFIGURE 选项卡时可以进行版本选择。
WAWS 还支持基于 FastCGI 的自定义 PHP 开发Stacks。将开发Stacks上传到网站的根目录下。访问网站的 CONFIGURE 选项卡,并将新的脚本处理器(通常为 php-cgi.exe)与 *.php 扩展名相关联。脚本处理器需要使用绝对路径:例如D:\home\site\wwwroot\php5.5\php-cgi.exe,其中 D:\home\site\wwwroot 表示站点的根目录。
Python
配置
与在 WAWS 上部署的 Python 应用程序相关的主要配置文件为
web.config。此文件会捕获所需的处理程序注册,并允许使用 URL 重写以进行静态文件使用性能优化。是否使用 web.config 文件是可选的,还可以通过 Azure 门户中的 CONFIGURE 选项卡指定处理程序映射。Windows Azure 开发人员中心提供了更多信息,网址为:http://www.windowsazure.com/en-us/develop/python/tutorials/web-sites-configuration。
可以通过 Azure 门户中 CONFIGURE 选项卡下方的“应用程序设置”更新某些配置选项:
· WSGI_LOG:用于捕获应用程序和配置错误的日志文件的绝对路径
· WSGI_HANDLER:可调用的应用程序对象WSGI协议接受环境时,
还有start_response 函数都会用到它.
此处指定的值必须为模块/程序包名称,后跟要使用的模块中的属性 - 例如 mypackage.mymodule.handler(添加括号以指示应调用该属性)。
· WSGI_RESTART_FILE_REGEX:用于指定文件名的正则表达式
默认情况下,这指的是所有 *.py 和 *.config 文件:.*((\\.py)|(\\.config))$
可扩展性
您可以将程序包放在应用程序根目录下方,并通过 web.config 或应用程序设置配置 PYTHONPATH,以将程序包添加到部署中。WAWS 当前不支持 Virtualenv。
要支持部署任意程序包,请首先创建目录将程序包存储在网站的根目录下方。这类似于在您的 Python lib 文件夹中创建
site-packages 目录,但它位于您的 Web 应用程序中,并部署到 Windows Azure 网站。将程序包复制到此新目录,并将此目录的绝对路径添加到
web.config(例如 D:\home\site\wwwroot\my-packages)的 PYTHONPATH 中。现在,这些程序包可以在 Web 应用程序中导入了。
例如,可以将 Django 包括在应用程序中。首先下载 Django 或将其安装到现有的 Python 安装中。接下来,将 Django 程序包(通常是名为 django 的文件夹,其中包括 __init__.py 文件)复制到应用程序中的某个目录。默认情况下,应用程序根目录会包括在搜索程序包的目录的列表中。如果希望在子目录(例如 mypackages\django)中包括它,可以将父目录添加到 web.config 中的
PYTHONPATH – 在这种情况下,位置应该为 D:\home\site\wwwroot\mypackages。
Windows Azure 开发人员中心提供了更多信息,网址为:http://www.windowsazure.com/en-us/develop/python/tutorials/web-sites-with-django。
运行时版本和自定义
欢迎使用基于 FastCGI 的自定义 Python 开发Stacks。可以将自定义的开发Stacks上传到网站的根目录下,并将网站处理程序映射配置为包括基于 FastCGI 的脚本处理器的绝对路径。
我们一如既往地期待您的反馈,请通过论坛反馈告诉我们如何更好地满足您的开发Stacks需求。
本文翻译自:
Windows Azure 网站开发Stacks支持的更多相关文章
- Windows Azure 网站上的 WordPress 3.8
编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Sunitha Muthukrishna 和 Windows Azure 网站开发人员体验合作伙伴共同撰写. WordPr ...
- 在 Windows Azure 网站中进行纵向扩展和横向扩展
编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Byron Tardif 撰写. 当您开始一个新的 Web 项目,或者刚刚开始开发一般的网站和应用程序时,您可能希望从小处着手. ...
- Windows Azure 网站:应用程序字符串和连接字符串的工作原理
编辑人员注释:本文章由 Windows Azure 网站团队的首席项目经理 Stefan Schackow 撰写. Windows Azure 网站上有一个方便的功能,即开发人员可将 Azure 中的 ...
- 最佳实践:Windows Azure 网站 (WAWS)
编辑人员注释:本文章由 Windows Azure 网站团队的项目经理Sunitha Muthukrishna 撰写. Windows Azure 网站 (WAWS) 允许您在 Windows ...
- Windows Azure 网站上的 WebSocket 简介
编辑人员注释:本文章由 Windows Azure 网站团队的首席项目经理 Stefan Schackow 撰写. Windows Azure 网站最近新增了对 WebSocket 协议的支持..NE ...
- 比较Windows Azure 网站(Web Sites), 云服务(Cloud Services)and 虚机(Virtual Machines)
Windows Azure提供了几个部署web应用程序的方法,比如Windows Azure网站.云服务和虚拟机.你可能无法确定哪一个最适合您的需要,或者你可能清楚的概念,比如IaaS vs PaaS ...
- 探索 Windows Azure 网站中的自动伸缩功能
去年10月,我们发布了若干针对 WindowsAzure平台的更新,其中一项更新是添加了基于日期的自动伸缩调度支持(在不同的日期设置不同的规则). 在这篇博客文章中,我们将了解自动伸缩的概念,并 ...
- 在 Windows Azure 网站中配置动态 IP 地址限制
我们最近对 Windows Azure 网站进行了升级,并启用了IIS8的动态 IP 限制模块.现在,开发人员可以为其网站启用并配置动态 IP 限制功能(或简称 DIPR). 可以通过以下链接查看此 ...
- Windows Azure 网站 (WAWS) 中的服务器端包含 (SSI)
编辑人员注释:本文章由 Windows Azure 网站团队的项目经理Erez Benari 撰写. Windows Azure 网站客户普遍关心的一个问题是关于我们对服务器端包含(Server ...
随机推荐
- 去确认CP210x UART Bridge的USB的VID和PID
[背景] 之前买的USB口的HART猫: [记录]为USB接口的HART猫ExSaf ESH232U安装对应的USB转RS232驱动 其中内部是USB转RS232. 然后打算去看看之前的自己此处的某个 ...
- 实现一个简单的http请求工具类
OC自带的http请求用起来不直观,asihttprequest库又太大了,依赖也多,下面实现一个简单的http请求工具类 四个文件源码大致如下,还有优化空间 MYHttpRequest.h(类定义, ...
- 用javap命令反编译来分析字符串问题
编写Test.java.编译完后生成Test.class文件,然后对该文件运行javap -c Test命令,生成字节码指令.阅读并得出结论 一.s1和s2指向常量池的不同常量 ①java代码 pub ...
- Spark学习体系
底理解Spark,能够分为以下几个层次. 1 Spark基础篇 1.1 Spark生态和安装部署 在安装过程中,理解其基本操作步骤. 安装部署 Spark安装简单介绍 Spark的源代码编译 Spar ...
- Linux虚拟机与外面系统ping不通,或者连不上网
很多其它具体文档:http://download.csdn.net/download/zml_2015/8843061 非常多人在做linux课程设计的时候,用的linux虚拟机与外面的系统ping不 ...
- Mybatis 简单的CRUD 基于XML文件配置
全部的ORM框架学习曲线都是先来一个CRUD爽一爽,以下我们就来CRUD一下,全部的配置都是基于上一篇的配置.废话不多说,直接上代码. <?xml version="1.0" ...
- JDBC初步(一)
import java.sql.*; public class TestJDBC { // orcl为oracle数据库中的数据库名,localhost表示连接本机的oracle数据库 // 1521 ...
- Querying Microsoft SQL Server 2012 读书笔记:查询和管理XML数据 2 -使用XQuery 查询XML数据
XQuery 是一个浏览/返回XML实例的标准语言. 它比老的只能简单处理节点的XPath表达式更丰富. 你可以同XPath一样使用.或是遍历所有节点,塑造XML实例的返回等. 作为一个查询语言, 你 ...
- CSS小技巧-图片自动缩放
css的一个重要属性:max-width min-width 示例: <div width="500" height="259"><p> ...
- HTML5 总结-SVG-5
HTML5 内联 SVG HTML5 支持内联 SVG. 什么是SVG? SVG 指可伸缩矢量图形 (Scalable Vector Graphics) SVG 用于定义用于网络的基于矢量的图形 SV ...