我有一个azure web角色项目,对于生产站点有一个ssl证书,我们称之为https://www.myapp.com。我发布这个没有问题,它按预期工作。
但是,出于测试目的,我们还有另一个网站,我们不需要ssl。它在默认的azure站点名称http://myapp-test.cloudapp.net上运行。自从我为生产配置添加了证书以来,测试发布拒绝运行,并声明未在目标Azure部署上添加证书。这是有道理的,我还没有将证书添加到测试网站。但是,尝试删除证书的测试配置会引发另一个错误,因为csdef文件已定义证书而未在测试配置中提供证书会阻止发布。
如何使用证书和没有证书的配置设置配置?
以下是我的生产配置,删除了敏感数据。
<Role name="MyApp">
<Instances count="1" />
<ConfigurationSettings>
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="" />
<Setting name="DataConnectionString" value="" />
<Setting name="ServiceBusConnectionString" value="" />
<Setting name="ENVIRONMENT" value="production" />
</ConfigurationSettings>
<Certificates>
<Certificate name="MyAppSSL" thumbprint="thumbprint value" thumbprintAlgorithm="" />
</Certificates>
测试配置:
<Role name="MyApp">
<Instances count="1" />
<ConfigurationSettings>
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="data" />
<Setting name="DataConnectionString" value="data" />
<Setting name="ServiceBusConnectionString" value="" />
<Setting name="ENVIRONMENT" value="staging" />
</ConfigurationSettings>
<!-- removing the certificate config prevents the publish from happening, but including it also prevents the publish since I don't have the cert on the test site-->
答案 0 :(得分:1)
您可以创建一个虚拟的自签名证书,然后将其上传到测试站点,然后使用该虚拟证书指纹更新CSCFG。