在Windows Azure上更改http.sys注册表设置?

Joa*_*rel 4 registry azure http.sys

我需要在Windows Azure上提升Http.sys注册表设置的UrlSegmentMaxLength .有谁知道怎么做?(或做一些导致等效行为的事情)

bka*_*aid 8

1)将.cmd文件添加到Web项目中.将构建操作设置为"无"并将"复制到输出目录"设置为"始终复制".

2)更新.cmd文件.下面是我使用的示例脚本,它检查是否已设置注册表更改,如果它没有修改注册表然后重新启动服务器(需要重新启动 - 只需重新启动http服务就会导致azure部署进入永无止境的循环).

@echo off
setlocal
set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP\Parameters
reg query "%regpath%" /v "AllowRestrictedChars"
if errorlevel 1 (
   reg add %regpath% /v AllowRestrictedChars /t REG_DWORD /d 00000001
   reg add %regpath% /v UrlSegmentMaxCount /t REG_DWORD /d 00000000
   reg add %regpath% /v PercentUAllowed /t REG_DWORD /d 00000001
   reg add %regpath% /v UrlSegmentMaxLength /t REG_DWORD /d 00000000
   shutdown /r /t 0
)
Run Code Online (Sandbox Code Playgroud)

3)在Azure角色的servicedefinition.csdef中,添加.cmd作为启动任务:

<WebRole name="WebRoleName">
  ...
  <Startup>
    <Task commandLine="httpSys.cmd" executionContext="elevated" />
  </Startup>
</WebRole>
Run Code Online (Sandbox Code Playgroud)

4)部署Azure角色,应该进行注册表更改.