dimorlus: (Default)
[personal profile] dimorlus
А как сделать, чтобы при нажатии ни кнопку или ссылку на страничке на сервере
(IIS под виндой или apache) запускалась программа, или хотя бы создавался файл
в указанном где-то месте и с указанным содержимым?

Date: 2003-09-04 02:07 pm (UTC)
From: [identity profile] bigturtle.livejournal.com
Здравствуй Дима Орлов,

А почему CGI-шкрипт написать нельзя?

Date: 2003-09-04 02:41 pm (UTC)
From: [identity profile] dimorlus.livejournal.com
Может и можно, если бы я еще знал что это такое... Но в идеале - программу с командной строкой запустить.

Date: 2003-09-04 02:50 pm (UTC)
From: [identity profile] bigturtle.livejournal.com
У web server-а логика примерно такакая:
если нечто сидит в определенном каталоге (типа server_home/cgi)и имеет атрибут "x" (executable) то он это запускает (с тем или иным user id).
Дальше смотри докуметацию. Следи за security.

Date: 2003-09-04 03:01 pm (UTC)
From: [identity profile] dimorlus.livejournal.com
А можно ссылочку на какую-нибудь не слишком подробную документацию, желательно с примерами? Изучать это глубоко у меня планов нет, но простенькое управление программой через web сделать хотелось бы.

Date: 2003-09-04 06:10 pm (UTC)
From: [identity profile] bigturtle.livejournal.com
Для разных серверов (Apache, IIS) это будет по-разному. Ссылки сейчас под руками нет. C Apache наверняка идет полная дока.

Date: 2003-09-05 12:16 am (UTC)
From: [identity profile] yms.livejournal.com
А ещё на IIS есть такая штука, как ASP. Грубо говоря, это HTML с такими вставочками на VBasic'e или JScript'е, которые выполняются сервером. Всё, что снаружи этих вставочек, является обычным HTML, который идёт клиенту, а внутри них - код. (В MSDN всё описано.) Этот код может делать много вещей, в том числе запускать программы или добавлять свою информацию к возвращаемому HTML.

пример:


<%@ LANGUAGE=JScript%>
<html>
<body>
<%
wsh = new ActiveXObject("WScript.Shell");
cmd = "c:\\myprog\\myprog.exe";
Response.Write("Executing: "+cmd);
wsh.Run(cmd,0,true);
%>
</body>
</html>


Но и это ещё не всё. Так просто IIS команду выполнить не даст. Выполнимый файл ищется из-под того юзеровского аккаунта, который даётся всем клиентам, заходящим на вебсервер, а у него прав запускать команды нет. Более того, если такие права дать и он запустится, его процесс будет выполняться тоже не из под того аккаунта, что надо, и записать файл он не сможет, надо будет специально определять пермишены для записи для этого аккаунта на нужный каталог. Что надо делать, я объясню, если это тебе понадобится. Только что проверил — работает :)

Date: 2003-09-05 08:16 am (UTC)
From: [identity profile] robinbobin.livejournal.com
beresh PHP. idet i pod apache i pod iis. unix/windows/etc. risuesh formu v html
< form action=myscript.php>
<input ... >
<input ... >

sam myscrypt.php tipa
< ?php
exec ("format $param1 /autotest");
echo "disk vse";
?>

koroche pozvoni

January 2023

S M T W T F S
1234567
891011121314
15161718192021
222324 25262728
293031    

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 3rd, 2026 09:23 am
Powered by Dreamwidth Studios