您目前查看的是 Apigee Edge 說明文件。
前往 Apigee X 說明文件。 info
缺少 package.json,因此建構/部署失敗
Node.js 應用程式的根目錄中必須有 package.json 檔案。如果沒有 package.json 檔案,任何建立/部署 Proxy 的嘗試都會在建構時間失敗。
收到 Proxy 傳送的 502 Bad Gateway 錯誤
如果程序無法啟動,可能會出現「502 Bad Gateway」錯誤。如要偵錯,請檢查執行階段記錄,並在啟動時尋找錯誤訊息。常見錯誤是 package.json 中缺少或無效的開始指令。至少應在 scripts 屬性中指定 "start": "node ."。package.json例如:
{
"name": "hello-world",
"version": "1.0.0",
"main": "index.js",
"scripts": {
"start": "node ."
},
"author": "",
"license": "",
"description": "Hello World Application",
"dependencies": {
}
}Proxy 停止運作並傳回 504 閘道逾時
如果代管目標的目標應用程式未在逾時限制內回應,就會發生「504 Gateway Timeout」錯誤。
請檢查應用程式是否正在監聽環境變數 PORT 中設定的通訊埠。
您可以在應用程式中使用 process.env.PORT 存取這個變數。
否則,您可以檢查執行階段記錄,瞭解是否有其他錯誤訊息。另請參閱應用程式執行階段中設定的環境變數。
此外,Google App Engine (GAE) 會強制執行 60 秒的要求逾時。另請參閱 GAE 說明文件中的「配額與限制」。
路徑中含有無效字元
如果您使用代管目標部署 Proxy 時看到類似下列的錯誤,原因可能是 Proxy 名稱含有空格。使用代管目標時,Proxy 名稱不得包含空格。
Illegal character in path at index 69: https://my-domain.net/organizations/my-org/apps/MD5 Hash/revision/1733635923
npm ERR! rofs EROFS: read-only file system
Hosted Targets 應用程式會在容器中執行,並使用 tmpfs 檔案系統。只有檔案系統中的 /tmp 目錄可供代管目標應用程式寫入。很抱歉,新版 NPM 會嘗試將資料寫入 /root/.npm,以供快取、記錄等用途。如要解決這個問題,請參閱「變更 NPM 快取位置」或「不使用 NPM 執行應用程式」工作。