php - 强制 silex 框架生成 https 链接

标签 php symfony https routing silex

我的整个应用程序应该通过 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/

相关文章:

php - 在 PHP 中链接静态方法?

symfony - Twig 在包含之前检查部分存在

php - Symfony3/Twig 模板 : database object to table

iphone - iPhone 与数据库的安全通信

http - 我们如何跨所有浏览器控制网页缓存?

php - 从YouTube视频中检索评分

php - 在多IP服务器上更改CURL请求的IP地址

php - 获取 mysql 数据库中重复条目的值并对其进行计数

symfony - 操作 Symfony Intl 提供的国家列表和表单选择类型

Magento 交易电子邮件 Logo 和 HTTPS (SSL)