我使用SonataMediaBundle和SonataAdminBundle和Symfony 2.3。SonataMediaBundle:找不到文件/圖像
當我嘗試通過索納塔管理界面上傳圖片:
- 點擊 「新增」(
app_dev.php/admin/sonata/media/media/create
) - 點擊 「圖像」(
app_dev.php/admin/sonata/media/media/create?provider=sonata.media.provider.image&context=default
) - 瀏覽
image.jpg
文件並點擊「創建」 - 這使我到編輯頁面,我可以看到:
Item "image.jpg" has been successfully created.
事實上:
- 在文件夾
web\uploads\media\default\0001\01
我有我的圖像文件和3個大拇指 - 在
media__media
數據庫表我都有相應的線 - 當我瀏覽
web/uploads/media/default/0001/01/
與Firefox我可以看到我的圖像 - 相應行出現在媒體列表(在管理面板)
但:
- 圖像沒有在媒體列表中顯示(有方形的,而不是拇指),也不在圖像編輯頁面(
app_dev.php/admin/sonata/media/media/3/edit?provider=sonata.media.provider.image&context=default
)
對於文件,它的更糟糕:
- 點擊 「新增」(
app_dev.php/admin/sonata/media/media/create
) - 點擊 「圖像」(
app_dev.php/admin/sonata/media/media/create?provider=sonata.media.provider.file&context=default
) - 瀏覽的
document.zip
文件並點擊 「創建」
這會產生錯誤500:The file "" does not exist
。並且在數據庫中不會創建新行。
件的解決方案
對於圖像問題,我注意到,其中奏鳴曲管理員一直在尋找的路徑是不好的一個:我是在尋找:http://myserver/uploads/media/default/0001/01/c35f187f1b405f4bfba8b962d83e5bbdccff54f9.jpeg
而不是http://myserver/myproject/web/uploads/media/default/0001/01/c35f187f1b405f4bfba8b962d83e5bbdccff54f9.jpeg
顯然,這是由於這部分的配置。陽明海運(如SonataMedia文檔中定義):
sonata_media
cdn:
server:
path: /uploads/media
那我換成:
sonata_media
cdn:
server:
path: /myproject/web/uploads/media
和它的作品。但我認爲在那裏硬編碼不是一個好主意。我想這是爲什麼它在Sonata Doc中這樣寫的一個很好的理由,不是嗎?
我的修改是否正確?如果不是,我該怎麼辦?
無論如何,它並沒有解決我的文件上傳問題! 關於這一點的任何想法?
我有完全相同的問題。你有沒有找到解決方案? –
是有足夠的可寫入權限的目標目錄爲Apache或Nginx? – ibasaw