2015-12-20 55 views
2

我想在由Plesk(Linux)管理的虛擬主機中的PHP應用程序內執行Git命令(git pullgit status)。在Plesk環境中從PHP執行時的Git權限

由於git倉庫是設置由虛擬主機系統的用戶,在GIT中的命令被Apache執行PHP腳本(例如EXEC(git pull))在權限問題運行。

本地Git存儲庫必須由系統用戶修改哪些文件權限以及運行PHP腳本的Apache?

回答

1

你應該有一個SSH密鑰,這樣你就不必擔心權限,因爲它將通過SSH完成。

Here是共享代碼的不同方式的列表。
點擊所需的選項,它會顯示需要完成的內容。

+1

這是確定管理Git的權限。但是如何定義文件權限和所有權? – WeSee

+0

什麼是您的中央存儲庫? GitHub的? bitbucket等 – CodeWizard

+0

我在bitbucket上。但是這對Plesk下的本地文件權限沒有任何影響。 – WeSee

0

僅當「apache模塊」用作域上的PHP處理程序時,才能在Apache用戶下工作的PHP腳本。

只需切換從Apache模塊PHP處理程序的FastCGI或PHP-FPM:

Plesk PHP handler FastCGI/PHP-FPM

+0

Apache使用www-data用戶和www-data組運行PHP腳本,但在命令行上,vhost用戶具有不同的用戶名。這個團隊也不同。這意味着當git嘗試更新文件(例如git pull)時,由於權限問題而失敗。將所有文件設置爲777並不是解決方案。 – WeSee

+0

想你錯過了答案:)只需將php處理程序更改爲fastcgi。 –