【问题标题】:Set global relative route for laravel [duplicate]为laravel设置全局相对路由[重复]
【发布时间】:2017-11-16 23:39:49
【问题描述】:

这是laravel中的辅助函数route()

function route($name, $parameters = [], $absolute = true)
    {
        return app('url')->route($name, $parameters, $absolute);
    }

我怎样才能默认覆盖这个函数,所以$absolute = false

【问题讨论】:

  • route('name', [], false]);
  • 我的意思是我可以在不设置该参数的情况下正常使用 route('name',[]) ,这可能吗?
  • 您可以编写一个在内部使用route() 的新辅助函数。为什么呢?绝对链接有什么问题?
  • 是的,您甚至可以将参数设置为 null,因为它会默认为 [],如下所示:route('name', null, false);
  • 我在 cloudflare 中强制使用 https,当我在表单中使用路由时,url 是 http,所以我无法提交表单

标签: laravel


【解决方案1】:

我在 cloudflare 中强制使用 https,当我在表单中使用路由时,url 是 http,所以我无法提交表单

Cloudflare 会发送一个 X-Forwarded-Proto 标头,应正确处理该标头以告知您的服务器正在通过 HTTPS 访问它。

在 Apache 中,将它添加到您的 VirtualHost 应该会告诉 Laravel 它正在被安全访问,并且它会自动生成正确的 URL:

SetEnvIf x-forwarded-proto https HTTPS=on

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-22
    • 2016-02-20
    • 1970-01-01
    相关资源
    最近更新 更多