2014-01-30 84 views
0

我使用的包裝,「Django的所見即所得編輯者」,爲管理中的博客條目界面應用。當管理網站的負載,包注入源的URL爲少數JavaScript文件,它需要渲染的富文本編輯器:的Javascript的URI注入模板在運行時不給予適當的S3後端的網址 - 所有其他注入管理員網址呈現相應

<script type="text/javascript" src="/static/redactor/jquery.min.js"></script> 
<script type="text/javascript" src="/static/redactor/jquery-migrate.min.js"></script> 
<script type="text/javascript" src="/static/redactor/redactor.min.js"></script> 
...and so on... 

我正在使用的寶途後端從文件服務項目一個S3桶。通過Django的注入使管理頁面的網址正確渲染,追加適當的S3數據進行呼叫剷鬥:

<script type="text/javascript" src="https://siteName.s3.amazonaws.com/admin/js/jquery.min.js?Signature=signatureKeyGoesHere&amp;Expires=1454163206&amp;AWSAccessKeyId=AWSAccessKeyIDGoesHere"></script> 
<script type="text/javascript" src="https://siteName.s3.amazonaws.com/admin/js/jquery.init.js?Signature=signatureKeyGoesHere&amp;Expires=1454163206&amp;AWSAccessKeyId=AWSAccessKeyIDGoesHere"></script> 
<script type="text/javascript" src="https://siteName.s3.amazonaws.com/admin/js/actions.min.js?Signature=signatureKeyGoesHere&amp;Expires=1454163206&amp;AWSAccessKeyId=AWSAccessKeyIDGoesHere"></script> 

出於某種原因,主編的URL不能正確地呈現 - 追加數據需要撥打S3存儲區的電話。 我在本地開發期間一切工作正常(雖然仍在使用遠程文件後端)

我在第一次部署期間也一切正常。

就在這個晚上,我去與發展分支站點周圍亂走 - 這有完全相同的代碼庫的生產(這是在初始部署過程工作) - 一看,發現博客條目形式沒有得到渲染。我檢查了在瀏覽器的JavaScript控制檯,並找到有關主編使用的文件資源加載失敗消息的一把:

Failed to load resource: the server responded with a status of 404 (Not Found) http://siteName.herokuapp.com/static/redactor/jquery.min.js 
Failed to load resource: the server responded with a status of 404 (Not Found) http://siteName.herokuapp.com/static/redactor/css/redactor.css 
Failed to load resource: the server responded with a status of 404 (Not Found) http://siteName.herokuapp.com/static/redactor/css/django_admin.css 
Failed to load resource: the server responded with a status of 404 (Not Found) http://siteName.herokuapp.com/static/redactor/jquery-migrate.min.js 
Failed to load resource: the server responded with a status of 404 (Not Found) http://siteName.herokuapp.com/static/redactor/redactor.min.js 

正如你所看到的,這些URL是不相同的格式上面列出的那些。

所有必需的文件確實存在於S3存儲桶中。

我似乎無法弄清楚發生了什麼事。

任何幫助,非常感謝。

謝謝!

+0

你能解釋你是如何實現遠程S3存儲?你能通過在瀏覽器中粘貼404鏈接嗎?此外,這些代碼段之間的差異是否意味着? (siteName.s3.amazon.com vs. siteName.herokuapp.com,/ static/vs/admin/js /) – caesarsol

+0

'DEFAULT_FILE_STORAGE ='storages.backends.s3boto.S3BotoStorage'' 'STATICFILES_STORAGE ='storages.backends。 s3boto.S3BotoStorage'' 無法通過複製/粘貼到達文件,因爲根服務器上沒有這樣的文件。 您提到的差異是Boto向S3存儲桶發起的鏈接。但是,我出於隱私原因修改了網址中的子域名,簽名和訪問標識。 – Nicksil

+0

你有手動上傳文件還是使用'manage.py collectstatic'來上傳文件? – caesarsol

回答

相關問題