Я попытался запустить сеанс tmux на php:
<?php
passthru('tmux new -d -s test');
system('tmux new -d -s test');
exec('tmux new -d -s test');
shell_exec('tmux new -d -s test');
escapeshellcmd('tmux new -d -s test');
?>
А это так и не работает. У кого-нибудь была подобная проблема, и как ее решить?
Если вы запускаете это через браузер, пользователь веб-сервера, вероятно, не имеет доступа к tmux или к сеансу входа в систему.
Я получаю только "tmux new -d -s test" от escapeshellcmd (), когда я повторяю его, у меня нет результата от других методов, и да, у меня установлен tmux, он работает, когда я запускаю команду в терминале, но в PHP работает dosent .
Я пробовал то же самое в laravel, и когда я запускаю php artisan serve, он работает
php artisan работает как учетная запись пользователя или root, в зависимости от того, как вы его запускаете. Пользователь, под которым работает Apache / nginx, обычно не имеет прав входа в систему, поэтому не может запускать сеансы экрана.
как я могу решить это на php? у тебя есть идеи?
Понятия не имею, но я бы тоже этого не рекомендовал, потому что могут случиться плохие вещи.






And it and does not workЭто как-то расплывчато. Некоторые из этих команд дают вам результат. От них возвращается какая-нибудь ошибка? У вас установленtmux?