我有一個使用django框架和mod_wsgi運行python代碼的apache httpd服務器。 我的view.py我需要做一個子進程調用來執行另一個python文件,在這個過程中需要創建一些目錄。python makedirs權限被拒絕
但是,我得到OSERROR 13:無論我嘗試創建目錄的位置,權限被拒絕。
只在/ tmp中創建目錄是成功的。
任何人都可以指導我如何解決這個問題?
在此先感謝!
編輯: 我在serverfault.com找到了答案。這裏是供參考的 apache2在根目錄下運行,但它分叉在'www-data'組下運行的進程。要創建文件/目錄
sudo mkdir /srv/www/writable
變化 因此,創建一個目錄組
sudo chgrp www-data /srv/www/writable
格蘭特組寫訪問
sudo chmod g+w /srv/www/writable
和你做。現在,您可以使用apache2運行的腳本在此目錄中創建任何文件/目錄。
實現你顯然有一個權限問題,由於正在運行Apache作爲一個用戶帳戶不同於擁有父目錄的用戶帳戶,您正嘗試創建新目錄。 – Keith 2012-07-23 06:00:24
是的,我可以解決這個問題。我使用apt-get安裝了apache,當我做ps aux | grep apache2時,我看到在根用戶下運行的apache2 ... – 2012-07-23 06:19:25
主要的apache線程以超級用戶身份運行,但它通常會切換到另一個用戶,通常是www數據。 – 2012-07-23 06:56:02