azure-web-app-service - 如何创建简单的静态 Azure Web 应用程序

标签 azure-web-app-service iisnode static-content

我想在 Azure Web Apps 上创建一个简单的静态网站。我不需要任何 VS 或 PowerShell,所以我刚刚将我的 Azure Web App 连接到我的 OneDrive 帐户。我只想编辑我的本地文件并在网站上查看它们。

我创建了新的网络应用程序,将它连接到我的 OneDrive 帐户,这一步很好,它在我的 OneDrive 中创建了 apps/Azure Web Apps/""app name""文件夹,所以我在那里放置了一些 html/css 文件. Web App已同步;但是,我无法打开任何 html 文件(404 无法获取资源 index.html)。

我通过 FTP 编辑站点,发现我的 Web.Config 文件中有以下元素:

<rule name="StaticContent">
  <action url="public{REQUEST_URI}" type="Rewrite"/>
</rule>

好的,所以默认情况下它假定静态内容将位于“公共(public)”文件夹中,因此我在我的 OneDrive 中创建了“公共(public)”文件夹并将 html 文件移动到那里。我已经通过浏览器在我的网站 url 上打开了 html 文件,它显示成功!!!

现在,我已经在“公共(public)”文件夹的子文件夹中复制了一些其他 html/css 文件,但我无法打开它们。对 ""site""/somefolder/file.html ""site""/somefolder/file.css 的 Http 请求返回 404。

似乎 StaticContent 规则不匹配子文件夹。

我可以继续破解它并修改 iisnode 重写规则,但我是否遗漏了什么?

我只想连接到我的 OneDrive 或 Dropbox 帐户的简单静态站点,无需 VS,无需电源外壳,无需自定义。如果您使用的是简单用例,这是否可能是一个雷区?是否有一些我没有找到的教程或设置?

最佳答案

它实际上比您尝试的要简单得多。

正如 CSharpRocks 已经在评论中建议的那样,您可以将静态 HTML 文件和资源文件放入根文件夹中。但是,您确实说过要使用您的 OneDrive 帐户。

诀窍是在 Azure 上设置 OneDrive 帐户后,识别源位置。看起来您最初已经尝试过了,但您似乎也将文件移动到了不同的“公共(public)”位置。

澄清一下,这是我执行的步骤。

  1. 在您的网络应用设置边栏选项卡中,点击持续部署以选择 OneDrive,进行身份验证并选择名称,例如schtml5.
  2. 在您的 OneDrive 帐户中,找到源位置,例如/应用程序/Azure Web 应用程序/schtml5/
  3. 将您的静态文件放入上述 OneDrive 位置。

由于您已经设置了持续部署(从第 1 步开始),因此每次更新 OneDrive 文件夹(从第 2 步开始)时,您的网站都应该自动更新。确保在上传任何已存在文件的更新版本时选择替换文件。

但是您还提到您有一个 Web.config 文件。由于您只有静态文件,因此不需要此配置文件。删除 Azure 中的 Web.config 文件。您可以使用 FTP 访问您的“/site/wwwroot”文件夹来删除该文件。确保您没有在 OneDrive 中包含配置文件。

希望对您有所帮助! :-)

下面是我的 Azure 门户和 OneDrive 的屏幕截图:

Azure portal screenshot

OneDrive screenshot

关于azure-web-app-service - 如何创建简单的静态 Azure Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35565757/

相关文章:

node.js - 在 iisnode 上运行时从 nodeJS 应用程序执行 cmd 命令不起作用

javascript - MSNodeSQL 和 IISNode

asp.net-mvc - 如何防止 ASP.NET MVC 在 Windows Azure 上处理静态文件(js 和图像)?

javascript - 从端口 8080 提供静态内容?

wordpress - 无需 ftp 即可访问我的 Azure 网站

azure - 在 Azure 门户中禁用 SMBv3

azure - 如何从 Azure python sdk 创建 Azure Functions?

c# - 交换 Azure Web App 部署槽会注销 ASP.NET Core RC2 中的所有用户

node.js - 使用 URL 重写从 iisnode 提供静态文件

gzip - 直接提供压缩后的内容-不好做吗?