okovalev
@okovalev

Как понять где выполнен php скрипт?

В extensions.conf конфигурационного файла Asterisk мы вызываем:
exten => h,1,Agi(update.php,${trunk},${CDR(billsec)})

Что вольно можно перевести. Отправь данные в массиве $argv php-скрипту update.php

В самом php скрипте есть строчка:
file_put_contents('/var/lib/asterisk/agi-bin/log.txt', exec('pwd'));


Если запустить командную скрипт из командной строки, в log.txt будет:
/var/lib/asterisk/agi-bin
А если запустить из под Asterisk АТС:
/tmp

Внимание вопрос:
Где непосредственно выполняется php-скрипт?
Мне это ломает голову, потому что если указать относительный путь, а не абсолютный данные в log.txt не поступают... :(
  • Вопрос задан
  • 200 просмотров
Решения вопроса 1
@bkosun
Полный путь к текущему файлу или каталогу можно получить при помощи волшебных констант __FILE__ / __DIR__

php.net/manual/ru/language.constants.predefined.php

Используйте функцию realpath, чтобы раскрыть символические ссылки и получить абсолютный путь к файлу.

php.net/manual/ru/function.realpath.php
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
martin74ua
@martin74ua Куратор тега Linux
Linux administrator
почитайте документацию по астериску.
А чем вас не устраивает абсолютный путь?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
26 апр. 2024, в 10:21
1200 руб./в час
26 апр. 2024, в 10:10
1000 руб./за проект