Запустите приложение на сервере человечности с помощью php

Я пытаюсь сделать минимальную систему Ubuntu, которая только имеет программное обеспечение, в котором я нуждаюсь. Я решил использовать сервер Ubuntu 14.04 для этого и установить openbox как GUI. Я также настроил nginx для работы с php в системе. Основная цель для меня для установки веб-сервера состояла в том, чтобы открыть приложения GUI в моей системе через сервер путем нажатия кнопки HTML.

Моя цель состоит в том, чтобы оставить компьютер присоединенным к ТВ и смочь управлять им с помощью моего телефона. Я чувствовал самый легкий способ сделать, который должен будет запустить приложения, которых я потребовал через веб-сайт, когда мне было нужно, поскольку я буду устанавливать сервер на компьютере так или иначе

Я могу подтвердить, что веб-сервер и php хорошо работают. Однако я не могу запустить приложение. Я использовал следующий код получить вывод, когда я нажимаю кнопку

<?php
     if ($_GET['buton']) {
           echo exec("kodi 2>&1", $output);
           echo $output;
<?
<div id="button"><a href="?kodi=true">kodi</a></button>

Результат

ERROR: Unable to create application. Exiting

В настоящее время я выполняю это в виртуальной машине, чтобы удостовериться, что все работает, прежде чем я установлю это на реальной машине.

Я был бы очень признателен, если кто-то мог бы помочь мне решить эту проблему.

2
задан 17 October 2015 в 15:44

1 ответ

В первую очередь, не изобретать велосипед. Существуют различные приложения, которые позволяют Вашему телефонному действию как беспроводной клавиатуре / мышь. Например (они были просто теми, я, оказалось, знал, существуют загрузки):

У Вас также есть вещи как kodi (ранее knokwn как XBMC) для превращения компьютера в медиацентр, который мог бы сделать то, в чем Вы нуждаетесь.


Если Вы все еще предпочтете устанавливать что-то сами, то необходимо будет позволить nginx пользователь для соединения с существующим X сессий. Необходимо будет также войти в систему однажды вручную (или просто установить машину для автовхождения в GUI). У Вас мог на самом деле быть свой сервер, запускают X сессий, но имеет больше смысла сделать, чтобы Ваш пользователь сделал так себе, который все Ваши настройки и т.д. там.

  1. Позвольте другим пользователям соединяться с Вашими X сессиями.

    Необходимо будет работать xhost + отключить управление доступом. Самый простой путь состоял бы в том, чтобы просто добавить ту команду к Вашему ~/.profile.Править ~/.profile и добавьте эти строки:

    ## Only run this when logging in graphically
    [ -z "$DISPLAY" ] && xset +
    
  2. Необходимо будет сказать php приложение который DISPLAY соединяться с. Например:

    <?php
    if ($_GET['button']) {
      $cmd = "export DISPLAY=:0;  kodi";
      exec($cmd);
    }
    ?>
    
    <div id="button"><a href="./a.php?button=1">kodi</a></div>
    

Обратите внимание, что это очень небезопасно, используйте на Ваш собственный риск.

2
ответ дан 18 October 2015 в 01:44
  • 1
    @SIDU существующая команда делает то, что Вы запрашиваете (кроме вывода MKV вместо MP4), но я don' t знают, что самая низкая частота кадров, поддерживаемая YouTube. You' ll просто должны экспериментировать. Почему Вы требуете MP4, когда Вы просто загружаете на YouTube? – llogan 8 January 2017 в 13:08

Другие вопросы по тегам:

Похожие вопросы: