[英]How to execute java command from php page with shell_exec() function?
我正在尝试使用函数 shell_exec() 从 PHP 页面运行 Java 程序,问题是总是返回空响应。 当运行如下命令时:ls、whoami、which,它起作用了。 我认为这与授予 www-data 用户访问权限有关,但我仍然找不到方法。
我尝试使用命令sudo visudo修改文件/etc/sudoers ,以便在文件末尾添加下一行,假设授予执行 java 命令的访问权限:
www-data ALL=NOPASSWD: /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
并尝试过这个:
www-data ALL=NOPASSWD: /usr/bin/java
我正在使用下一个代码从 php 页面调用 java 命令:
$result = shell_exec('java -version');
回声 $result;
我期望调用命令的输出,但实际输出为空。
提前致谢。
试试这个代码:
exec('java -version '.' 2>&1', $result);
var_dump($result);
参考: https : //medium.com/@jnheo/setting-up-a-web-service-php-to-spit-out-results-from-a-jar-file-213667eb008a
我刚刚测试过,它正在工作
<?php
$out = shell_exec('java 2>&1');
echo '<pre>'.$out.'</pre>';
?>
这可能会奏效。
echo shell_exec("echo " . $command_to_exec . " > myfile.java && javac myfile.java && java myfile.java");
只执行一行java代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.