我已經成立了一個PHP腳本來執行的GitHub拉:PHP Github上拉腳本錯誤 '權限被拒絕(公鑰)'
這是包含在我的文件夾Github上/home/mysite/public_html/github
github_pull.php
<?php
echo `git pull 2>&1`;
?>
我的服務器也已經有SSH公共密鑰,因爲如果我從終端1進行git pull
:
ssh [email protected]
cd public_html/github
git pull
這個成功的作品(然而,我必須爲RSA密鑰先輸入密碼)更新:密碼不再需要(見註釋)
然而,當我運行github_pull.php
我得到出現以下錯誤: 權限被拒絕(publickey)。致命:遠程端掛機意外
SSH密鑰被包含在/home/mysite/.ssh/id_rsa
當我運行
<?php echo `whoami`;
它輸出mysite
用戶執行腳本(通常是Apache的'www_data')是否可以訪問ssh密鑰?另請注意,用戶可能正在尋找密鑰的其他位置。 – poke
(1)您的網絡服務器是以您的用戶身份運行還是以「www-data」方式運行? (2)是Web服務器可讀的SSH密鑰? (3)網絡服務器是否真的在尋找那個密鑰? (你總是可以試着'export GIT_SSH =「你的ssh命令」') – Wrikken
'但是我必須首先輸入rsa密鑰的密碼,這意味着沒有任何交互式的密鑰不能被使用。即即使密鑰可用,它也不起作用。 – AD7six