Показано с 1 по 4 из 4

Тема: Cron из альтернативной PHP - не все расширения подключены

  1. #1
    Junior Member
    Регистрация
    23.08.2017
    Сообщений
    2

    Question Cron из альтернативной PHP - не все расширения подключены

    Из /etc/crontab/ запускаю скрипт:

    PHP код:
    * * * * * root /opt/php56/bin/php /var/www/user/data/www/site.ru/1.php 
    В нем

    PHP код:
    var_dump(get_loaded_extensions()); 
    выдает список подключенных расширений:

    PHP код:
    => 'Core'
        
    => 'date'
        
    => 'ereg'
        
    => 'libxml'
        
    => 'openssl'
        
    => 'pcre'
        
    => 'sqlite3'
        
    => 'zlib'
        
    => 'bz2'
        
    => 'calendar'
        
    10 => 'ctype'
        
    11 => 'hash'
        
    12 => 'fileinfo'
        
    13 => 'filter'
        
    14 => 'ftp'
        
    15 => 'gettext'
        
    16 => 'gmp'
        
    17 => 'SPL'
        
    18 => 'iconv'
        
    19 => 'pcntl'
        
    20 => 'session'
        
    21 => 'standard'
        
    22 => 'readline'
        
    23 => 'Reflection'
        
    24 => 'Phar'
        
    25 => 'shmop'
        
    26 => 'SimpleXML'
        
    27 => 'sockets'
        
    28 => 'mbstring'
        
    29 => 'tokenizer'
        
    30 => 'xml'
        
    31 => 'mysqlnd'
        
    32 => 'PDO'
        
    33 => 'curl'
        
    34 => 'dom'
        
    35 => 'gd'
        
    36 => 'json'
        
    37 => 'exif'
        
    38 => 'mcrypt'
        
    39 => 'mysqli'
        
    40 => 'pdo_mysql'
        
    41 => 'soap'
        
    42 => 'ssh2'
        
    43 => 'xmlrpc'
        
    44 => 'mhash' 
    При запуске скрипта без крона из браузера:
    PHP код:
    Core
    date
    ereg
    libxml
    openssl
    pcre
    sqlite3
    zlib
    bz2
    calendar
    10 
    ctype
    11 
    hash
    12 
    fileinfo
    13 
    filter
    14 
    ftp
    15 
    gettext
    16 
    gmp
    17 
    SPL
    18 
    iconv
    19 
    pcntl
    20 
    session
    21 
    standard
    22 
    readline
    23 
    Reflection
    24 
    Phar
    25 
    shmop
    26 
    SimpleXML
    27 
    sockets
    28 
    mbstring
    29 
    tokenizer
    30 
    xml
    31 
    cgi-fcgi
    32 
    intl
    33 
    mysqlnd
    34 
    PDO
    35 
    curl
    36 
    dom
    37 
    gd
    38 
    json
    39 
    exif
    40 
    mcrypt
    41 
    mysqli
    42 
    pdo_mysql
    43 
    soap
    44 
    ssh2
    45 
    xmlrpc
    46 
    mhash 
    Т.е. два расширения при запуске из CRON не видны. Есть подозрение что они устанавливались отдельно руками.
    Подскажите, что сделать чтобы php из crona увидел ВСЕ расширения? Спасибо.

  2. #2
    Senior Member
    Регистрация
    09.04.2013
    Адрес
    Москва
    Сообщений
    1,985

    По умолчанию

    Из crontab Вы запустили консольную версию (cli)
    А в браузере выполнилась php-cgi
    И разница в модулях - это модуль cgi-fcgi, который по сути на работу скриптов не влияет и intl, который по всей видимости активирован отдельно у пользователя в персональном ini

  3. #3
    Junior Member
    Регистрация
    23.08.2017
    Сообщений
    2

    По умолчанию

    Цитата Сообщение от Mobiaaa Посмотреть сообщение
    Из crontab Вы запустили консольную версию (cli)
    А в браузере выполнилась php-cgi
    И разница в модулях - это модуль cgi-fcgi, который по сути на работу скриптов не влияет и intl, который по всей видимости активирован отдельно у пользователя в персональном ini
    Спасибо за ответ. Если можно коротко, что нужно сделать, чтобы в cli появились эти расширения?

  4. #4
    Senior Member
    Регистрация
    09.04.2013
    Адрес
    Москва
    Сообщений
    1,985

    По умолчанию

    Создаёте файл ini В него extension=имя.so
    При запуске
    php -c /путь_к_файлу.ini /путь_к_скрипту.php

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •