我感動我的網站所有的公衆形象到一個文件夾出的symfony的Web文件夾中,因此它可以與其他Web應用程序共享獲取圖像文件夾URI。 我創建了一個符號鏈接到這個文件夾,所以它可以從symfony應用程序的web文件夾訪問。從控制器和樹枝模板
ln -s /absolute/path/to/images /path/to/symfony/application_01/web/images
ln -s /absolute/path/to/images /path/to/symfony/application_02/web/images
等...適用於所有應用。
我正在尋找一種方法,它允許我在遠程Web服務器的生產環境中的本地主機以及上的我的開發環境中檢索圖像URI。
我希望能夠從控制器的樹枝模板和中檢索此URI。
基本上(我application_01爲例):
在開發環境它將返回:
http://localhost/images/my_image.jpg
在生產環境,它將返回:
http://www.application_01.com/images/my_image.jpg
我的問題是,我發現許多不同的方式來獲取URI bu t我不完全清楚Symfony如何管理它們,以及在所有情況下使用什麼函數來實現全局解決方案。
什麼是實現我目標的最佳方式是什麼?
編輯
具體來說,我發現了一些SO答案,建議使用下列功能相當類似的問題:
$請求 - > getScheme(); $ request-> getHttpHost();
這似乎對應值或超全局$ _ SERVER [「REQUEST_SCHEME」]和$ _ SERVER [「HTTP_HOST」]
而且我不知道這是否是得到,因爲這此信息的正確方法鏈接到服務器接收到的當前請求。
是不是有另一種方式從當前服務器處理請求獨立得到這個信息?
完善,這個工程。我只是測試它。只需要一分鐘即可瞭解第二行。這實際上是一個放入路由配置文件的定義。謝謝你的幫助。這並不困難,但我無法親自指點解決方案。 – Nitseg
我不能發佈另一個問題,因爲這個問題太近了,但我有一個問題。由於圖像路徑包含從圖像名稱本身推導出的子文件夾(a12f23.jpg存儲在/ 01/2f /子文件夾中)Symfony不接受我的'圖像'參數。它不接受圖像名稱中的特殊「/」字符(/01/2f/012f23.jpg)。任何線索如何讓Symfony接受這種圖片名稱嵌入子文件夾? – Nitseg
@Nitseg http://symfony.com/doc/current/cookbook/routing/slash_in_parameter.html 谷歌是你的朋友;) – Moein