2012-12-20 46 views

回答

9

此錯誤通常是由CKAN的FileStore未正確設置或FileStore的依賴項安裝不正確引起的。請參閱CKAN的FileStore and File Uploads文檔。

確保:

  • 你必須安裝在您的CKAN的virtualenv pairtreepip install pairtree

  • 你必須安裝在您的CKAN的virtualenv​​(pip install argparse

  • 你有ofs.implofs.storage_dir選項在您的CKAN ini文件的[app:main]部分正確設置,例如:

    ofs.impl = pairtree 
    ofs.storage_dir = /mnt/datalocale 
    
  • 確保您的ofs.storage_dir目錄存在。在shell中運行此命令:mkdir -p /path/to/your/ofs/storage/dir

  • 確保CKAN運行的操作系統用戶(例如用戶www-data,如果您在Ubuntu上使用Apache運行CKAN)具有對ofs.storage_dir的讀寫權限。例如,如果您正在使用的Apache運行在Ubuntu上CKAN,在終端中運行以下命令:

    sudo chown www-data /path/to/your/ofs/storage_dir 
    sudo chmod u+rwx /path/to/your/ofs/storage_dir 
    sudo service apache2 restart 
    

如果所有上述失敗,然後尋求幫助,使用此CKAN tag on StackOverflowckan-dev mailing list無論是。發帖時,它是有用的,包括:

  • 你使用的是什麼操作系統
  • 你使用什麼版本CKAN的
  • 你如何部署CKAN(包安裝或源碼安裝Apache網絡服務器?或貼紙發展安裝?)
  • 你CKAN ini文件(刪除任何敏感細節)你從CKAN得到
  • 任何錯誤,無論是從那裏你正在運行paster serve ...或者,如果你正在與Apache運行CKAN終端,從一個日誌文件,如/var/log/apache2/YOURSITE.error.log。如果你能給我們一個完整的Python追溯,這通常是最有用的。
  • 在您的CKAN virtualenv中運行時,pip freeze命令的輸出。
0

如果以前的答案沒有解決,那麼您可能沒有其他選項來檢查,特別是如果您不在根網址(/)處運行CKAN,是否ckan.api_url設置正確。此配置不會自動從ckan.site_url(它應該是)中設置,並且如果CKAN安裝在子路徑(如/ ckan /)上,則由Javascript製作的任何API調用都將失敗。另外一個嘗試的配置是將ckan.api_url設置爲與ckan.site_url相同。