Сведения о вопросе

krutoi

11:28, 14th August, 2020

Теги

VBScript/IIS - как автоматически установить версию ASP.NET для конкретного веб-сайта

Просмотров: 458   Ответов: 2

Мне нужно написать сценарий создания пулов приложений и веб-сайтов на IIS 6.0. Я смог создать их с помощью adsutil.vbs и iisweb.vbs, но не знаю, как установить версию ASP.NET для сайтов, которые я только что создал, в 2.0.50727.0.

В идеале я хотел бы adsutil.vbs обновить метабазу. Как мне это сделать?



  Сведения об ответе

#hash

08:37, 16th August, 2020

@ Chris опередил меня на пути ADSI

Это можно сделать с помощью инструмента aspnet_regiis.exe. Существует один из этих инструментов для каждой версии ASP.NET, установленной на машине. Вы могли бы shell выйти на -

Это настраивает ASP.NET 1.1

%windir%\microsoft.net\framework\v1.1.4322\aspnet_regiis -s W3SVC/[iisnumber]/ROOT

Это настраивает ASP.NET 2.0

%windir%\microsoft.net\framework\v2.0.50727\aspnet_regiis -s W3SVC/[iisnumber]/ROOT

Вы, вероятно, уже знаете об этом, но если у вас есть несколько сайтов 1.1 и 2.0 на вашем компьютере, просто не забудьте переключить веб-сайт, на котором вы меняете версии ASP.NET, на совместимый пул приложений. Сайты ASP.NET 1.1 и 2.0 не смешиваются в одном пуле приложений.


  Сведения об ответе

dump

12:13, 2nd August, 2020

Я нашел следующий сценарий, опубликованный в блоге Diablo Pup. Он использует автоматизацию ADSI.

'******************************************************************************************
' Name: SetASPDotNetVersion
' Description: Set the script mappings for the specified ASP.NET version
' Inputs: objIIS, strNewVersion
'******************************************************************************************
Sub SetASPDotNetVersion(objIIS, strNewVersion)
 Dim i, ScriptMaps, arrVersions(2), thisVersion, thisScriptMap
 Dim strSearchText, strReplaceText

 Select Case Trim(LCase(strNewVersion))
  Case "1.1"
   strReplaceText = "v1.1.4322"
  Case "2.0"
   strReplaceText = "v2.0.50727"
  Case Else
   wscript.echo "WARNING: Non-supported ASP.NET version specified!"
   Exit Sub
 End Select

 ScriptMaps = objIIS.ScriptMaps
 arrVersions(0) = "v1.1.4322"
 arrVersions(1) = "v2.0.50727"
 'Loop through all three potential old values
 For Each thisVersion in arrVersions
  'Loop through all the mappings
  For thisScriptMap = LBound(ScriptMaps) to UBound(ScriptMaps)
   'Replace the old with the new 
   ScriptMaps(thisScriptMap) = Replace(ScriptMaps(thisScriptMap), thisVersion, strReplaceText)
  Next
 Next 

 objIIS.ScriptMaps = ScriptMaps
 objIIS.SetInfo
 wscript.echo "<-------Set ASP.NET version to " & strNewVersion & " successfully.------->"
End Sub 


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться