我正在嘗試部署一個 django 專案。我將密鑰隱藏在一個名為.env的檔案中并將其添加到.gitignore,因此我僅在本地擁有 django 的密鑰,而不是在 git 存盤庫中。但是當我嘗試在 PythonAnywhere 中部署專案時,會發生錯誤,因為存盤庫中沒有密鑰(服務器沒有可以從中讀取密鑰的檔案)。
所以我知道對密鑰進行硬編碼并不好,但是我該如何獲取用于部署的密鑰呢?
我不應該在 git 存盤庫中有任何密鑰,對吧?
uj5u.com熱心網友回復:
我不應該在 git 存盤庫中有任何密鑰,對吧?
對。
所以我知道對密鑰進行硬編碼并不好,但是我該如何獲取用于部署的密鑰呢?
密鑰可以存盤為環境變數或與專案一起部署的檔案中。這兩個選項都必須通過您的主機完成。這是與您的專案一起部署的檔案的 Pythonanywhere 建議:https ://www.pythonanywhere.com/forums/topic/14207/
uj5u.com熱心網友回復:
您可以在 PythonAnywhere 上有一個單獨的 .env 檔案來存盤單獨的密鑰。.env 檔案也是存盤 PythonAnywhere 資料庫密碼等的好地方。從安全角度來看,在本地和 PythonAnywhere 上擁有具有不同值的不同檔案是有意義的。如果您曾經從 PA 上傳到您的 git 存盤庫,請不要忘記更新您的 PythonAnywhere .gitignore 檔案以包含它!
您可以通過 PA 檔案部分在專案目錄中創建一個新的 .env 檔案,并使用本地 .env 檔案作為基礎,通過以下方式生成一個新的鍵值:
$ python -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"
或使用像https://djecrety.ir/這樣的網路工具
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/471170.html
