嵌套目录中的 Symfony 2 项目

Mic*_*cki 6 php symfony

我需要在生产服务器上的嵌套目录中部署一个 Symfony 2 项目。实际上,这意味着所有 URL 都以 /subdirectory/ 路径为前缀,即

http://host.com/subdirectory/project/web/app.php/survey
Run Code Online (Sandbox Code Playgroud)

我不需要 URL 重写,也不打算设置它。该应用程序应仅在通过上述 URL 访问时工作。

我的问题是,所产生的各个环节pathasset嫩枝功能是相对于服务器的根目录(/),而不是子目录中的项目是(/子目录/)。Symfony 2 中是否有任何配置参数可以全局覆盖相对路径?

我试图通过添加 HTML 标签来解决这个问题,但它不适用于链接。

更新:我欠你更多细节。我正在运行带有 mod_rewrite 版本的 IIS,因此您的部分建议可能仍然有效。

更新:理想情况下,我希望看到一个在 AppKernel 对象上设置根目录的解决方案 - 方法AppKernel::setRootDir()是否存在以补充现有的AppKernel::getRootDir().

dmn*_*ptr 0

查看 app/config/routing.yml ,您可以在其中从包中导入路由。该文件中的记录类似于以下内容:

somename:
    resource: "@YourBundle/Resources/config/routing.yml"
    prefix:   /
Run Code Online (Sandbox Code Playgroud)

您可以在前缀中添加您的子目录,例如prefix: /subdirectory 然后所有生成的 URL 将包含subdirectory.