我正在尝试deploy symfony on virtual host。
mod_rewrite将/ web URL转换为域根URL(domain.com/image.gif正在转入domain.com/web/image.gif)。
但是,由于web是从/ web目录执行的,因此Symfony仍然认为它在那里有文档根,并且使用/ web为任何url_for()URL添加前缀。
所以当我有路线时:
show_books:
url: /books
..和iam要求:
url_for('@route_name')
Symfony正在产生:
/web/books
我无法更改托管行为,我需要将Web请求指向symfony根路径并将内部重定向到/ web目录,我希望symfony忽略它从| hostname-document-root | /执行的点网络
答案 0 :(得分:1)
我发现将此代码插入我的前端控制器(/web/index.php)顶部是一个很好的解决方案:
$_SERVER['PHP_SELF'] = $_SERVER['SCRIPT_NAME'] = '/index.php';