ローカルマシン上でプログラムを起動および停止できるサイトをPHPで作成したいと考えています。今までは、プログラムをシャットダウンすることしかできませんでしたが、開始することはできません。それは、externマシン(どこでも、それから私のネットワーク)でも動作しなければなりません。 サイトがWAMPをサーバー上でホストされているPHPでプログラムを起動
私のコードは次のとおりです。
<?php
if (isset($_POST['shutdown'])) {
$cmd = "taskkill /f /im euroscopefsdserver.exe /t";
shell_exec($cmd);
}
if (isset($_POST['start'])) {
shell_exec("E:\\Programma's\Euroscope\euroscopefsdserver");
}
if (isset($_POST['restart'])) {
$cmd = "taskkill /f /im euroscopefsdserver.exe /t";
$cmd2 = "E:\Programma's\Euroscope\EuroScopeFsdServer";
shell_exec($cmd);
shell_exec($cmd2);
}
?>
<form action="index.php" method="post">
<input type="submit" name="start" value="Start">
<input type="submit" name="shutdown" value="Shutdown">
<input type="submit" name="restart" value="Restart">
</form>
をしてくださいセキュリティ上の問題を軽視しないでください。 'E:'は奇妙に見え、 'プログラマズは間違っている。 – greybeard
どういう意味ですか?私のC:ドライブは250GB SSDのため、これは私の余分な1TB HDDドライブと私のプログラムをインストールするフォルダです –
'E:'は* '*'に続けて '\\ xyz'があっても絶対的に見えます。あなたは 'サイトはWAMPサーバーでホストされていると言いますが、* PHPコードは実行されることはありませんが、** euroscopefsdserver *がその正確なパスにインストールされた**クライアント**で実行されることはありません。単一のアポストロフィは正しいですか? "パス文字列リテラル"のバックスラッシュはどうなりますか? (テスト出力?) – greybeard