在我的 .env 文件中,我的 APP_URL
设置如下:
APP_URL=https://example.com
但是,在我使用 action()
帮助程序生成 URL 的任何地方,路径都是使用 http 而不是 https 创建的。
我不明白为什么会发生这种情况。该网站本身在 SSL 上运行。我还尝试使用“https”设置BASE_URL
环境变量 - 没有运气。
Laravel 不应该尊重我的基本 URL 吗?
Laravel 版本:5.2
这种情况发生在 action()
帮助器中,以及使用 HTML 和 Forms Laravel Collective Package 生成表单(其中包括 action
属性)时。
最佳答案
不幸的是action()
不是基于app.url,而是基于你的请求根目录,所以如果你正在浏览https,它应该给你一个基于https方案的url。但可以通过执行以下操作强制它成为您需要的任何内容:
app('url')->forceRootUrl(env('APP_URL'));
我建议您在服务提供商上执行此操作。
关于php - Laravel action() 帮助程序忽略 APP_URL 环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40910663/