Ste*_*ato 5 apache configuration base-url symfony
我知道在Symfony2的配置中,没有对基本URL的引用,因为没有请求; 应用程序可以在cli中运行,也可以在Web服务器中运行,因此我们不能依赖请求.但是,我仍然有配置要求样式表或javascript基本URL(例如JQueryHelperBundle,您可以在其中设置您的jquery本地路径 - 作为本地URL).问题是,有没有办法动态设置配置的基本URL,而不必更改它,以便:
有没有办法获得基本网址信息?使用$_SERVER['DOCUMENT_ROOT']减去内核根目录之间的区别是否可以检测这样的基本URL?但是虚拟主机如何将网址重新定位到网页目录?硬编码基本URL完全将项目耦合到它在开发中的位置,并且移动项目需要每次都更改基本URL,这很烦人.
那么,有没有办法根据环境动态检测Symfony2配置中的基本URL,而不依赖于请求?
我必须在服务中执行此操作,因此我将路由器服务注入到我自己的服务中,然后:
$baseUrl = $router->getContext()->getHost();
Run Code Online (Sandbox Code Playgroud)
但我更多地认为它是一种 hack,而不是 Symfony2 框架的真正固定装置。例如,在 Controller 中,您可以轻松生成绝对 url(来自 symfony 书中的示例):
$router->generate('blog_show', array('slug' => 'my-blog-post'), true);
Run Code Online (Sandbox Code Playgroud)
在 twig 模板中,您有 {{ url }} 函数
我希望这有帮助
| 归档时间: |
|
| 查看次数: |
2632 次 |
| 最近记录: |