我有一个运行在HTTPS上的Laravel 4.0应用程序,它通过通过单一路由路由所有远程重定向来屏蔽客户控制面板中的URLS。我使用Redirect::away()来处理这些重定向,但即使URL字符串指定了"http",它也是通过https进行重定向的。有没有办法强制执行URL中指定的协议?
发布于 2014-12-05 08:08:06
您可以使用Redirect::to()代替(https://github.com/laravel/framework/blob/4.0/src/Illuminate/Routing/Redirector.php#L113)
我假设您最初使用的是away方法进行外部路由,所以...
使用Redirect::to(),如果您提供了有效的协议(例如,http://) url生成器将简单地传回指定的完整url (https://github.com/laravel/framework/blob/4.0/src/Illuminate/Routing/UrlGenerator.php#L86),然后(通过createRedirect方法)进行重定向。
如果您使用的是相对urls,则只需设置安全参数。
编辑:实现略有不同,但上述信息也适用于laravel 4.1和4.2
https://stackoverflow.com/questions/26342341
复制相似问题