我的整个应用程序应该通过 HTTPS 访问, 虚拟主机配置正确,当我使用 HTTPS 前缀调用我的任何应用程序页面时,它都能正确响应。
但是,当我尝试通过我的应用程序中生成的链接访问页面时。它总是指向一个常规的 HTTP 链接。
我首先尝试使用 .htaccess 文件将所有流量重定向到 HTTPS。花了几个小时尝试我可以在网上找到的每一种重定向方法,但由于某种原因,我总是以无限重定向循环告终。
现在我尝试以不同的方式解决这个问题:直接在 HTTPS 中生成我的链接。我所有的链接都是使用 twig-bridge 提供的 URL()
函数生成的。
使用 Symfony 进行配置非常容易
但我不知道如何使用 Silex 来做到这一点。有没有一种简单的方法可以更改 Silex 中的路由方案以强制生成每个链接都带有 HTTPS 前缀?
最佳答案
将 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://
你可以看看API以及更多信息。您会在那里找到所需的一切。
关于php - 强制 silex 框架生成 https 链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30616375/