[僅限PaaS]{class="badge informative" title="僅適用於雲端專案(Adobe管理的PaaS基礎結構)和內部部署專案的Adobe Commerce 。"}
使用共用設定的範例
此範例說明如何在開發系統中變更下列設定、更新組建系統中的共用組態檔config.php,以及在生產系統中實作相同的設定:
- 時區
- 重量單位
這些設定可在 商店 >設定> 設定 >一般> 一般 中的管理員中使用。
您可以使用相同的程式來設定下列參照中任何非敏感的、非系統特定的設定:
開始之前
開始之前,請設定檔案系統許可權和擁有權,如開發、建置和生產系統的先決條件中所述。
假設
本主題提供修改生產系統組態的範例。 您可以視需要選擇不同的組態選項。
在本範例中,我們假設如下:
- 您使用Git原始檔控制
- 開發系統可在名為
mconfig的Git遠端存放庫中取得 - 您的Git工作分支名為
m2.2_deploy
步驟1:在開發系統中設定設定
若要設定開發系統中的時區和加權單位:
-
登入管理員。
-
按一下 商店 >設定> 組態 >一般> 一般。
-
在右窗格中,展開 地區設定選項。
下圖顯示一個範例。
-
從 時區 清單,按一下 GMT+00:00 (UTC)。
-
清除 加權單位 欄位旁的 使用系統值 核取方塊。
-
從 重量單位 清單,按一下 公斤。
-
按一下 儲存設定。
-
如果出現提示,請排清快取。
步驟2:更新共用設定
依照本節所述,在您的開發系統中產生共用組態檔app/etc/config.php,並使用原始檔控制將其傳輸至您的組建系統。
若要更新組態:
-
以檔案系統擁有者的身分登入或切換到您的開發系統。
-
變更至應用程式根目錄,然後執行傾印命令。
code language-bash cd <Magento root dir> php bin/magento app:config:dump例如,如果Commerce安裝在
/var/www/html/magento2中,請輸入:code language-bash cd /var/www/html/magento2 php bin/magento app:config:dump -
確認
app/etc/config.php已更新。code language-bash git status範例回應:
code language-none On branch m2.2_deploy Changed but not updated: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: app/etc/config.phpnote warning WARNING 請_不_將變更提交至 generated、pub/media或pub/static目錄至原始檔控制。 您會在建置系統上產生這些檔案。 開發系統可能有程式碼、主題等未準備好用於生產系統的專案。 -
只將您對
app/etc/config.php的變更籤入至原始檔控制。code language-bash git add app/etc/config.php && git commit -m "Updated shared configuration" && git push mconfig m2.2_deploy
步驟3:更新您的建置系統並產生檔案
現在您已確認將共用組態的變更提交至原始檔控制,您可以在建置系統中提取這些變更、編譯程式碼,並產生靜態檔案。 最後一個步驟是將這些變更提取至您的生產系統。 因此,您的生產系統的設定將與您的開發系統相符。
若要更新組建系統:
-
以檔案系統擁有者的身分登入組建系統。
-
變更至應用程式根目錄。
code language-bash cd <Magento root dir> -
從原始檔控制提取變更到
app/etc/config.php。code language-bash git pull mconfig m2.2_deploy -
編譯程式碼。
code language-bash bin/magento setup:di:compile -
編譯程式碼之後,產生靜態檢視檔案。
code language-bash bin/magento setup:static-content:deploy -f -
檢查原始檔控制中的變更。
code language-bash git add -A && git commit -m "Updated files on build system" && git push mconfig m2.2_deploy
步驟4:更新生產系統
該流程的最後一步是從原始檔控制更新您的生產系統。 這會提取您在開發和建立系統時所做的所有變更,這表示您的生產系統完全處於最新狀態。
若要更新生產系統:
-
以檔案系統擁有者的身分登入生產系統。
-
變更為應用程式根並啟用維護模式。
code language-bash cd <Magento root dir>code language-bash bin/magento maintenance:enable如需其他選項,例如設定IP位址白名單的功能,請參閱
magento maintenance:enable。 -
透過在
cron_run中將false設定為app/etc/env.php來停止任何執行中的佇列背景工作,如下所示:code language-php?start_inline=1 'cron_consumers_runner' => [ 'cron_run' => false ] -
更新設定。
code language-bash bin/magento app:config:import -
最後,
kill任何使用中的消費者處理序。code language-bash kill <PID>其中
PID是要終止的處理序識別碼,例如:code language-bash kill 1234 -
從原始檔控制提取程式碼。
code language-bash git pull mconfig m2.2_deploy -
更新設定。
code language-bash bin/magento app:config:import -
清除快取。
code language-bash bin/magento cache:clean -
結束維護模式。
code language-bash bin/magento maintenance:disable
驗證管理員中的變更
若要確認這些設定在Admin 中不可編輯:
-
登入管理員。
-
按一下 商店 >設定> 組態 >一般> 一般。
-
在右窗格中,展開 地區設定選項。
您剛才設定的選項顯示如下:
在Admin
設定選項
magento config:set --lock命令。