ubuntu apache laravel5.2 中.htaccess路由跳转无效

在使用Ubuntu 14.04和Apache 2.4.7部署Laravel 5.2.15时遇到.htaccess路由跳转无效的问题,导致除根目录外所有页面显示404。尽管Apache的rewrite模块已启用,并且在Windows环境下laravel运行正常,更换为Laravel 5.1.11版本则没有问题。最终解决方案是在Apache的配置文件中将<Directory>的AllowOverride None改为AllowOverride All,使.htaccess配置生效。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习laravel过程中发现一个.htaccess路由跳转无效,最终搞了3个多小时,还是解决了,但原因不是很清楚,若读者清楚,还请留言。


环境: ubuntu64-1404, apache:2.4.7 PHP:5.5.9 lavavel:5.2.15

源码安装后只有根目录可访问,其它页面报404(此页面是apache的404,不是laravel的404页面),说明laravel安装正常,其它路由无法显示是apache的.htaccess未启作用。


经检查apache的rewrite模块已启用,并且将larave程序copy至win系统,正常,说明.htaccess配制正确

ubuntu系统中若将laravel5.2.15换为5.1.11,路由也是正常的,说明apache的配制也是正常的,就是5.2.15不行。


最终还是网上找来找去,看到的方法每个都试试,在

http://www.ithao123.cn/content-10533414.html

中得到启发,具体为:


修改/etc/apache2/sites-available/000-default(默认),将<Directory>的AllowOverride None修改为AllowOverride All;

如果是VirtualHost,可以增加相应的<Directory> ,例如:

<Directory "/var/www/html">
   
AllowOverride All
</Directory>


我是将/etc/apache2/apache2.conf中所有的None全部改为All,重启apache后就OK了。


原因是什么?为什么5.1.11OK,而5.2.15NG?我也不知道

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值