我收到錯誤:「不允許存取該檔案 允許的路徑:C:\Users\Saravanan/.n8n-files**」**,使用 Read/Write Files from Disk 節點時發生此問題。
已設定的檔案選擇器參數(從磁碟讀取\寫入節點):C:\Saran\AI\AI_ProfileScreen
echo %N8N_ALLOWED_FILE_PATHS% —> C:\Users\YourName\Documents\pdfs;C:\Saran\AI\AI_ProfileScreen
檔案位置:C:\Saran\AI\AI_ProfileScreen\Aditiya_Developer_P3.pdf
已安裝的環境:使用 npm 設定在本機安裝的 N8N
無法解決此錯誤
Windows 使用反斜線 (\),但 n8n(基於 Node.js 構建)將反斜線解釋為轉義字符,除非將其加倍或翻轉。改為在路徑定義中使用正斜線。
讓我知道這是否有效,如果沒有,我還有一些可能有效的解決方案。
Hi @Saravanan_Nagarajan1
主要問題是 n8n 忽略了你設定的資料夾權限。即使你在終端機中輸入指令時可以看到正確的路徑,n8n 程式本身仍然使用它自己預設的受限資料夾。這就是為什麼你收到「存取不被允許」的錯誤。
這通常發生是因為 Windows 處理「環境變數」的方式。當你改變這樣的設定時,任何已經執行中的程式都不會注意到這個變化。如果 n8n 已經開啟,或者設定只被應用到一個特定視窗,n8n 會繼續表現得好像這個權限不存在一樣。
要永久解決這個問題,你應該將資料夾路徑新增到 Windows 系統環境變數。通過 Windows 控制台而不只是命令列來做這件事,可以確保每次 n8n 啟動時,它都知道確切可以存取哪些資料夾。
如果你想在不改變系統設定的情況下快速測試,你可以強制 n8n 以啟用的權限啟動。你在終端機中輸入特定的「set」指令,然後立即輸入啟動 n8n 的指令。這告訴程式,「在這個特定的工作階段,使用這些允許的路徑。」
對於命令提示字元 (cmd):
set N8N_ALLOWED_FILE_PATHS=C:\Saran\AI\AI_ProfileScreen && n8n start
對於 PowerShell:
$env:N8N_ALLOWED_FILE_PATHS="C:\Saran\AI\AI_ProfileScreen"; n8n start
一旦你應用了永久或快速修復方案,最重要的最後一步是完全關閉所有終端機視窗並重新啟動 n8n。重新啟動後,錯誤應該會消失,n8n 將能夠從 AI_ProfileScreen 資料夾讀取你的 PDF 檔案。
我找到了解決方案的修復方法;我已經將 N8N_RESTRICT_FILE_ACCESS_TO 環境變數設定為所需的路徑,現在運作正常。感謝大家的支持