Azure App 服務 中的環境變數和應用程式設定
在 Azure App 服務 中,部署或運行時間環境可以使用某些設定作為環境變數。 當您手動設定這些設定為 應用程式設定時,可以自定義其中一些設定。 此參考會顯示您可以使用或自訂的變數。
應用程式環境
下列環境變數通常與應用程式環境相關。
設定名稱 | 描述 | 範例 |
---|---|---|
WEBSITE_SITE_NAME |
唯讀。 應用程式名稱。 | |
WEBSITE_RESOURCE_GROUP |
唯讀。 包含應用程式資源的 Azure 資源組名。 | |
WEBSITE_OWNER_NAME |
唯讀。 包含擁有應用程式、資源群組和 Webspace 的 Azure 訂用帳戶標識碼。 | |
REGION_NAME |
唯讀。 應用程式的區域名稱。 | |
WEBSITE_PLATFORM_VERSION |
唯讀。 App Service 平臺版本。 | |
HOME |
唯讀。 主目錄的路徑(例如, D:\home 適用於 Windows)。 |
|
SERVER_PORT |
唯讀。 應用程式應該接聽的埠。 | |
WEBSITE_WARMUP_PATH |
從斜線開始,ping 以準備應用程式的相對路徑。 預設值為 / ,它會 Ping 根路徑。 即使 App Service 驗證設定為拒絕未經驗證的用戶端,也可以由未經驗證的用戶端偵測特定路徑,例如 Azure 流量管理員。 (注意:此應用程式設定不會變更 AlwaysOn 所使用的路徑。 |
|
WEBSITE_COMPUTE_MODE |
唯讀。 指定應用程式是在專用 () 或共用的 VMDedicated Shared /秒上執行。 |
|
WEBSITE_SKU |
唯讀。 應用程式的 SKU。 可能的值為 Free 、Shared 、Basic 和 Standard 。 |
|
SITE_BITNESS |
唯讀。 顯示應用程式是32位 (x86 ) 或64位(AMD64 )。 |
|
WEBSITE_HOSTNAME |
唯讀。 應用程式的主要主機名。 此處不會考慮自定義主機名。 | |
WEBSITE_VOLUME_TYPE |
唯讀。 顯示目前使用的記憶體磁碟區類型。 | |
WEBSITE_NPM_DEFAULT_VERSION |
應用程式使用的預設 npm 版本。 | |
WEBSOCKET_CONCURRENT_REQUEST_LIMIT |
唯讀。 Websocket 並行要求的限制。 針對 標準 層和更新版本,此值為 -1 ,但根據您的 VM 大小仍有每個 VM 限制(請參閱 跨 VM 數值限制)。 |
|
WEBSITE_PRIVATE_EXTENSIONS |
設定為 0 以停用使用私人網站延伸模組。 |
|
WEBSITE_TIME_ZONE |
根據預設,應用程式的時區一律為UTC。 您可以將它變更為預設時區中列出的任何有效值。 如果無法辨識指定的值,則會使用UTC。 | Atlantic Standard Time |
WEBSITE_ADD_SITENAME_BINDINGS_IN_APPHOST_CONFIG |
位置交換之後,應用程式可能會發生非預期的重新啟動。 這是因為進行交換之後,主機名稱繫結設定停止同步,但這個其況本身並不會造成重新啟動。 不過某些基本儲存體事件 (例如儲存體磁碟區容錯移轉) 可能會偵測到這些差異,而強制所有背景工作程序重新啟動。 若要將這些類型的重新啟動降到最低,請將所有位置上的應用程式設定值設定為 1 (預設值為0 )。 不過,如果您正在執行 Windows Communication Foundation (WCF) 應用程式,請勿設定此值。 如需詳細資訊,請參閱 針對交換進行疑難解答 |
|
WEBSITE_PROACTIVE_AUTOHEAL_ENABLED |
根據預設,當 VM 實例使用超過 90% 的已配置記憶體超過 30 秒時,或過去兩分鐘內 80% 的總要求需要超過 200 秒的時間,就會主動「自動排程」。 如果 VM 實例觸發了其中一個規則,復原程式就是實例的重疊重新啟動。 設定為 以 false 停用此復原行為。 預設值為 true 。 如需詳細資訊,請參閱 主動式自動癒合。 |
|
WEBSITE_PROACTIVE_CRASHMONITORING_ENABLED |
每當應用程式 VM 實例上的w3wp.exe進程因為 24 小時內未處理的例外狀況而損毀三次以上時,調試程序進程就會附加至該實例上的主要背景工作進程,並在背景工作進程再次當機時收集記憶體傾印。 接著會分析此記憶體轉儲,並在 App Service 記錄中記錄造成損毀的線程呼叫堆疊。 設定為 以 false 停用此自動監視行為。 預設值為 true 。 如需詳細資訊,請參閱 主動式當機監視。 |
|
WEBSITE_DAAS_STORAGE_SASURI |
在損毀監視期間(主動或手動),預設會刪除記憶體轉儲。 若要將記憶體轉儲儲存至記憶體 Blob 容器,請指定 SAS URI。 | |
WEBSITE_CRASHMONITORING_ENABLED |
設定為 以 true 手動啟用 當機監視 。 您必須設定 WEBSITE_DAAS_STORAGE_SASURI 與 WEBSITE_CRASHMONITORING_SETTINGS 。 預設值為 false 。 如果啟用遠端偵錯,此設定就不會有任何作用。 此外,如果此設定設為 true , 則會停用主動式當機監視 。 |
|
WEBSITE_CRASHMONITORING_SETTINGS |
具有下列格式的 JSON:{"StartTimeUtc": "2020-02-10T08:21","MaxHours": "<elapsed-hours-from-StartTimeUtc>","MaxDumpCount": "<max-number-of-crash-dumps>"} 如果WEBSITE_CRASHMONITORING_ENABLED 已指定,則為設定當機監視的必要專案。 若要只記錄呼叫堆疊,而不儲存記憶體帳戶中的損毀傾印,請在 JSON 中新增 ,"UseStorageAccount":"false" 。 |
|
REMOTEDEBUGGINGVERSION |
遠端偵錯版本。 | |
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING |
根據預設,App Service 會在應用程式建立時為您建立共用記憶體。 若要改用自定義記憶體帳戶,請將 設定為記憶體帳戶的 連接字串。 如需函式,請參閱 Functions 的應用程式設定參考。 | DefaultEndpointsProtocol=https;AccountName=<name>;AccountKey=<key> |
WEBSITE_CONTENTSHARE |
當您搭配 WEBSITE_CONTENTAZUREFILECONNECTIONSTRING 使用 指定自定義記憶體帳戶時,App Service 會在應用程式的該儲存體帳戶中建立檔案共用。 若要使用自定義名稱,請將此變數設定為您想要的名稱。 如果具有指定名稱的檔案共用不存在,App Service 會為您建立它。 |
myapp123 |
WEBSITE_SCM_ALWAYS_ON_ENABLED |
唯讀。 顯示 AlwaysOn 是否已啟用 (1 ) 或否 (0 )。 |
|
WEBSITE_SCM_SEPARATE_STATUS |
唯讀。 顯示 Kudu 應用程式是否在不同的進程中執行 (1 ) 或否 。0 |
|
WEBSITE_DNS_ATTEMPTS |
嘗試名稱解析的次數。 | |
WEBSITE_DNS_TIMEOUT |
等候名稱解析的秒數 |
變數前置詞
下表顯示 App Service 用於各種用途的環境變數前置詞。
設定名稱 | 描述 |
---|---|
APPSETTING_ |
表示客戶會在應用程式組態中將變數設定為應用程式設定。 它會插入 .NET 應用程式作為應用程式設定。 |
MAINSITE_ |
表示變數專屬於應用程式本身。 |
SCMSITE_ |
表示變數是 Kudu 應用程式特有的。 |
SQLCONNSTR_ |
表示應用程式組態中的 SQL Server 連接字串。 它會以 連接字串 的形式插入 .NET 應用程式。 |
SQLAZURECONNSTR_ |
表示應用程式組態中的 Azure SQL 資料庫 連接字串。 它會以 連接字串 的形式插入 .NET 應用程式。 |
POSTGRESQLCONNSTR_ |
表示應用程式組態中的PostgreSQL連接字串。 它會插入 .NET 應用程式作為 連接字串。 |
CUSTOMCONNSTR_ |
表示應用程式組態中的自訂 連接字串。 它會以 連接字串 的形式插入 .NET 應用程式。 |
MYSQLCONNSTR_ |
表示應用程式組態中的 My SQL 資料庫 連接字串。 它會以 連接字串 的形式插入 .NET 應用程式。 |
AZUREFILESSTORAGE_ |
Azure 檔案儲存體 中自定義容器的自定義共用 連接字串。 |
AZUREBLOBSTORAGE_ |
Azure Blob 儲存體 中自定義容器的自定義記憶體帳戶 連接字串。 |
NOTIFICATIONHUBCONNSTR_ |
表示 連接字串 至 Azure 通知中樞中的通知中樞。 |
SERVICEBUSCONNSTR_ |
表示 Azure 服務匯流排 實例的 連接字串。 |
EVENTHUBCONNSTR_ |
表示 Azure 事件中樞 事件中樞 連接字串。 |
DOCDBCONNSTR_ |
表示 azure Cosmos DB 中的資料庫 連接字串。 |
REDISCACHECONNSTR_ |
表示 Azure Cache for Redis 中的快取 連接字串。 |
FILESHARESTORAGE_ |
表示自定義檔案共享 連接字串。 |
部署
下列環境變數與應用程式部署相關。 如需與 App Service 組建自動化相關的變數,請參閱 建置自動化。
設定名稱 | 描述 |
---|---|
DEPLOYMENT_BRANCH |
針對本機 Git 或雲端 Git 部署(例如 GitHub),請將 設定為您想要部署的 Azure 分支。 根據預設,它是 master 。 |
WEBSITE_RUN_FROM_PACKAGE |
設定為 1 以從本機 ZIP 套件執行應用程式,或設定為外部 URL 的 URL,以從遠端 ZIP 套件執行應用程式。 如需詳細資訊,請參閱直接從 ZIP 套件 Azure App 服務 中執行您的應用程式。 |
WEBSITE_USE_ZIP |
已取代。 使用 WEBSITE_RUN_FROM_PACKAGE 。 |
WEBSITE_RUN_FROM_ZIP |
已取代。 使用 WEBSITE_RUN_FROM_PACKAGE 。 |
WEBSITE_WEBDEPLOY_USE_SCM |
設定為 , false 讓 WebDeploy 停止使用 Kudu 部署引擎。 預設值為 true 。 若要使用 Visual Studio 部署至 Linux 應用程式(WebDeploy/MSDeploy),請將它設定為 false 。 |
MSDEPLOY_RENAME_LOCKED_FILES |
1 如果無法在 WebDeploy 部署期間複製 DLL,請將 設定為 ,以嘗試重新命名 DLL。 如果 WEBSITE_WEBDEPLOY_USE_SCM 設定為 false ,則不適用此設定。 |
WEBSITE_DISABLE_SCM_SEPARATION |
根據預設,主要應用程式和 Kudu 應用程式在不同的沙箱中執行。 當您停止應用程式時,Kudu 應用程式仍在執行中,而且您可以繼續使用 Git 部署和 MSDeploy。 每個應用程式都有自己的本機檔案。 關閉此分隔(設定為 true )是不再完全支援的舊版模式。 |
WEBSITE_ENABLE_SYNC_UPDATE_SITE |
設定以確保 1 REST API 呼叫更新 site ,並且 siteconfig 會在傳回之前完全套用至所有實例。 使用 ARM 範本進行部署時,預設值為 1 避免後續 ARM 呼叫的競爭條件。 |
WEBSITE_START_SCM_ON_SITE_CREATION |
在 ARM 範本部署中,將設定為 ARM 範本中的 , 1 以在應用程式建立時預先啟動 Kudu 應用程式。 |
WEBSITE_START_SCM_WITH_PRELOAD |
針對 Linux 應用程式,將設定為 true ,以在啟用 Always On 時強制預先載入 Kudu 應用程式,方法是 Ping 其 URL。 預設值為 false 。 針對 Windows 應用程式,Kudu 應用程式一律會預先載入。 |
建置自動化
Kudu 組建組態適用於原生 Windows 應用程式,並用來控制 Git 型(或 ZIP 型)部署的行為。
設定名稱 | 描述 | 範例 |
---|---|---|
SCM_BUILD_ARGS |
在 msbuild 命令行結尾新增專案,使其覆寫預設命令行的任何先前部分。 | 若要執行全新組建: -t:Clean;Compile |
SCM_SCRIPT_GENERATOR_ARGS |
Kudu 會使用azure site deploymentscript 這裡所述的命令來產生部署腳本。 它會自動偵測語言架構類型,並決定要傳遞至命令的參數。 此設定會覆寫自動產生的參數。 |
若要將您的存放庫視為一般內容檔案: --basic -p <folder-to-deploy> |
SCM_TRACE_LEVEL |
建置追蹤層級。 預設值為 1 。 設定為較高的值,最多為 4,以進行更多追蹤。 |
4 |
SCM_COMMAND_IDLE_TIMEOUT |
建置程序啟動的每個命令都會以秒為單位逾時,而不需要產生任何輸出。 之後,命令會被視為閑置並終止。 預設值為 60 (一分鐘)。 在 Azure 中,也有一般閒置要求逾時,會在 230 秒後中斷用戶端連線。 不過,命令仍會在之後繼續執行伺服器端。 |
|
SCM_LOGSTREAM_TIMEOUT |
停止記錄串流之前的幾秒鐘內閑置逾時。 預設值為 1800 (30 分鐘)。 |
|
SCM_SITEEXTENSIONS_FEED_URL |
網站延伸模組庫的 URL。 預設值為 https://www.nuget.org/api/v2/ 。 舊摘要的 URL 為 http://www.siteextensions.net/api/v2/ 。 |
|
SCM_USE_LIBGIT2SHARP_REPOSITORY |
設定為 0 以使用 git.exe,而不是使用 git 作業的 libgit2sharp。 |
|
WEBSITE_LOAD_USER_PROFILE |
在 ASP.NET 建置自動化期間發生錯誤 The specified user does not have a valid profile. 時,請將此變數設定為 1 ,以在建置環境中載入完整的使用者配置檔。 只有當 是 Dedicated 時WEBSITE_COMPUTE_MODE ,才適用此設定。 |
|
WEBSITE_SCM_IDLE_TIMEOUT_IN_MINUTES |
SCM (Kudu) 網站的逾時時間。 預設值為 20 。 |
|
SCM_DO_BUILD_DURING_DEPLOYMENT |
使用 ZIP 部署時,部署引擎會假設 ZIP 檔案已準備好依現成執行,而且不會執行任何組建自動化。 若要開啟與 Git 部署相同的組建自動化,請將 設定為 true 。 |
特定語言設定
本節顯示每個支援語言架構的可設定運行時間設定。 在部署期間,建置自動化期間提供其他設定。
設定名稱 | 描述 |
---|---|
PORT |
唯讀。 針對 Linux 應用程式,.NET 執行時間在容器中接聽的埠。 |
WEBSITE_ROLE_INSTANCE_ID |
唯讀。 目前實例的標識碼。 |
HOME |
唯讀。 指向共用記憶體的目錄 (/home )。 |
DUMP_DIR |
唯讀。 損毀傾印的目錄 (/home/logs/dumps )。 |
APP_SVC_RUN_FROM_COPY |
僅限 Linux 應用程式。 根據預設,應用程式會從 /home/site/wwwroot 執行,這是所有向外延展實例的共享目錄。 將此變數設定為 , true 將應用程式複製到容器中的本機目錄,然後從該處執行。 使用此選項時,請務必不要硬式編碼對 的任何參考 /home/site/wwwroot 。 請改用相對於 /home/site/wwwroot 的路徑。 |
MACHINEKEY_Decryption |
針對 Windows 原生應用程式或 Windows 容器化應用程式,此變數會插入應用程式環境或容器,以啟用 ASP.NET 密碼編譯例程(請參閱 machineKey 元素。 若要覆寫預設值decryption ,請將它設定為 App Service 應用程式設定,或直接在 Web.config 檔案的 元素中machineKey 加以設定。 |
MACHINEKEY_DecryptionKey |
針對 Windows 原生應用程式或 Windows 容器化應用程式,此變數會插入應用程式環境或容器,以啟用 ASP.NET 密碼編譯例程(請參閱 machineKey 元素。 若要覆寫自動產生的decryptionKey 值,請將它設定為 App Service 應用程式設定,或直接在 Web.config 檔案的 元素中machineKey 加以設定。 |
MACHINEKEY_Validation |
針對 Windows 原生應用程式或 Windows 容器化應用程式,此變數會插入應用程式環境或容器,以啟用 ASP.NET 密碼編譯例程(請參閱 machineKey 元素。 若要覆寫預設值validation ,請將它設定為 App Service 應用程式設定,或直接在 Web.config 檔案的 元素中machineKey 加以設定。 |
MACHINEKEY_ValidationKey |
針對 Windows 原生應用程式或 Windows 容器化應用程式,此變數會插入應用程式環境或容器,以啟用 ASP.NET 密碼編譯例程(請參閱 machineKey 元素。 若要覆寫自動產生的validationKey 值,請將它設定為 App Service 應用程式設定,或直接在 Web.config 檔案的 元素中machineKey 加以設定。 |
WordPress
應用程式設定 | 範圍 | 值 | 最大值 | 描述 |
---|---|---|---|---|
WEBSITES_ENABLE_APP_SERVICE_STORAGE | Web App | true | - | 當設定為 TRUE 時,檔案內容會在重新啟動期間保留。 |
WP_MEMORY_LIMIT | WordPress | 128M | 512M | 前端或一般 wordpress PHP 記憶體限制(每個腳本)。 不能超過 PHP_MEMORY_LIMIT |
WP_MAX_MEMORY_LIMIT | WordPress | 256M | 512M | 管理員 儀錶板 PHP 記憶體限制(每個腳本)。 一般而言,管理員 相較於前端腳本,儀錶板/後端腳本需要大量的記憶體。 不能超過PHP_MEMORY_LIMIT。 |
PHP_MEMORY_LIMIT | PHP | 512M | 512M | 一般 PHP 腳本的記憶體限制。 它只能減少。 |
FILE_UPLOADS | PHP | 另一 | - | 可以是開啟或關閉。 請注意,值會區分大小寫。 啟用或停用檔案上傳。 |
UPLOAD_MAX_FILESIZE | PHP | 50M | 256M 檔案上傳大小上限。 最多可增加 256M。 | |
POST_MAX_SIZE | PHP | 128M | 256M | 最多可增加 256M。 通常應該超過UPLOAD_MAX_FILESIZE。 |
MAX_EXECUTION_TIME | PHP | 120 | 120 | 只能減少。 如果腳本花費超過 120 秒,請細分腳本。 已新增 ,以避免錯誤的腳本使系統變慢。 |
MAX_INPUT_TIME | PHP | 120 | 120 | 剖析輸入要求的時間限制上限。 只能減少。 |
MAX_INPUT_VARS | PHP | 10000 | 10000 | - |
DATABASE_HOST | Database | - | - | 用來連線到 WordPress 的資料庫主機。 |
Database_Name | Database | - | - | 用來連線到 WordPress 的資料庫名稱。 |
DATABASE_USERNAME | Database | - | - | 用來連線至 WordPress 的資料庫用戶名稱。 |
DATABASE_PASSWORD | Database | - | - | 用來連線到 MySQL 資料庫的資料庫密碼。 若要變更 MySQL 資料庫密碼,請參閱 更新管理員密碼。 每當 MySQL 資料庫密碼變更時,應用程式 設定 也需要更新。 |
WORDPRESS_ADMIN_EMAIL | 僅限部署 | - | - | WordPress 系統管理員電子郵件。 |
WORDPRESS_ADMIN_PASSWORD | 僅限部署 | - | - | WordPress 系統管理員密碼。 這僅供部署之用。 修改此值不會影響 WordPress 安裝。 若要變更 WordPress 系統管理員密碼,請參閱 重設密碼。 |
WORDPRESS_ADMIN_USER | 僅限部署 | - | - | WordPress 管理員用戶名稱 |
WORDPRESS_ADMIN_LOCALE_CODE | 僅限部署 | - | - | 用來連線至 WordPress 的資料庫用戶名稱。 |
網域和 DNS
設定名稱 | 描述 | 範例 |
---|---|---|
WEBSITE_DNS_SERVER |
傳出連線的主要 DNS 伺服器 IP 位址(例如後端服務)。 App Service 的預設 DNS 伺服器是 Azure DNS,其 IP 位址為 168.63.129.16 。 如果您的應用程式使用 VNet 整合 或位於 App Service 環境中,則預設會從 VNet 繼承 DNS 伺服器組態。 |
10.0.0.1 |
WEBSITE_DNS_ALT_SERVER |
連出連線的後援 DNS 伺服器 IP 位址。 請參閱 WEBSITE_DNS_SERVER 。 |
|
WEBSITE_ENABLE_DNS_CACHE |
允許快取成功的 DNS 解析。 根據預設,系統會排清過期的 DNS 快取專案,以及每隔 4.5 分鐘排清現有的快取。 |
TLS/SSL
如需詳細資訊,請參閱在 Azure App 服務 中使用程序代碼中的 TLS/SSL 憑證。
設定名稱 | 描述 |
---|---|
WEBSITE_LOAD_CERTIFICATES |
要載入程式代碼中憑證的逗號分隔指紋值,或 * 允許所有憑證在程式代碼中載入。 只有 新增至您應用程式的 憑證才能載入。 |
WEBSITE_PRIVATE_CERTS_PATH |
唯讀。 Windows 容器中已載入私人憑證的路徑。 |
WEBSITE_PUBLIC_CERTS_PATH |
唯讀。 Windows 容器中已載入公開憑證的路徑。 |
WEBSITE_INTERMEDIATE_CERTS_PATH |
唯讀。 Windows 容器中載入中繼憑證的路徑。 |
WEBSITE_ROOT_CERTS_PATH |
唯讀。 Windows 容器中已載入跟證書的路徑。 |
部署位置
如需部署位置的詳細資訊,請參閱在 Azure App 服務 中設定預備環境。
設定名稱 | 描述 | 範例 |
---|---|---|
WEBSITE_OVERRIDE_STICKY_EXTENSION_VERSIONS |
根據預設,月臺擴充功能的版本會專屬於每個位置。 這可防止非預期的應用程式行為,因為交換之後變更擴充功能版本。 如果您要同時交換擴充功能版本,請在所有位置上設定為 0 。 |
|
WEBSITE_OVERRIDE_PRESERVE_DEFAULT_STICKY_SLOT_SETTINGS |
根據預設,將特定設定指定為黏性或無法交換。 預設值為 true 。 將此設定設定設定為 false 或 0 , 讓所有部署位置 改為可交換。 特定設定類型沒有精細的控制。 |
|
WEBSITE_SWAP_WARMUP_PING_PATH |
Ping 以在交換中將目標位置熱身的路徑,從斜線開始。 默認值為 / ,它會透過 HTTP 偵測根路徑。 |
/statuscheck |
WEBSITE_SWAP_WARMUP_PING_STATUSES |
交換期間熱身作業的有效 HTTP 回應碼。 如果傳回的狀態碼不在清單中,準備和交換作業就會停止。 根據預設,所有回應碼都是有效的。 | 200,202 |
WEBSITE_SLOT_NUMBER_OF_TIMEOUTS_BEFORE_RESTART |
在位置交換期間,我們強制在特定 VM 實例上重新啟動月臺的逾時數目上限。 預設值為 3 。 |
|
WEBSITE_SLOT_MAX_NUMBER_OF_TIMEOUTS |
在位置交換期間,在放棄之前,單一 URL 所要提出的逾時要求數目上限。 預設值為 5 。 |
|
WEBSITE_SKIP_ALL_BINDINGS_IN_APPHOST_CONFIG |
設定為 true 或 1 以略過 中的所有 applicationHost.config 系結。 預設值為 false 。 如果您的應用程式觸發重新啟動,因為 applicationHost.config 已使用交換的插槽主機名進行更新,請將此變數設定為 true ,以避免重新啟動這類。 如果您正在執行 Windows Communication Foundation (WCF) 應用程式,請勿設定此變數。 |
自訂容器
如需自定義容器的詳細資訊,請參閱 在 Azure 中執行自定義容器。
設定名稱 | 描述 | 範例 |
---|---|---|
WEBSITES_ENABLE_APP_SERVICE_STORAGE |
設定為 true ,可讓 /home 目錄跨擴展實例共用。 預設為 true 自定義容器。 |
|
WEBSITES_CONTAINER_START_TIME_LIMIT |
等候容器在重新啟動容器之前完成啟動的時間量以秒為單位。 預設值為 230 。 您可以將它增加至 最大值 1800 。 |
|
WEBSITES_CONTAINER_STOP_TIME_LIMIT |
等候容器正常終止的秒數。 預設值為 5 。 您可以增加至最大值 120 |
|
DOCKER_REGISTRY_SERVER_URL |
在 App Service 中執行自訂容器時,登錄伺服器的 URL。 基於安全性,此變數不會傳遞至容器。 | https://<server-name>.azurecr.io |
DOCKER_REGISTRY_SERVER_USERNAME |
在向登錄伺服器 DOCKER_REGISTRY_SERVER_URL 進行驗證的用戶名稱。 基於安全性,此變數不會傳遞至容器。 |
|
DOCKER_REGISTRY_SERVER_PASSWORD |
在登錄伺服器 DOCKER_REGISTRY_SERVER_URL 進行驗證的密碼。 基於安全性,此變數不會傳遞至容器。 |
|
DOCKER_ENABLE_CI |
設定為 true 以啟用自定義容器的持續部署。 預設為 false 自定義容器。 |
|
WEBSITE_PULL_IMAGE_OVER_VNET |
連線 並從內部部署 虛擬網絡 或內部部署的登錄提取。 您的應用程式必須使用 VNet 整合功能連線到 虛擬網絡。 搭配私人端點的 Azure Container Registry 也需要此設定。 | |
WEBSITES_WEB_CONTAINER_NAME |
在 Docker Compose 應用程式中,只有一個容器可以存取因特網。 設定為組態檔中定義的容器名稱,以覆寫預設容器選取範圍。 根據預設,因特網可存取容器是定義埠 80 或 8080 的第一個容器,或者,若找不到這類容器,則為組態檔中定義的第一個容器。 | |
WEBSITES_PORT |
針對自訂容器,App Service 在容器上的自訂埠號碼,以將要求路由傳送至 。 根據預設,App Service 會嘗試自動偵測埠 80 和 8080。 此設定不會插入容器作為環境變數。 | |
WEBSITE_CPU_CORES_LIMIT |
根據預設,Windows 容器在執行時,會使用所選定價層的所有可用核心。 若要減少核心數目,請將 設定為所需的核心數目限制。 如需詳細資訊,請參閱 自定義計算核心數目。 | |
WEBSITE_MEMORY_LIMIT_MB |
根據預設,部署在 Azure App 服務 中的所有 Windows 容器都會根據 App Service 方案 SKU 設定記憶體限制。 設定為所需的記憶體限制 MB。 相同方案中應用程式之間的此設定累計總計不得超過所選定價層所允許的數量。 如需詳細資訊,請參閱 自定義容器記憶體。 |
調整大小
設定名稱 | 描述 |
---|---|
WEBSITE_INSTANCE_ID |
唯讀。 當應用程式向外延展至多個實例時,目前 VM 實例的唯一標識碼。 |
WEBSITE_IIS_SITE_NAME |
已取代。 使用 WEBSITE_INSTANCE_ID 。 |
WEBSITE_DISABLE_OVERLAPPED_RECYCLING |
重疊回收會讓它在關閉應用程式目前的 VM 實例之前啟動新的 VM 實例。 在某些情況下,可能會導致檔案鎖定問題。 您可以藉由將 設定為 1 來嘗試將其關閉。 |
WEBSITE_DISABLE_CROSS_STAMP_SCALE |
根據預設,如果應用程式使用 Azure 檔案儲存體 或 Docker 容器,則允許跨戳記進行調整。 設定為 1 或 true ,以停用應用程式區域內的交叉戳記縮放。 預設值為 0 。 設定 WEBSITES_ENABLE_APP_SERVICE_STORAGE 為 true 或 1 無法調整跨戳記的自定義 Docker 容器,因為其內容並未完全封裝在 Docker 容器中。 |
記錄
設定名稱 | 描述 | 範例 |
---|---|---|
WEBSITE_HTTPLOGGING_ENABLED |
唯讀。 顯示 Windows 原生應用程式的網頁伺服器記錄是否已啟用 (1 ) (0 )。 |
|
WEBSITE_HTTPLOGGING_RETENTION_DAYS |
如果已啟用 Web 伺服器記錄,則為 Windows 原生應用程式的網頁伺服器記錄天數保留期間。 | 10 |
WEBSITE_HTTPLOGGING_CONTAINER_URL |
如果已啟用 Web 伺服器記錄,Blob 記憶體容器的 SAS URL 可儲存 Windows 原生應用程式的 Web 伺服器記錄。 如果未設定,Web 伺服器記錄會儲存在應用程式的檔案系統中(預設共用記憶體)。 | |
DIAGNOSTICS_AZUREBLOBRETENTIONINDAYS |
如果已啟用應用程式記錄,則保留期間為 Windows 原生應用程式的應用程式記錄天數。 | 10 |
DIAGNOSTICS_AZUREBLOBCONTAINERSASURL |
如果已啟用應用程式記錄,則為 Blob 記憶體容器的 SAS URL 來儲存 Windows 原生應用程式的應用程式記錄。 | |
APPSERVICEAPPLOGS_TRACE_LEVEL |
要寄送至 Log Analytics 以進行 AppServiceAppLogs 記錄類型的記錄層級下限。 | |
DIAGNOSTICS_LASTRESORTFILE |
要建立的檔名,或記錄目錄的相對路徑,用於記錄內部錯誤以針對接聽程式進行疑難解答。 預設值為 logging-errors.txt 。 |
|
DIAGNOSTICS_LOGGINGSETTINGSFILE |
相對於 D:\home 或 /home 的記錄檔路徑。 預設值為 site\diagnostics\settings.json 。 |
|
DIAGNOSTICS_TEXTTRACELOGDIRECTORY |
相對於應用程式根目錄 (D:\home\site\wwwroot 或 /home/site/wwwroot ) 的記錄檔資料夾。 |
..\..\LogFiles\Application |
DIAGNOSTICS_TEXTTRACEMAXLOGFILESIZEBYTES |
以位元組為單位的記錄檔大小上限。 預設值為 131072 (128 KB)。 |
|
DIAGNOSTICS_TEXTTRACEMAXLOGFOLDERSIZEBYTES |
記錄資料夾的大小上限,以位元組為單位。 預設值為 1048576 (1 MB)。 |
|
DIAGNOSTICS_TEXTTRACEMAXNUMLOGFILES |
要保留的記錄檔數目上限。 預設值為 20 。 |
|
DIAGNOSTICS_TEXTTRACETURNOFFPERIOD |
逾時以毫秒為單位,讓應用程式記錄保持啟用。 預設值為 43200000 (12 小時)。 |
|
WEBSITE_LOG_BUFFERING |
根據預設,會啟用記錄緩衝處理。 設定為 0 以停用它。 |
|
WEBSITE_ENABLE_PERF_MODE |
針對原生 Windows 應用程式,設定為 TRUE ,以關閉 10 秒內傳回成功要求的 IIS 記錄專案。 這是透過移除擴充記錄來執行效能效能評定的快速方法。 |
效能計數器
如果您列舉它們,以下是不存在的「假」環境變數,但如果您個別查閱它們,則會傳回其值。 此值是動態的,而且可以在每次查閱時變更。
設定名稱 | 描述 |
---|---|
WEBSITE_COUNTERS_ASPNET |
包含 ASP.NET perf 計數器的 JSON 物件。 |
WEBSITE_COUNTERS_APP |
包含沙箱計數器的 JSON 物件。 |
WEBSITE_COUNTERS_CLR |
包含 CLR 計數器的 JSON 物件。 |
WEBSITE_COUNTERS_ALL |
JSON 物件,包含其他三個變數的組合。 |
快取功能
設定名稱 | 描述 |
---|---|
WEBSITE_LOCAL_CACHE_OPTION |
是否啟用本機快取。 可用的選項包括: - Default :繼承戳記層級全域設定。- Always :為應用程式啟用。- On 儲存體 Unavailability - Disabled :已針對應用程式停用。 |
WEBSITE_LOCAL_CACHE_READWRITE_OPTION |
本機快取的讀寫選項。 可用的選項包括: - ReadOnly :快取是只讀的。- WriteButDiscardChanges :允許寫入本機快取,但捨棄在本機所做的變更。 |
WEBSITE_LOCAL_CACHE_SIZEINMB |
以 MB 為單位的本機快取大小。 預設值為 1000 (1 GB)。 |
WEBSITE_LOCALCACHE_READY |
唯讀旗標,指出應用程式是否使用本機快取。 |
WEBSITE_DYNAMIC_CACHE |
由於網路檔案共用本質允許存取多個實例,動態快取會藉由在實例本機快取最近存取的檔案來改善效能。 修改檔案時,快取會失效。 快取位置是 %SYSTEMDRIVE%\local\DynamicCache (套用相同的 %SYSTEMDRIVE%\local 配額)。 若要啟用完整內容快取,請將 設定為 1 ,其中包含檔案內容和目錄/檔案元數據(時間戳、大小、目錄內容)。 若要節省本機磁碟使用量,請將 設定 2 為 只快取目錄/檔案元數據(時間戳、大小、目錄內容)。 若要關閉快取,請將 設定為 0 。 針對使用 WordPress 樣本建立的 Windows 應用程式和 Linux 應用程式,預設值為 1 。 對於所有其他 Linux 應用程式,預設值為 0 。 |
WEBSITE_READONLY_APP |
使用動態快取時,您可以將此變數設定為 1 ,以停用對應用程式根目錄的寫入許可權。D:\home\site\wwwroot /home/site/wwwroot App_Data 除了目錄之外,不允許獨佔鎖定,因此部署不會遭到鎖定的檔案封鎖。 |
網路
設定名稱 | 描述 |
---|---|
WEBSITE_RELAYS |
唯讀。 設定混合式 連線 所需的數據,包括端點和服務總線數據。 |
WEBSITE_REWRITE_TABLE |
唯讀。 在運行時間用來適當地執行查閱和重寫連線。 |
WEBSITE_VNET_ROUTE_ALL |
根據預設,如果您使用 區域 VNet 整合,您的應用程式只會將RFC1918流量路由傳送至 VNet。 設定為 1 將所有輸出流量路由傳送到您的 VNet,並受限於相同的 NSG 和 UDR。 此設定可讓您透過 VNet 存取非RFC1918端點、保護離開應用程式的所有輸出流量,以及強制將所有輸出流量傳送至您自己選擇的網路設備。 |
WEBSITE_PRIVATE_IP |
唯讀。 與 VNet 整合時,與應用程式相關聯的 IP 位址。 針對區域 VNet 整合,此值是來自委派子網位址範圍的 IP,而針對閘道所需的 VNet 整合,此值是來自 虛擬網絡 網關上所設定之點對站位址池位址範圍的 IP。 應用程式會使用此IP透過 VNet 連線到資源。 此外,它可以在描述的位址範圍內變更。 |
WEBSITE_PRIVATE_PORTS |
唯讀。 在 VNet 整合中,顯示應用程式可用來與其他節點通訊的埠。 |
WEBSITE_CONTENTOVERVNET |
如果您要在 App Service 上掛接 Azure 檔案共用,且 儲存體 帳戶限製為 VNET,請確定以 值1 啟用此設定。 |
金鑰保存庫參考
下列環境變數與金鑰保存庫參考相關。
設定名稱 | 描述 |
---|---|
WEBSITE_KEYVAULT_REFERENCES |
唯讀。 包含目前在應用程式中設定之所有 金鑰保存庫 參考的資訊(包括狀態)。 |
WEBSITE_SKIP_CONTENTSHARE_VALIDATION |
如果您將應用程式的共享記憶體連線設定WEBSITE_CONTENTAZUREFILECONNECTIONSTRING 為 金鑰保存庫 參考,則如果下列其中一個條件成立,應用程式就無法解析密鑰保存庫參考:如果下列其中一個條件成立,應用程式就無法解析密鑰保存庫參考:- 應用程式會使用系統指派的身分識別來存取金鑰保存庫。 - 應用程式會使用使用者指派的身分識別來存取金鑰保存庫,且金鑰保存庫會 以 VNet 鎖定。 若要避免在建立或更新時間發生錯誤,請將此變數設定為 1 。 |
WEBSITE_DELAY_CERT_DELETION |
用戶可以將此 env var 設定為 1,以確保背景工作進程相依的憑證在結束之前不會刪除。 |
CORS
下列環境變數與跨原始來源資源分享 (CORS) 組態相關。
設定名稱 | 描述 |
---|---|
WEBSITE_CORS_ALLOWED_ORIGINS |
唯讀。 顯示 CORS 允許的來源。 |
WEBSITE_CORS_SUPPORT_CREDENTIALS |
唯讀。 顯示是否將標頭true 設定Access-Control-Allow-Credentials 為 已啟用 (True ) 或False []。 |
驗證與授權
下列環境變數與 App Service 驗證相關。
設定名稱 | 描述 |
---|---|
WEBSITE_AUTH_DISABLE_IDENTITY_FLOW |
當設定為 true 時,會停用在 ASP 中指派線程主體身分識別。以 NET 為基礎的 Web 應用程式(包括 v1 函式應用程式)。 其設計目的是讓開發人員使用驗證來保護其網站的存取權,但仍在應用程式邏輯內使用個別的登入機制。 預設值為 false 。 |
WEBSITE_AUTH_HIDE_DEPRECATED_SID |
true 或 false 。 預設值是 false 。 這是舊版 Azure Mobile Apps 整合 Azure App 服務 的設定。 設定此選項可 true 解決使用者變更其設定檔資訊時,針對已驗證用戶產生的 SID(安全性識別元)可能會變更的問題。 變更此值可能會導致現有的 Azure Mobile Apps 使用者標識碼變更。 大部分的應用程式不需要使用此設定。 |
WEBSITE_AUTH_NONCE_DURATION |
格式_hours_:_minutes_:_seconds_ 的 timespan 值。 預設值為 00:05:00 , 或 5 分鐘。 此設定可控制針對所有瀏覽器驅動登入所產生的密碼編譯 Nonce 存留期。 如果登入在指定時間內無法完成,系統會自動重試登入流程。 此應用程式設定適用於搭配 V1 (傳統) 組態體驗使用。 如果使用 V2 驗證組態架構,您應該改用組 login.nonce.nonceExpirationInterval 態值。 |
WEBSITE_AUTH_PRESERVE_URL_FRAGMENT |
當設定為 true 且用戶選取包含 URL 片段的應用程式連結時,登入程式可確保 URL 的 URL 片段部分不會在登入重新導向程式中遺失。 如需詳細資訊,請參閱自定義登入和註銷 Azure App 服務 驗證。 |
WEBSITE_AUTH_USE_LEGACY_CLAIMS |
為了在升級之間維持回溯相容性,驗證模組會使用 API 中 /.auth/me 短到長名稱的舊版宣告對應,因此會排除某些對應(例如「角色」)。 若要取得較新版的宣告對應,請將此變數設定為 False 。 在 「roles」 範例中,它會對應至長宣告名稱 “http://schemas.microsoft.com/ws/2008/06/identity/claims/role"。 |
WEBSITE_AUTH_DISABLE_WWWAUTHENTICATE |
true 或 false 。 預設值是 false 。 當設定為 true 時,會從模組產生的 HTTP 401 回應中移除 WWW-Authenticate HTTP 回應標頭。 此應用程式設定適用於搭配 V1 (傳統) 組態體驗使用。 如果使用 V2 驗證組態架構,您應該改用組 identityProviders.azureActiveDirectory.login.disableWwwAuthenticate 態值。 |
WEBSITE_AUTH_STATE_DIRECTORY |
本機文件系統目錄路徑,會在啟用檔案型令牌存放區時儲存令牌。 預設值是 %HOME%\Data\.auth 。 此應用程式設定適用於搭配 V1 (傳統) 組態體驗使用。 如果使用 V2 驗證組態架構,您應該改用組 login.tokenStore.fileSystem.directory 態值。 |
WEBSITE_AUTH_TOKEN_CONTAINER_SASURL |
完整 Blob 容器 URL。 指示驗證模組將所有加密的令牌儲存並載入指定的 Blob 記憶體容器,而不是使用預設的本機文件系統。 |
WEBSITE_AUTH_TOKEN_REFRESH_HOURS |
任何正十進位數。 預設值為 72 (小時)。 此設定可控制會話令牌到期 /.auth/refresh 后的時間量,API 可用來重新整理它。 此期間之後的重新整理嘗試將會失敗,且用戶必須再次登入。 此應用程式設定適用於搭配 V1 (傳統) 組態體驗使用。 如果使用 V2 驗證組態架構,您應該改用組 login.tokenStore.tokenRefreshExtensionHours 態值。 |
WEBSITE_AUTH_TRACE_LEVEL |
控制寫入應用程式 記錄的驗證追蹤詳細資訊。 有效值為 Off 、、Error Warning 、Information 、 和 Verbose 。 預設值是 Verbose 。 |
WEBSITE_AUTH_VALIDATE_NONCE |
true 或 false 。 預設值是 true 。 除非在互動式登入期間暫時偵錯密碼編譯非驗證失敗時,否則不應該將此值設定為 false 。 此應用程式設定適用於搭配 V1 (傳統) 組態體驗使用。 如果使用 V2 驗證組態架構,您應該改用組 login.nonce.validateNonce 態值。 |
WEBSITE_AUTH_V2_CONFIG_JSON |
此環境變數會自動由 Azure App 服務 平臺填入,並用來設定整合式驗證模組。 此環境變數的值會對應至 Azure Resource Manager 中目前應用程式的 V2(非傳統)驗證組態。 其並非要明確設定。 |
WEBSITE_AUTH_ENABLED |
唯讀。 插入 Windows 或 Linux 應用程式,以指出是否啟用 App Service 驗證。 |
WEBSITE_AUTH_ENCRYPTION_KEY |
根據預設,自動產生的金鑰會當做加密金鑰使用。 若要覆寫,請將 設定為所需的密鑰。 如果您想要跨多個應用程式共用令牌或會話,建議您這麼做。 如果指定,則會取代 MACHINEKEY_DecryptionKey 設定。 |
WEBSITE_AUTH_SIGNING_KEY |
根據預設,自動產生的金鑰會當做簽署金鑰使用。 若要覆寫,請將 設定為所需的密鑰。 如果您想要跨多個應用程式共用令牌或會話,建議您這麼做。 如果指定,則會取代 MACHINEKEY_ValidationKey 設定。 |
受控識別
下列環境變數與受控識別相關。
設定名稱 | 描述 |
---|---|
IDENTITY_ENDPOINT |
唯讀。 擷取應用程式受控識別令牌的URL。 |
MSI_ENDPOINT |
已取代。 使用 IDENTITY_ENDPOINT 。 |
IDENTITY_HEADER |
唯讀。 對提出 HTTP GET 要求IDENTITY_ENDPOINT 時,必須加入X-IDENTITY-HEADER 標頭的值。 值會由平台旋轉。 |
MSI_SECRET |
已取代。 使用 IDENTITY_HEADER 。 |
健康情況檢查
下列環境變數與健康情況檢查相關。
設定名稱 | 描述 |
---|---|
WEBSITE_HEALTHCHECK_MAXPINGFAILURES |
拿掉實例之前,失敗的 Ping 數目上限。 將設定為和100 之間的2 值。 當您相應增加或相應放大時,App Service 會偵測健康情況檢查路徑,以確保新的實例已就緒。 如需詳細資訊,請參閱 健康情況檢查。 |
WEBSITE_HEALTHCHECK_MAXUNHEALTHYWORKERPERCENT |
若要避免大量狀況良好的實例,將不會排除超過一半的實例。 例如,如果 App Service 方案調整為四個實例,而三個實例狀況不良,則最多會排除兩個。 其他兩個實例(一個狀況良好且狀況不良)會繼續接收要求。 在狀況不良的案例中,所有實例都狀況不良,將不會排除任何實例。 若要覆寫此行為,請將 設定為 和100 之間的1 值。 較高的值表示將會移除狀況不良的實例。 預設值為 50 (50%)。 |
推播通知
下列環境變數與推播通知功能相關。
設定名稱 | 描述 |
---|---|
WEBSITE_PUSH_ENABLED |
唯讀。 啟用推播通知時新增。 |
WEBSITE_PUSH_TAG_WHITELIST |
唯讀。 包含通知註冊中的標記。 |
WEBSITE_PUSH_TAGS_REQUIRING_AUTH |
唯讀。 包含通知註冊中需要使用者驗證的標籤清單。 |
WEBSITE_PUSH_TAGS_DYNAMIC |
唯讀。 包含自動新增之通知註冊中的標籤清單。 |
注意
本文包含字詞的參考,Microsoft 已不再使用該字詞。 從軟體中移除該字詞時,我們也會將其從本文中移除。
Webjobs
下列環境變數與 WebJobs 相關。
設定名稱 | 描述 |
---|---|
WEBJOBS_RESTART_TIME |
對於連續作業,在重新啟動作業之前,因任何原因而關閉作業程式時,會延遲秒。 |
WEBJOBS_IDLE_TIMEOUT |
針對觸發的作業,逾時以秒為單位,如果作業處於閑置狀態,則會在逾時后,沒有 CPU 時間或輸出。 |
WEBJOBS_HISTORY_SIZE |
針對觸發的作業,每個作業的歷程記錄目錄中保留的執行數目上限。 預設值為 50 。 |
WEBJOBS_STOPPED |
設定為 以 1 停用執行任何作業,並停止所有目前執行中的作業。 |
WEBJOBS_DISABLE_SCHEDULE |
設定為 以 1 關閉所有排程觸發程式。 您仍然可以手動叫用作業。 |
WEBJOBS_ROOT_PATH |
Webjob 檔案的絕對或相對路徑。 對於相對路徑,值會與預設根路徑 (D:/home/site/wwwroot/ 或 /home/site/wwwroot/ ) 結合。 |
WEBJOBS_LOG_TRIGGERED_JOBS_TO_APP_LOGS |
設定為 true,將觸發 WebJobs 的輸出傳送至應用程式記錄管線(支援檔案系統、Blob 和資料表)。 |
WEBJOBS_SHUTDOWN_FILE |
App Service 偵測到關機要求時所建立的檔案。 Web 作業程式有責任偵測此檔案是否存在並起始關機。 使用 WebJobs SDK 時,會自動處理此元件。 |
WEBJOBS_PATH |
唯讀。 目前執行中作業的根路徑(將會在一些暫存目錄下)。 |
WEBJOBS_NAME |
唯讀。 目前的作業名稱。 |
WEBJOBS_TYPE |
唯讀。 目前的作業類型 (triggered 或 continuous )。 |
WEBJOBS_DATA_PATH |
唯讀。 包含作業記錄、歷程記錄和作業任何成品的目前作業元數據路徑。 |
WEBJOBS_RUN_ID |
唯讀。 針對觸發的作業,作業的目前執行標識符。 |
函式
設定名稱 | 描述 |
---|---|
WEBSITE_FUNCTIONS_ARMCACHE_ENABLED |
設定為 0 以停用函式快取。 |
WEBSITE_MAX_DYNAMIC_APPLICATION_SCALE_OUT |
Azure Functions 的應用程式設定參考 |
AzureWebJobsSecretStorageType |
Azure Functions 的應用程式設定參考 |
FUNCTIONS_EXTENSION_VERSION |
Azure Functions 的應用程式設定參考 |
FUNCTIONS_WORKER_RUNTIME |
Azure Functions 的應用程式設定參考 |
AzureWebJobsStorage |
Azure Functions 的應用程式設定參考 |
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING |
Azure Functions 的應用程式設定參考 |
WEBSITE_CONTENTSHARE |
Azure Functions 的應用程式設定參考 |
WEBSITE_CONTENTOVERVNET |
Azure Functions 的應用程式設定參考 |
WEBSITE_ENABLE_BROTLI_ENCODING |
Azure Functions 的應用程式設定參考 |
WEBSITE_USE_PLACEHOLDER |
Azure Functions 的應用程式設定參考 |
WEBSITE_PLACEHOLDER_MODE |
唯讀。 顯示函式應用程式是在佔位元主機 () 或自己的主機上執行generalized (specialized )。 |
WEBSITE_DISABLE_ZIP_CACHE |
當您的應用程式從 ZIP 套件 執行時, WEBSITE_RUN_FROM_PACKAGE=1 應用程式檔案系統中會快取最近部署的五個 ZIP 套件(D:\home\data\SitePackages)。 將此變數設定為 1 以停用此快取。 針對 Linux 取用應用程式,預設會停用 ZIP 套件快取。 |