首先,這是我第一次設置webhook,並且我不熟悉Windows服務器。我看過不少帖子,但我仍然無法解決問題 - 可能是由於我對Windows服務器和權限缺乏瞭解。在IIS上通過PHP設置git部署時遇到問題
我有一個Windows 2008 R2,我希望能夠在將更改推送到外部GIT存儲庫後通過PHP腳本進行自動拉取。
- 該網站已設置並正常工作。它生活在c:\ inetpub \ wwwroot \ sitename
- 這個文件夾是用我的遠程桌面用戶,這是一個管理員克隆。克隆是通過Git Bash完成的,我知道SSH密鑰位於管理員的home/.ssh目錄中。
- 此文件夾是IIS_IUSRS
- 寫我也複製了鑰匙進入
C:\Program Files (x86)\Git\.ssh
這裏指出的(Git can't find .ssh)
我有一個文件夾中的一個PHP腳本與「拉」代碼:
exec('"C:\Program Files (x86)\Git\bin\git.exe" pull 2>&1', $output);
var_dump($output);
echo '--done--';
頁面只是掛載在瀏覽器上的加載圖標。沒有輸出。
但如果做 '狀態':
exec('"C:\Program Files (x86)\Git\bin\git.exe" status 2>&1', $output);
var_dump($output);
echo '--done--';
我得到預期的輸出。
我猜這可能是由於SSH密鑰的權限。運行使用Windows CMD(不混帳bash)的兩個腳本作品雖然
所以我的煩惱是:
- 我不知道,如果它沒有被加載的原因SSH密鑰我無法在瀏覽器上看到錯誤
- 我不確定我是否從正確的方向開始。
我不敢小心翼翼,因爲這是爲了生產。
謝謝!
好,感謝這一點。只要有空,我會試一試。 – user3377465