第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

從 JavaScript 網(wǎng)頁(yè)啟動(dòng) shell 腳本文件

從 JavaScript 網(wǎng)頁(yè)啟動(dòng) shell 腳本文件

PHP
眼眸繁星 2023-03-04 11:17:13
我有一個(gè)網(wǎng)站,我在 JS 中創(chuàng)建了一個(gè)簡(jiǎn)單的表單: Launch form function()    {var thePrompt = window.open("", "", "widht=50");    var theHTML = "";    theHTML += "<p>Please insert the IP,TestCaseID and your credentials</p>";    theHTML += "<br/>";    theHTML += "IPprinter: <input type='text' id='theIP' placeholder='Enter Printer IP'/>";    theHTML += "<br/>";    theHTML += "TestCaseID: <input type='text' id='theID' placeholder='Enter TestCase ID'/>";    theHTML += "<br/>";    theHTML += "Username: <input type='text' id='theUser' placeholder='Enter Username'/>";    theHTML += "<br />";    theHTML += "Password: <input type='text' id='thePass' placeholder='Enter Password'/>";    theHTML += "<br />";    theHTML += "<input type='button' value='Launch' id='Launch'/>";    thePrompt.document.body.innerHTML = theHTML;    var theIP = thePrompt.document.getElementById("theIP").value;    var theID = thePrompt.document.getElementById("theID").value;    var theUser = thePrompt.document.getElementById("theUser").value;    var thePass = thePrompt.document.getElementById("thePass").value;    thePrompt.document.getElementById("Launch").onclick = function () {        var process = require('child_process');process.exec('./var/www/html/mytest/TestAPI.sh',function (err,stdout,stderr) {    if (err) {        console.log("\n"+stderr);    } else {        console.log(stdout);    }});    }當(dāng)我單擊“啟動(dòng)”按鈕從“/var/www/html/mytest/TestAPI.sh”啟動(dòng)腳本時(shí),沒(méi)有任何反應(yīng)。我哪里錯(cuò)了,或者有其他方法可以執(zhí)行該腳本,也許使用 PHP?!我知道這似乎是從網(wǎng)頁(yè)啟動(dòng)腳本的安全漏洞,但這是在用戶登錄后在受控環(huán)境中完成的。歡迎任何想法...
查看完整描述

2 回答

?
不負(fù)相思意

TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超10個(gè)贊

我的問(wèn)題的解決方案是調(diào)用一個(gè)執(zhí)行我的腳本的 PHP 頁(yè)面:javascript:


location.href = "test.php";

php 頁(yè)面(test.php):


<?php

   $outcome = shell_exec('/var/www/html/mytest.sh 2>&1');

   echo $outcome;

?>

但是,為了能夠運(yùn)行該腳本,您必須將 selinux 配置為“允許”。有很多安全方法可以代替將 Web 服務(wù)器安全性降低到“寬松”但不適用于我的 shell 腳本(我調(diào)用了許多程序和其他腳本)。


查看完整回答
反對(duì) 回復(fù) 2023-03-04
?
慕虎7371278

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超4個(gè)贊

據(jù)我所知,process.exec() 是一個(gè) node.js 代碼。它不在瀏覽器上運(yùn)行,與瀏覽器 Javascript 和 Node.Js 不同

兩者可能使用相同的語(yǔ)言,但它們運(yùn)行的環(huán)境不同。

因此,如果“/var/www/html/mytest/TestAPI.sh”文件在您的服務(wù)器上,您可以使用 PHP 甚至 nodeJS 來(lái)運(yùn)行它。您只需要?jiǎng)?chuàng)建一個(gè)運(yùn)行該腳本的端點(diǎn)。

如果您打算使用 PHP,那么我認(rèn)為您可以使用shell_exec()來(lái)實(shí)現(xiàn)這一點(diǎn)。


查看完整回答
反對(duì) 回復(fù) 2023-03-04
  • 2 回答
  • 0 關(guān)注
  • 183 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)