請問各位大神
PHP 要給 client 端呼叫EXE執行檔 但執行後都是Server 端開啟程式
想知道怎麼讓client 直接執行EXE檔
程式碼如下:
<?php
exec('start \\\192.168.333.333\it\採購看板程式V1.2\採購狀況查詢V1.2(看板For筆電)\PurchaseEKB.exe');
?>
PHP是在Server端運作的程式語言
所以不會往PHP找答案
一開始方向就不對了
建議找時間了解Client-Server架構,可以節省以後解決問題的時間
之前使用URI Scheme的方式實作過,
就跟Teams、Webex開啟會議連結使用相同的開啟方式
Client電腦需要先註冊URL Protocol
呈現出來結果如下:
懶人包(網路上找的,看起來沒什麼問題):
https://kmmr.pixnet.net/blog/post/34454099
php 在那一部電腦
上執行
被 exec 的程式就在那一部電腦
上執行
講完收工放飯
我已經改用python來處理這類事情了
$res = trim(exec("./k.py '" . $p1 . "' '" . $p2 . "'"));
直接呼叫Client端當然不行
你能讓別人隨便進入你的電腦呼叫你的執行檔嗎?
正確的作法應該是你的Client端也要部屬API
並開放給外部連接
讓你的PHP對Client端呼叫
讓Client端的PHP來執行呼叫
基本上除非你大開後門。
WEB SERVER開放ROOT跟全開執行能力。
要不然正規來說,不太可能可以讓Client來操作SERVER上的應用程式。
這是一件很笨的事。
但真的需要做這些事怎麼辦呢??
基本如我說的,需要將大多數的權限都打開了。
當然,做這樣的笨事。早晚會出事。所以大多數而言,都是會透過間接的處理方式居多。
我這邊則是會利用一下排程來運行命令處理。而命令的處理可以由WEB來給與