require — php require_once не находит файл с абсолютным путем?

Я только начал настраивать php-библиотеку google ads, и сразу у меня возникли неприятные проблемы.

Я использую Arch Linux, и у меня есть все мои файлы в / var / lib / googleads

При попытке запустить GetRefreshToken.php требуется файл с именем init.php в том же каталоге. Вот эта строка:

require_once dirname(__FILE__) . '/init.php';

Когда я запускаю этот файл php, я получаю эту ошибку:

Неустранимая ошибка: require_once (): не удалось открыть обязательное ‘/var/lib/googleads/examples/AdWords/Auth/init.php’ (include_path = ‘.: / Usr / share / pear’) в / var / lib / googleads / examples / AdWords / Auth / GetRefreshToken.php в строке 30

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

-rwxrwxrwx 1 root root 1.4K 20 ноября 10:17 /var/lib/googleads/examples/AdWords/Auth/init.php

Понятия не имею, что здесь происходит. Кто-нибудь может помочь?

1

Решение

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

У PHP не было доступа к файлам в / var / lib, что, как я обнаружил, задается строкой open_basedir в php.ini, поэтому я добавил / var / lib в эту строку, и все работает правильно.

open_basedir = / var / www: / home /: / tmp /: / usr / share / pear /: / var / named /: / root /: / var / lib /:

Надеюсь, это поможет кому-то в будущем!

1

Другие решения

изменить это (include_path='.:/usr/share/pear') его правильный путь в вашем init.php или GetRefreshToken.php

-1

По вопросам рекламы [email protected]