强制silex框架生成https链接

mb3*_*ard 5 php https routing symfony silex

我的整个应用程序应该通过HTTPS访问,vhost已正确配置,当我使用HTTPS前缀调用任何应用程序页面时,它会正确响应.

但是当我尝试通过应用程序中生成的链接访问页面时.它总是指向常规的HTTP链接.

我首先尝试使用.htaccess文件将所有流量重定向到HTTPS.花了几个小时尝试我在网上找到的每个重定向方法,但由于某种原因,我总是得到一个无限重定向循环.

现在我试图以不同的方式解决这个问题:直接在HTTPS中生成我的链接.我的所有链接都是使用URL()twig-bridge提供的功能生成的.

使用Symfony进行配置非常简单

但我无法弄清楚如何用Silex做到这一点.是否有一种简单的方法可以在Silex中更改路由方案以强制使用HTTPS前缀生成每个链接?

Art*_*iel 4

添加requireHttps()到您的路线生成器中就可以了。

例子:

$app->get('/hello-world', function($app) {
    return 'Hello world';
})
->bind('hello') // Set route name (optional of course)
->requireHttps(); // This would force your url with https://
Run Code Online (Sandbox Code Playgroud)

您还可以查看API以获取更多信息。您会在那里找到您需要的一切。