2015-05-25 2 views
0

У меня есть точно такой же вопрос, как Executing AWS CLI command from php results in Unable to locate credentialsВыполнение команды AWS CLI из PHP не может найти учетные данные

я сделал:

cd ~/.aws 
mv config credentials 

Но это не помогло.

Так что я есть, и конфигурации и учетные данные имеют одинаковое содержание:

[по умолчанию]

aws_access_key_id = AKIAJIPLT472C32RD6AQ

aws_secret_access_key = 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

выход = JSON

регион = ap-юго-восток-1

код, я использую в моем PHP файл:

$s3 = system("aws s3 cp /var/www/html/v2/upload/__rmx4hqf.png s3://<bucket>/somefolder 2>&1"); 
+0

удалите '2> & 1' с конца, чтобы получить ошибку. – Jigar

+0

@Jigar, когда я удаляю эту ошибку строки, не отображается, но файл по-прежнему не загружается – woshitom

+0

вы должны получить ошибку в '$ s3', поэтому' var_dump ($ s3) ' – Jigar

ответ

0

Я думаю, что php команда не может найти AWS удостоверения файла, так как пользователь вы запускали $ aws configure отличается от эффективного пользователя PHP. Вы не предоставили достаточной информации о том, как вы запускали команду configure или как выполнялся скрипт php, так что это только моя догадка.

Что происходит, если вы явно передаете путь файла учетных данных через переменную окружения AWS_CONFIG_FILE (например, $s3 = system("AWS_CONFIG_FILE=/path/to/credential aws s3 cp ...)?

0

Попробуй добавить свой регион

$s3 = system("aws s3 cp /var/www/html/v2/upload/__rmx4hqf.png s3://<bucket>/somefolder 2>&1 --region ap-southeast-1"); 
0

как quiver говорит apache2 бежать от diffrent пользователя затем Termina пользователя вы можете увидеть апач ENV пользователь вары с командой getenv(); добавить ВАР к apache2 ENV вам нужно использовать PutEnv ("строка");

вам нужно добавить AWS cerdentials таким образом

putenv('AWS_DEFAULT_REGION=' . $region); putenv('AWS_ACCESS_KEY_ID=' . $key); putenv('AWS_SECRET_ACCESS_KEY=' . $secret);e print_r(getenv());

только это решение wotks для меня, когда я пытаюсь запустить AWS кли из PHP файла

original answer aws forum

Смежные вопросы