在 Ubuntu 上通过 PHP exec 执行命令

问题描述 投票:0回答:1

我想通过 PHP exec() 运行 Linux 命令,下面的第一个命令完美地在 Ubuntu Server 22.04 的后台执行 -

<?php
$cmd = "java -jar /var/www/html/selenium-drivers/selenium-server-4.14.1.jar hub";
exec($cmd . " > /dev/null &");
?> 

但是与我的第二个命令非常相似的命令没有执行。

<?php
$cmd = "java -jar /var/www/html/selenium-drivers/selenium-server-4.14.1.jar node --port 5555 --selenium-manager true";
exec($cmd . " > /dev/null &");
?> 

我无法找出不工作的原因。有人请帮忙吗?

检查了PHP所有必要的权限,没有权限问题。第一个命令完美执行,但第二个命令则不然。

php ubuntu selenium-grid
1个回答
0
投票

我在 @ChrisHaas 的评论的帮助下解决了这个问题。实际问题与 www-data (Apache2) 访问目录的适当权限有关。我授予了目录权限,例如 -

sudo chmod -R 777 /var/www/html/selenium-drivers

然后我就可以执行命令了

<?php
$cmd = "java -jar /var/www/html/selenium-drivers/selenium-server-4.14.1.jar node --port 5555 --selenium-manager true";
exec($cmd . " > /dev/null &");
?>
© www.soinside.com 2019 - 2024. All rights reserved.