位置: 编程技术 - 正文

关于Laravel Route重定向的一个注意点(关于laravel应用中的各个目录的作用,说法错误的是)

编辑:rootadmin

推荐整理分享关于Laravel Route重定向的一个注意点(关于laravel应用中的各个目录的作用,说法错误的是),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:关于laravel视图中的href跳转书写正确的是,关于laravel说法错误的是,关于我和鬼变成家人的那件事,关于laravel视图中的href跳转书写正确的是,关于laravel视图中的href跳转书写正确的是,关于laravel说法正确的是,关于laravel路由的说法错误的是,关于laravel路由的说法错误的是,内容如对您有帮助,希望把文章链接给更多的朋友!

发现问题

最近在做项目发现一个奇怪的现象,我的路由配置里有如下配置:

目的是无论用户输入”admin”,还是”admin/login”都能跳转到登录界面。然而现实情况是输入”admin”之后,浏览器会无限重定向,firebug记录如下:

经过一番搜索后试验,终于得出结论,问题有两点:

1.public目录下正好有个admin目录,存放后台相关js和css

2.laravel自带的.htaccess的这样一条规则:

关于Laravel Route重定向的一个注意点(关于laravel应用中的各个目录的作用,说法错误的是)

解释一下原理:

访问public/admin目录时,apache会自动转成”public/admin/”的形式,而这种形式正好符合重写的规则,又被重写回”public/admin”的形式。因为public/admin目录确实存在,所以请求根本不会到达index.php。

所以故事就是这样,因为那条规则的存在,无限重定向产生了。

解决方案:

1.不要把public目录下已有的目录名做为路由地址

2.规则前加一条”RewriteCond %{REQUEST_FILENAME} !-d”,但是这样会使该目录被直接访问。建议生产环境中关掉apache的autoindex模块(呃,我发现我用的wamp关掉这个模块apache就启动不了了- -!)。

补充:

经过一些实验,建议将.htaccess文件改成如下:

总结

本文链接地址:https://www.jiuchutong.com/biancheng/295557.html 转载请保留说明!

上一篇:Python中使用django form表单验证的方法(django pypi)

下一篇:yii使用bootstrap分页样式的实例(bootstrap easyui结合)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络