之前提到過 Open edX 是一個開源的線上教學平台,
即使依照官方文件安裝完畢,
還是有許多細節需要管理者自行手動設定,
其中在教師頁面的資料下載中,
就有幾個檔案無法下載。
這就是今天的主題:
Open edX 資料下載問題 404 Not Found 解決方案
造成這個問題的原因無他,
因為 Nginx 預設的設定並沒有與實際檔案的路徑相符合,
只要解決路徑問題,
就能夠正確的下載檔案。
在 lms.env.json 中可找到成績下載的正確路徑為 /tmp/edx-s3/grades
此處不使用 AWS S3 作為儲存空間,
將檔案存在本地端:
ln -s /tmp/edx-s3/grades /edx/var/edxapp/media
接著使用編輯器打開 /edx/app/nginx/sites-avaliable/lms
找到 media 相關設定,
將其改為:
location ~ ^/media/(?P<file>.*) {
root /edx/var/edxapp/media;
try_files /$file /grades/$file;
expires 31536000s; }
location ~ ^/grades/(?P<file>.*) {
root /edx/var/edxapp/media/grades;
try_files /$file =404; expires 31536000s;
}
最後執行
sudo service nginx restart
套用設定,
就能正確下載存在本地端的資料。