Веб-сайт PowerShell - PullRequest
       1

Веб-сайт PowerShell

0 голосов
/ 26 августа 2011

Возможно ли объединить PowerShell с PHP и HTML. Я пытаюсь создать сайт, на котором я могу использовать сценарии powershell и vbscript.

Ответы [ 5 ]

4 голосов
/ 26 августа 2011

Ну, вы можете.
Но это не рекомендуется.

Powershell:

function helloworld {
    [system.console]::Write("Hello,World from powershell script!");
}

PHP:

<?php
echo run();
function run() {
    if(exec("C:\helloworld.ps1",$out)) 
        return join($out);
        return 0;
}
?>

Выход:

Hello,World from powershell script!

Но производительность это очень низкая. Я голосую за использование ASP.NET.

3 голосов
/ 26 августа 2011

Чтобы использовать возможности .NET, используйте ASP.NET

Платформа, разработанная Microsoft для использования .NET в Интернете. Powershell - это метод использования .NET на локальном компьютере, а не в Интернете.

Чтобы использовать возможности Vb-script в Интернете, используйте ASP.NET , поскольку это позволит вам получить доступ к веб-ориентированному скрипту Visual Basic .

Чтобы использовать возможности PhP во всем, что я упомянул, используйте IronPHP , который компилирует PhP в байт-код .NET, который может работать в ASP.NET

Использовать инструменты для своих целей.Не начинайте рубить дрова молотком.

1 голос
/ 26 августа 2011

Вы должны иметь возможность использовать exec для запуска сценариев PowerShell и VB-сценариев, так же, как вы могли бы выполнить любой другой сценарий / исполняемый файл.

0 голосов
/ 28 июля 2015

Хотя вы могли бы создать сайт ASP.NET (с использованием IIS), который был закодирован в PHP (с использованием Phalanger) и передавал данные из powershell (только потому, что ...); то, что вы описываете, очень похоже на работу сценариев CGI.

(на основе http://blogs.iis.net/thomad/how-to-run-a-cgi-program-under-iis-7-0-or-iis-7-5)

  1. Активировать CGI (http://www.iis.net/configreference/system.webserver/cgi)
  2. Открыть консоль управления компьютером
  3. NAV: IIS -> Сайты -> Веб-сайт по умолчанию
  4. Выбор: сопоставления обработчиков (открытая функция)
    1. Добавить "scriptmap"
      • Имя: Powershell
      • Путь: * .ps1
      • Exec: c: \ ... \ ... \ powershell.exe
    2. Добавить разрешение на выполнение
      1. Щелкните правой кнопкой мыши вновь созданное сопоставление
      2. Выберите: Изменить разрешение функции
      3. Активировать «Выполнить»
  5. Перезагрузить сайт
  6. Перейдите в корневую файловую систему.
  7. Создать файл "pstest.ps1"

    "HTTP/1.0 200 OK";
    "Content-Type: text/html";
    "";
    "";
    "";
    "<html><body>Hello from Powershell</body></html>";
    "";
    

Это грубо. Я получаю сообщение об ошибке на локальном компьютере при попытке проверить эту конфигурацию.

ПРЕДУПРЕЖДЕНИЕ Один из моих любимых предостережений начала 90-х - это компания, которая использовала Bash для своего веб-сайта, URL "http: //// bin / bash / rm + -rf + /" имел очень интересные побочные эффекты. То же предостережение здесь применимо.

0 голосов
/ 26 августа 2011

Вы можете написать свой собственный код, в Интернете есть множество примеров кода на c #, которые будут запускать команды Powershell.

В Powershell Inside есть бесплатный след обработчика HTTP, который будет запускать код PowerShell. Очень круто: -)

http://www.powershellinside.com/powershell/asp/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...