gcc などを入れて a.out はできる様になっていたが,今度は Web サーバの PHP からの呼び出し.
Synology NAS や Windows 環境と同じようにやってみたがうまく動作しない.
設定の問題なのか,環境が異なることによる変更が必要なのかは不明.
3 年位前にやった所からもう一度調べていくしかなさそう.
https://dev.mish.work/wordpress/2017/05/23/synology-web-exe/
この時と同じ php が存在するフォルダに存在する ./a.out の呼び出しはうまく動作した.
http://itl.mydns.jp/…/exec.php
htm と php で画像のアップロード.
https://itl.mydns.jp/…/up.htm
http でアクセスした時のユーザ名は admin .
Synology NAS では http .IIS だと IUSER ?
あまり関係ないが PHP 7 をインストール.
Iwao@AS5202T:/volume1/home/Iwao $ which 7z /usr/builtin/bin/7z Iwao@AS5202T:/volume1/home/Iwao $ which zip /usr/builtin/bin/zip Iwao@AS5202T:/volume1/home/Iwao $ which unzip /usr/bin/unzip Iwao@AS5202T:/volume1/home/Iwao $ which convert /usr/builtin/bin/convert Iwao@AS5202T:/volume1/home/Iwao $
フルパスで drawnow を指定すると drawnow.htm は生成される.
https://itl.mydns.jp/i_Tools/tiny/DrawNow/
普通に起動したユーザの場合 %TEMP% が /opt/tmp に設定される.
Web サーバや Synoloty NAS では設定されないので,コードで指定した /tmp になる.
実行ファイルの位置を求める方法がうまくなかった.
$exe = (change_exe ($_SERVER["DOCUMENT_ROOT"] . "/.../" . $exeTitle) ) ; $exe_name = $exeTitle ; $exe_name = change_exe($exe_name) ; $exe = ($_SERVER["DOCUMENT_ROOT"] . "/.../" . $exe_name ) ;
2020/04/21
一部動作しない部分があった(::Linux_zip_create).
原因は bash や pushd がないため.
bash の所は sh に.