小编fri*_*ism的帖子

如何更改WebProjectOutputDir的默认位置?

根据每个项目,是否有人知道您是否可以在Visual Studio中设置WebProjectOutputDir.我想能够拥有它,以便当我点击Ctrl+ Shift+ B它自动将我的web项目构建到特定目录,但我还需要能够在我的构建脚本中覆盖它.

msbuild web-applications visual-studio

8
推荐指数
2
解决办法
7141
查看次数

AppHarbor是否支持SQL Server数据库项目?

有没有人知道是否可以正确部署此类型的项目?我试过但不断收到此错误:

error MSB4019: The imported project "C:\Program Files\MSBuild\Microsoft\VisualStudio\v10.0\TeamData\Microsoft.Data.Schema.SqlTasks.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
Run Code Online (Sandbox Code Playgroud)

sql-server appharbor

7
推荐指数
1
解决办法
436
查看次数

ASP.NET无Cookie会话URL仅在移动Safari中发布

我们在AppHarbor上托管并使用他们的memcacher附加组件,如文档中所述进行设置:

<sessionState cookieless="false" regenerateExpiredSessionId="true" mode="Custom"
          customProvider="MemcachedSessionProvider" xdt:Transform="Insert">
  <providers>
    <add name="MemcachedSessionProvider"
         type="MemcachedProviders.Session.SessionStateProvider,MemcachedProviders"
         dbType="none" />
  </providers>
</sessionState>
Run Code Online (Sandbox Code Playgroud)

我们看到的问题只能通过以下方式重现:

  1. 在iOS Safari(或Twitter iphone应用程序的内置webkit浏览器)中将app缩短为appfail.net的URL:http: //t.co/6tRXopEJ
  2. 点击我们的"运行演示"按钮,然后使用我们的模拟账户自动登录用户.

此时服务器发出302重定向到一个无效的URL,例如: http://appfail.net/(F(FckQ4UX0zD_WSxk_adpkk3YysHsYQS4TSVpljxmswyBqEAZ1q-YhW4KePrpYQfJ4KlLGaiyje_TbpeSARVyI8LioQ7Jp5EIc0Zm9u99IqRRkkoMh_wr-jrsrvje4J7KpUt1n87xEMzMeqHzpMz9ksm42IqNnf3F9B6GBwrnuA5EY_YsV0))/Applications

该URL似乎包含SessionID,其格式与IIS用于无Cookie会话的格式相同.这也是有道理的,因为IIS可以配置为使用基于UserAgent的无会话cookie - 因此它只能在移动safari中重现(尽管我不确定为什么它只发生在t.co/重定向,而不是直接加载页面)

奇怪的是 - 我们关闭了无cookie会话!正如您在上面的会话状态中所看到的那样.我也尝试过设置'cookieless ="UseCookies"'...没有运气!

我已经添加了日志记录,甚至验证了系统在运行时配置为"UseCookies".

那么,我想知道我们如何才能将用户重定向到一个cookieless-URL,只需使用RedirectToAction()?

我想知道这是否与自定义会话状态提供程序相关 - MemcachedProvider?还是更基本的东西?

谢谢山姆

c# asp.net cookies mobile appharbor

7
推荐指数
1
解决办法
2744
查看次数

连接keep-alive在某些主机上无法与System.Net.Http.HttpClient一起使用

我正在使用.NET试验Heroku API System.Net.Http.HttpClient.特别是,我想keep-alive工作,以便我可以使用一个TCP连接发送许多HTTP请求,并且只进行一次SSL握手,而不是每次请求使用SSL握手设置TCP连接.

我正在测试https://api.heroku.com/status,它提供了一个很好的HTTP 200,并使用Wireshark来监控TCP流量.

Google Chrome,ApacheBench(带-k标志)和curl似乎都能够保持TCP连接打开并发送多个请求.HttpClient,不是那么多.我还针对其他主机测试了HttpClient(例如https://google.com/,我只看到一个SSL握手/ TCP设置.所以看起来这是HttpClient和Heroku API之间的糟糕交互.

这是我正在测试的代码:

private static async void TestUrl(string url)
{
    using (var client = GetClient())
    {
        await client.GetAsync(url);
        await client.GetAsync(url);
        await client.GetAsync(url);
        await client.GetAsync(url);
    }
}

private static HttpClient GetClient()
{
    var requestHandler = new HttpClientHandler
    {
        UseCookies = false,
        AutomaticDecompression = DecompressionMethods.Deflate | DecompressionMethods.GZip,
    };

    return new HttpClient(requestHandler);
}
Run Code Online (Sandbox Code Playgroud)

我还附上了一个Wireshark屏幕截图,显示HttpClient RST在接收数据后立即决定重置()连接.

Wireshark截图

对于这里发生了什么的任何建议?

.net ssl tcp http dotnet-httpclient

7
推荐指数
2
解决办法
7515
查看次数

使用Python simplejson返回预生成的json

我有一个GeoDjango模型对象,我不想序列化为json.我在我看来这样做:

lat = float(request.GET.get('lat'))
lng = float(request.GET.get('lng'))
a = Authority.objects.get(area__contains=Point(lng, lat))
if a:
    return HttpResponse(simplejson.dumps({'name': a.name, 
                                          'area': a.area.geojson,
                                          'id': a.id}), 
                        mimetype='application/json')
Run Code Online (Sandbox Code Playgroud)

问题是,simplejson认为a.area.geojson作为一个简单的字符串,即使它是美丽的预先生成的JSON.这可以通过eval()"区域字符串" 在客户端中轻松修复,但我想做到这一点.我可以告诉simplejson一个特定的字符串已经是json并且应该按原样使用(而不是作为简单的字符串返回)?或者还有另一种解决方法吗?

更新 只是为了澄清,这是当前返回的json:

{
    "id": 95,
    "name": "Roskilde",
    "area": "{ \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 12.078701, 55.649927 ], ... ] ] ] }"
}
Run Code Online (Sandbox Code Playgroud)

挑战是让"area"成为json字典而不是简单的字符串.

python django json simplejson geodjango

5
推荐指数
2
解决办法
1086
查看次数

Azure网站上的HTTP 1.0代理请求的gzip压缩

有没有办法让Azure网站为来自像Amazon Web Services CloudFront这样的HTTP 1.0代理的请求提供gzip的内容?考虑这样的请求:

curl -I -H "accept-encoding: gzip,deflate,sdch" -H "Via: 1.0 {foo.cdn.net}" -0 http://{fooproject}.azurewebsites.net/
Run Code Online (Sandbox Code Playgroud)

似乎要完成的一般方法是将以下元素添加到system.webServer:

<httpCompression noCompressionForHttp10="false" noCompressionForProxies="false" />
Run Code Online (Sandbox Code Playgroud)

它似乎httpCompression有效,ApplicationHost.config而不是web.config在Azure网站上不可覆盖.

有关解决方法的任何建议吗?

其他资源:

asp.net iis http-compression azure azure-web-sites

5
推荐指数
1
解决办法
733
查看次数

AWS CloudFront,“Vary”标头和内容协商

我正在尝试基于客户端Accept标头实现内容协商,以便接受的客户端image/webp获取 webp 图像,而不会获取普通旧 jpeg 的客户端。webp 和 jpeg 图像由相同的 url(即 /images/foo-image/)提供,并且返回的内容因Accept客户端呈现的标头而异。现在这在我的网站上效果很好。

下一个挑战是让这个有效的 AWS CloudFront 出现在我的站点前面。我将Vary标头设置为Vary: Accept让 CloudFront 知道它必须根据客户端Accept标头缓存并提供不同的内容。

不幸的是,这似乎不起作用,即 CloudFront 只是提供它首先得到的任何东西,Vary尽管如此Accept。有趣的是,CloudFront 似乎确实能够根据Accept-Encoding(即 gzip)改变内容。

有谁知道什么给?

http cdn amazon-cloudfront

5
推荐指数
1
解决办法
6586
查看次数

查找heroku dyno ip

我的 Heroku 应用程序只有一个 dyno,它访问外部资源,例如 database\cache\web-services\etc?

dyno IP 地址不是静态的,可能会更改,但不会经常更改。当您执行这些资源的维护时,了解哪个 IP 与哪个客户端相关联通常很有用,即使它是临时的。所以...

我如何临时知道 dyno 将从哪个 IP 地址访问资源?

heroku

5
推荐指数
1
解决办法
3251
查看次数

VS2010中的Web.Config转换

我正在使用web.config转换文件的概念.我有三个网络配置.一个是分期,生产,部署.我对这三个有不同的连接信息.

Web.Config中:

  <connectionStrings>
    <add name="MyGallery"
   connectionString="Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DevelopmentStorageDb;Data Source=BALA\SQLEXPRESS" />
  </connectionStrings>
Run Code Online (Sandbox Code Playgroud)

Web.Config.Production:

<add
    name="MyGallery"
    connectionString="Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=SharePoint_Config;Data Source=BALA\SQLEXPRESS"
    xdt:Transform="Replace" xdt:Locator="Match(name)"
    />
Run Code Online (Sandbox Code Playgroud)

现在我构建它正常工作的代码.我创建了包.当我在生产模式下运行代码时,新的连接字符串没有占用.

我该怎么解决这个问题.我是否需要额外的努力才能将其移至某个地方

visual-studio-2010 msdeploy visual-studio web-config-transform

4
推荐指数
1
解决办法
4670
查看次数

如何使用bitbucket和AppHarbor部署和构建应用程序?

这是我到目前为止所做的.

  1. 从AppHarbor获取存储库URL
  2. 在bitbucket中,我将AppHarbor服务配置为使用该令牌.
  3. 对于该项目,我输入了我在AppHarbor中使用的应用程序的相同名称(我不知道slug是什么)
  4. 我保存了设置
  5. 我在Access Management中授予了apphb读取权限
  6. 我推到了bitbucket.我甚至创建了一个虚拟变更集,以确保它会得到新的推动
  7. 在AppHarbor中,我点击了"构建URL",它告诉我我的URL已成功复制到剪贴板.

我按照信件的指南(好吧,除了slug,所以我发现这是问题).

bitbucket appharbor

2
推荐指数
1
解决办法
1389
查看次数

动态方法参数

我使用rethinkdb作为后端编写node.js应用程序.

要检索json值,您可以使用:

r.table('users').get(1).run()
Run Code Online (Sandbox Code Playgroud)

该方法调用将返回完整的json文档,但是有一种方法允许您指定要检索的属性,例如:

r.table('users').get(1).pick('firstName', 'lastName').run()
Run Code Online (Sandbox Code Playgroud)

我想利用这个功能,我想要"选择"存储在数组中的属性.我似乎无法找到将此数组转换为.pick方法的参数列表的方法.

请指教.

node.js rethinkdb

2
推荐指数
1
解决办法
680
查看次数

AppHarbor关于架构和可行性的基本问题

AppHarbor对我们的.NET解决方案非常有吸引力.但我有一些在互联网上找不到的问题.

我们主要关心的是专用SQL Server的可靠性:

  1. 是集群/镜像/复制?
  2. 他们升级/补丁/维护服务器时会发生什么.托管服务器和硬件何时失败?
  3. 是否安排升级?
  4. 我们可以设置升级时间间隔吗?
  5. 使用哪个版本的Sql Server?
  6. 我可以使用全文搜索吗?
  7. 我可以使用Reporting服务吗?
  8. 与SQL数据库的通信是否可靠?例如,在Azure SQL中,建议构建重试逻辑 - 如果命令不成功,则重试.

  9. AppHarbor可靠吗?每个云提供商偶尔会有一些停电(亚马逊,MS Azure ......).与他们相比,AppHarbor的可靠性是否更低?我知道AppHarbor运行在亚马逊之上.

  10. 您遇到了很多隐藏的问题吗?最常见的是什么?
  11. 有没有人决定离开appHarbor有充分的理由?
  12. 到目前为止,我可以看到Azure是一个真正的云系统,具有所有的缺点和优势 - 更具可扩展性,但具有改进的基础设施,如定制的SQL服务器...... AppHarbor模仿更多的本地解决方案.我的理解是否正确?
  13. 文件怎么样?
  14. 怎么支持?

谢谢您的帮助.

appharbor

2
推荐指数
1
解决办法
492
查看次数