![](/img/trans.png)
[英]Javascript, NodeJS and making a login post request to a webserver
[英]Save File to Webserver from POST Request
我在我的網絡服務器上的/var/www/cgi-bin
中用一些javascript到一個python腳本發出一個post請求,然后在這個python腳本中我想將圖像文件保存到我的html文件夾,所以它可以稍后被檢索。
位於/var/www/html
,但是現在我知道如何執行此操作的唯一方法是將python腳本設置為chmod 777
,我不想這樣做。
那么我怎樣才能保存我使用javascript從我的網頁抓取的文件,然后通過POST發送到服務器的javascript?
目前當我這樣做時,我得到一個錯誤,說python沒有保存權限,因為它的chmod是755
。
我這里是python代碼,我知道它的工作原理錯誤就是說我沒有權限寫這個文件
fh = open("/var/www/html/logo.png", "wb")
fh.write(photo.decode('base64'))
fh.close()
如果您不想將該目錄的權限更改為777
,則可以將目錄的所有者更改為HTTP服務器用戶,然后Web應用程序的用戶將能夠將文件寫入該目錄,因為他們具有rwx - 7
目錄的rwx - 7
權限。
要做到這一點,通過(因為您使用Apache作為您的Web服務器,請記住登錄為root):
chown -R apache:apache /var/www/cgi-bin/
請記住,那時只有用戶apache
和root
有rwx
到該目錄,而其他人有rx
。
這個命令意味着:
chown - change the owner of the directory
-R - operate on files and directories recursively
apache:apache - apache user, apache group
/var/www/cgi-bin/ - the directory
嘗試man chown
命令檢查的手冊頁chown
,了解更多, 這里有一個在線版本 。
如果你需要更改它,我認為該目錄的默認用戶是root
。 所以以root
身份登錄,然后運行命令:
chown -R root:root /var/www/cgi-bin/
我們在聊天室里解決了這個問題。
錯誤消息直接指示運行python服務器的角色/使用沒有對該文件夾的寫訪問權。 您需要分配角色或Web服務器用戶。 確保只提供寫訪問權限而不是寫入+執行權限。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.