Аннотация
При попытке вызова сценария Visual Basic на веб-сервере в контексте сценария CGI, сценарий может не работать правильно. Наиболее вероятной причиной этого является, что обработчик сценариев обычно выполняется в контексте безопасности IUSR_Machine, созданные службами IIS при установке. К сожалению Cscript.exe (обработчик сценариев) требует наличия определенных записей реестра для пользователя IUSR_Machine. Поскольку куст HKEY_CURRENT_USER недоступен для IUSR_Machine, IIS будет загружать HKEY_USERS\. По умолчанию куста на его месте. Тем не менее HKEY_USERS\. Куст по умолчанию не содержит необходимые разделы и записи для обработчика сценариев. В этих случаях возникнет ошибка CGI, без дополнительной информации. Или если файл Cscript.exe была запущена в пакетном режиме, будет отображаться сообщение об ошибке, указывающее, что не удалось загрузить параметры для указанного пользователя. В этом документе показывается Настройка компьютера IIS для выполнения как сценарий CGI сценариев Visual Basic.
Дополнительная информация
В данной статье предполагается, что сервер сценариев Windows установлена на компьютере с сервером IIS; параметр установки по умолчанию для NT Option Pack для этого. Чтобы включить поддержку VBScript, выполните следующие действия:
-
Откройте командную строку. Чтобы сделать это, выполните следующие действия.
-
В меню Пуск выберите пункт Выполнить.
-
Введите команду cmdи нажмите кнопку ОК.
-
-
Перейдите в папку Inetpub\AdminScripts. (Это расположение зависит от установки Internet Information Server).
-
Введите следующие команды:
Cscript adsutil.vbs ЗАДАЙТЕ w3svc/CreateCGIWithNewConsole «1»
Cscript adsutil.vbs ЗАДАЙТЕ w3svc/CreateProcessAsUser «0»
-
Настройте расширение .vbs для сопоставления Cscript.exe в каталог %SYSTEMROOT%\System32. Для этого в консоли управления Microsoft. В частности действия по настройке для IIS4 таковы:
-
Запустите приложение IIS4 Консоли управления .
-
Изменение свойств веб-узла (щелкните правой кнопкой мыши веб-узел в дереве отображения и выберите Свойства).
-
Выберите вкладку Домашний каталог .
-
В окне Настройки приложения выберите конфигурацию.
-
На вкладке Сопоставления выберите Добавить.
-
Исполняемый файл будет иметь следующие действия на компьютере WinNT 4.0 (Убедитесь, что используется правильный путь к Cscript.exe на установочном WinNT):
C:\WINNT\system32\CSCRIPT.EXE.exe %s %s
Введите расширение .vbs .
-
Убедитесь, что установлены флажки Обработчиком сценария и Убедитесь, что существует файлов .
-
Сохраните файл, нажав кнопку OK, Применить, ОКи ОК еще раз.
-
-
С помощью редактора реестра, создайте следующие разделы и записи:
HKEY_USERS\.DEFAULT\Software\Microsoft\Windows Script HostHKEY_USERS\.DEFAULT\Software\Microsoft\Windows Script Host\Settings
Убедитесь, что всем пользователям доступ на чтение для этих двух разделов. Теперь можно создайте следующие записи:
HKEY_USERS\.DEFAULT\Software\Microsoft\Windows Script Host\SettingsBatchMode: REG_DWORD: 0DisplayLogo: REG_DWORD: 0Timeout: REG_DWORD: 0
-
Теперь скопируйте файл сценария .vbs виртуального каталога на сервере, на котором есть разрешения на выполнение сценариев. По умолчанию каталог/Scripts будет иметь необходимые разрешения.
Вы сможете проверить конфигурацию работает и не создавая следующий сценарий:
Option ExplicitWScript.Echo "Content-Type: text/html"WScript.EchoWScript.Echo "If you see this, it worked."
Сохраните указанный сценарий в каталоге/Scripts как Test.vbs. Теперь можно вызовите с помощью любого браузера следующий URL-адрес сценария:
http://server/scripts/test.vbs.
Примечание: все ситуации, где Cscript.exe сценарий запускается в контексте безопасности локальной системы или локальной системы, олицетворяя пользователя применяются те же ограничения. Изменения в реестр следует исправить эти ситуации.
Ссылки
Интернета сведения сервера электронной документации.