2,617
次編輯
Tankianting(討論 | 貢獻) (建立內容為「{{Nav|程式語言、邏輯學|Django筆記}} 摘自 Django 文件: == 佈署到 WSGI/ASGI == 首先爲了要讓伺服器支援Python 作爲 CGI 語言,所…」的新頁面) |
Tankianting(討論 | 貢獻) |
||
行 2: | 行 2: | ||
摘自 Django 文件: | 摘自 Django 文件: | ||
== 佈署的檢核表 == | |||
*以下是原文:[https://docs.djangoproject.com/en/4.1/howto/deployment/checklist/ Devlopment Checklist]的摘要。 | |||
本段包含以下內容: | |||
* 安全性設定 | |||
* 佈署環境和其他環境有不同處 | |||
* 可選的安全特點 | |||
* 效能最佳化 | |||
* 錯誤報告功能 | |||
以下本文: | |||
* 執行<code>manage.py check --deploy</code> | |||
* <code>settings.py </code>的 SECRET_KEY 密鑰要設定,範例: | |||
<pre> | |||
with open('/etc/secret_key.txt') as f: | |||
SECRET_KEY = f.read().strip()</pre> | |||
* 避免其他人知道漏洞之所在,<code>DEBUG = True</code>要變成 False。 | |||
* ALLOWED_HOSTS = ['this_server.example.com'] 要設定為這臺機器。 | |||
* 資料庫密碼建議另外儲存 | |||
* EMAIL_BACKEND 和相關設定值要設定好。如:<code>EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'</code>(設定為 SMTP 發信)。參考:https://docs.djangoproject.com/en/4.1/topics/email/ | |||
* [https://docs.djangoproject.com/en/4.1/ref/settings/ STATIC_ROOT 和 STATIC_URL 的值](靜態資料)。 | |||
* STATICFILES_DIRS 靜態資料目錄設置,如: | |||
<pre> | |||
STATICFILES_DIRS = [ | |||
"/home/special.polls.com/polls/static", | |||
"/home/polls.com/polls/static", | |||
"/opt/webfiles/common", | |||
] | |||
</pre> | |||
* 多媒體資料:[https://docs.djangoproject.com/en/4.1/ref/settings/ MEDIA_ROOT and MEDIA_URL] | |||
* 強制以 HTTPS 傳送: | |||
** CSRF_COOKIE_SECURE = True # 避免 CSRF 安全機制的 cookie 明碼傳輸 | |||
** SESSION_COOKIE_SECURE = True # Session Cookie 避免明碼傳輸 | |||
* 設置 Debug = False 可以關掉佈署上線時不必要的功能。 | |||
* [https://docs.djangoproject.com/en/4.1/topics/logging/ 錯誤 log 記錄功能] | |||
== 佈署到 WSGI/ASGI == | == 佈署到 WSGI/ASGI == |