【问题标题】:Access Azure Cloud Service ConfigurationSettings in PHP site在 PHP 站点中访问 Azure 云服务配置设置
【发布时间】:2015-10-23 19:00:37
【问题描述】:

我有一个作为 Azure 云服务 WebRole 部署的 PHP Drupal 站点。我想从ServiceDefinition文件中读取ConfigurationSettings,以获取数据库连接字符串等信息。

<ConfigurationSettings>
    <Setting name="DBSERVER" />
    <Setting name="DBNAME" />
    <Setting name="DBUSERNAME" />
    <Setting name="DBPASSWORD" />
</ConfigurationSettings>

我已经读到 Azure 网站的 appsettings 被加载到环境变量中,所以从技术上讲,我应该能够使用 getenv() 命令来访问它们。但是,云服务 Web 角色的行为似乎并非如此。

也有类似的问题,但没有得到解答: How can I access ConfigurationSettings using a PHP Cloud Service on Windows Azure?

了解如何执行此操作对于让我的应用程序准备好启动至关重要。任何指导将不胜感激!

【问题讨论】:

标签: php azure drupal


【解决方案1】:

您应该可以使用此处找到的 Azure PHP SDK 执行此操作:https://github.com/Azure/azure-sdk-for-php

就像 Will 在之前的文章中提到的那样,您可以使用 RoleEnvironmentData 或 WindowsAzure.ServiceRuntime.RoleEnvironment.getConfigurationSettings() 来返回您在服务定义文件中定义的所有角色设置。

请试一试,如果仍有问题,请告诉我们。

【讨论】:

  • 将此标记为答案。不幸的是,这段代码似乎在执行 fread,在我们的情况下,这会在网站负载过重时导致性能问题。为了解决这个问题,我们使用了 APC 缓存扩展。当应用程序第一次运行时,我们将所有用户的所有设置加载到内存中。然后我们可以读取这些值,而无需直接从光盘中读取。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-17
相关资源
最近更新 更多