本機開發伺服器選項

本機開發伺服器 (dev_appserver.py) 屬於 gcloud CLI 的 App Engine 元件。本主題提供 dev_appserver.py 用法的進階資訊。如要進一步瞭解本機測試,請參閱「使用本機開發伺服器」。

設定本機開發伺服器工具

範例 dev_appserver.py 指令可能如下所示:

python2 DEVAPPSERVER_ROOT/google_appengine/dev_appserver.py OPTION yaml_path FILES

更改下列內容:

  • DEVAPPSERVER_ROOT 與根目錄的路徑,您會在該目錄中擷取 devapp_server.py 的封存版本。如要進一步瞭解如何下載及使用已封存的 dev_appserver.py 版本,請參閱「使用本機開發伺服器」一文。
  • OPTION,其中包含本機開發伺服器支援的標記。
  • FILES 會為位置引數 yaml_path 指定一或多個 app.yaml 檔案,每個服務一個。

如需完整的選項清單,請執行下列指令:

DEVAPPSERVER_ROOT/google_appengine/dev_appserver.py -h

常用選項

最常見的選項如下:

--auto_id_policy=...
已淘汰。本機資料儲存庫如何指派自動 ID。選項為 sequentialscattered。預設值為 scattered
--admin_host=ADMIN_HOST
本機開發伺服器的管理控制台應繫結的主機名稱 (預設:localhost)。
--admin_port=ADMIN_PORT
本機開發伺服器的管理控制台應繫結的通訊埠 (預設:8000)。
--clear_datastore=yes|no
啟動網路伺服器之前,請先清除資料儲存庫資料和歷史記錄檔。預設值為 no
--datastore_path=...
本機資料儲存庫資料檔使用的路徑。如果檔案不存在,則伺服器會建立這個檔案。
--enable_sendmail=yes|no
使用本機電腦安裝的 Sendmail 傳送電子郵件訊息。
--enable_task_running=yes|no
啟用開發伺服器以執行推送工作。預設為 yes。如果您指定 no,伺服器將無法執行發送工作。
--help
顯示實用訊息後退出。
--host=...
伺服器使用的主機位址。需設定此位址才能使用網路上的其他電腦存取開發伺服器。若將位址設為 0.0.0.0,就能同時進行 localhost 存取和 IP 或主機名稱存取。預設值為 localhost
--log_level=...
將記錄訊息寫入主控台的最低記錄層級;將輸出指定登入層級或更高層級的訊息。可能的值為 debuginfowarningerrorcritical
--port=...
伺服器使用的連接埠號碼,預設值為 8080。若啟動多個伺服器 (例如用於服務),會將後續連接埠指派給這些伺服器,例如 80818082
--logs_path=...
根據預設,本機開發伺服器的記錄只會儲存在記憶體中。執行本機開發伺服器時,指定此選項可將記錄另存成檔案,即使伺服器重新啟動後,仍然可以使用該記錄。您必須指定 SQLite 資料庫檔案的目錄路徑和名稱。建立 SQLite 資料庫檔案時,若資料庫檔案尚不存在,會以指定的名稱建立該檔案。例如:--logs_path=/home/logs/boglogs.db
--require_indexes=yes|no
會停用在 index.yaml 檔案中自動產生項目的功能。當應用程式發出要求在檔案中定義其索引的查詢,但卻找不到索引定義時,會引發例外狀況。這種情況與在 App Engine 上執行時可能會發生的情況相似。預設值為 no
--smtp_host=...
傳送電子郵件訊息時所用的 SMTP 伺服器主機名稱。
--smtp_port=...
傳送電子郵件訊息時所用的 SMTP 伺服器連接埠號碼。
--smtp_user=...
傳送電子郵件訊息時所用的 SMTP 伺服器使用者名稱。
--smtp_password=...
傳送電子郵件訊息時所用的 SMTP 伺服器密碼。
--storage_path=...
除非以 --datastore_path--blobstore_path--logs_path 覆寫,否則會儲存所有本機檔案 (例如 Datastore、Blobstore、Cloud Storage 檔案和記錄) 的路徑。
--support_datastore_emulator=yes|no
使用 Cloud Datastore 模擬器 (測試版) 模擬本機資料儲存庫。
--datastore_emulator_port=...
Cloud Datastore 模擬器 (測試版) 使用的連接埠號碼。
--env_var=...
本機執行階段處理程序的使用者定義環境變數。每個 env_var 均採用 key=value 的格式,您可以定義多個環境變數。除了 app.yaml 中的 env_variables 外,您也可以使用這個標記設定本機處理程序的其他環境變數。例如:--env_var KEY_1=val1 --env_var KEY_2=val2
--php_executable_path=...
php-cgi 二進位檔的路徑。
--php_gae_extension_path=...
gae_runtime_module.so 二進位檔的路徑。
--php_remote_debugging=yes|no
設為「yes」,表示啟用使用 XDebug 進行遠端偵錯