На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Дополнения к правилам (только для данного раздела)
- Используйте подсветку синтаксиса при выделении исходного кода;
- В описании темы обязательно укажите язык программирования;
- Прежде чем задать вопрос, обязательно воспользуйтесь поиском и загляните в FAQ раздела.
- Если вопрос касается серверного ПО, указывайте ОС.
- Если вопрос касается ASP.NET то лучше будет задать его в соответствующем разделе. Там вы сможете получить ответ намного быстрее.

Модераторы: Serafim, fatalist
  
> Права, с которыми запускаются скрипты из Apache+PHP
    Из консоли по ssh захожу из-под myusername и выполняю:

    ExpandedWrap disabled
      #cd /var/www/myusername/data/www/mysitename/tmp
      /var/www/myusername/data/www/mysitename/tmp# /usr/bin/pdflatex myfile.tex

    И все отлично работает, в папке tmp образуется pdf файл.

    Но когда вызываю эту же команду из PHP скрипта, который расположен по адресу /var/www/myusername/data/www/mysitename/myscript.php

    Вызываю так
    ExpandedWrap disabled
      $pipes = array();
      $options = array();
      $cmd = '/usr/bin/pdflatex myfile.tex';
      $cwd = /var/www/myusername/data/www/mysitename/tmp;
      proc_open( $cmd, $options, $pipes, $cwd )


    То в папке tmp образуется лог-файл с ошибками. Ошибки связаны с недоступностью файлов шрифтов. Причем создаваемые файлы имеют в атрибутах владельца myusername. Значит PHP и вызываемая им pdflatex выполняется из-под myusername.

    Из-за чего может быть разница? Почему из консоли нет ошибки, а из php, который работает как модуль Apache, получаются ошибки. Какие ограничения в правах дает выполнение через Apache+PHP?
    Сообщение отредактировано: S.Eugene -
    0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
    0 пользователей:


    Рейтинг@Mail.ru
    [ Script execution time: 0,0235 ]   [ 15 queries used ]   [ Generated: 26.04.24, 14:26 GMT ]