我已经构建了一个symfony 2.6网站,我将其部署在这样的网址中:
此网址指向"网络"目录(作为根目录)。
该网站运作正常,但有两个问题:
1)Web调试工具栏未显示,因为窗口小部件指向https://www.example.com/未启用 https://www.example.com/abc/而且我不明白为什么?!
2)对于Twig path()函数也是如此,它也指向https://www.example.com/而不是https://www.example.com/abc/
那你对此有什么想法吗?
答案 0 :(得分:0)
我终于明白了," abc"它不是一个物理文件夹,它只是一个虚拟的"在www.example.com的虚拟主机中定义的路径, 所以虽然https://www.example.com/abc/指向我的symfony项目的web文件夹,这是Symfony框架中默认的根存储库,文件夹" abc"在现实中并不存在, 实际上我用来修改这个脚本" /public_html/vendor/symfony/symfony/src/Symfony/Component/Routing/Generator/UrlGenerator.php"通过强制执行" / abc"部分动态
生成的网址:
$ url = $ schemeAuthority。" / abc"。$ this-> context-> getBaseUrl()。$ url;
我认为Symfony默认不会考虑这种情况。
其他可能导致此问题的方法是在项目的路由配置(routing.yml)中验证网站的方案(http或https),例如:
试验:
resource: "@testBundle/Controller/"
type: annotation
prefix: /
schemes: [http]