Как разрешить IIS доступ к переменной path?

#batch-file #iis #iis-7 #cgi #fastcgi

#пакетный файл #iis #iis-7 #cgi #fastcgi

Вопрос:

У меня есть следующий php-код, который я развертываю на сервере iis8.

 <html>
<head>
</head>
<body>
<p>Hello word !!!!!!!</p>
<a href="<?php exec('file.bat');?>"> click me</a>
</body>
</html>
  

файл.bat выглядит следующим образом.

 @echo off{
java 1>>logfile.txt 2>>errorfile.txt
}
  

Когда я запускаю приложение, я получаю следующую ошибку в errorfile.txt

 java exe n est pas reconnu en tant que commande interne
  

Но когда я изменяю файл.bat для

  @echo off{
    C:javajdkbinjava 1>>logfile.txt 2>>errorfile.txt 
    }
  

Он работает хорошо, и файл журнала содержит «справку Java».

С другой стороны, если я дважды щелкну первый файл (file.bat), также будет работать, что означает, что переменная path хорошо отредактирована.

Любое объяснение, почему IIS не может использовать переменную среды path для получения местоположений команд и как устранить эту проблему?

Комментарии:

1. Каков путь для пользователя IIS.

2. Я имею в виду, что вместо этого я добавляю java, Android, ant в переменную среды PATH и запускаю свое веб-приложение. Я получаю следующую ошибку в файле журнала. java не распознается как внутренняя или внешняя команда