除了在EC2实例AWS上使用laravel 5.1之外的所有其他路由的“Not Found”错误

时间:2015-12-06 01:20:20

标签: php laravel amazon-web-services amazon-ec2 laravel-5.1

尝试在EC2(aws)上设置laravel 5.1项目。到目前为止我已经安装了LAMP堆栈(php 5.6)和作曲家。这一切似乎都很好。甚至能够为laravel应用程序运行迁移,但每当我尝试去除'/'之外的任何路线我都会得到

Not Found

The requested URL /public/pricing was not found on this server.
Apache/2.4.7 (Ubuntu) Server at compute.amazonaws.com   Port 80

错误。

不知道最近发生了什么。它使用mamp在我的localhost上运行得非常好。

3 个答案:

答案 0 :(得分:2)

要考虑三件事; 1)您应该将文档根目录设置为public而不是Laravel目录。简而言之,用户应该能够访问Laravel目录。

2)检查你的Apache查找文件或.htaccess以允许覆盖

AllowOverride All

3)确保启用了mode_rewrite

sudo a2enmod rewrite

答案 1 :(得分:0)

所以听起来/看起来你错过了htaccess文件: http://laravel.com/docs/5.1#configuration

如果你导航到/public/index.php?pricing,网页很可能现在就会出现。

您需要配置.htaccess文件以将请求传递给index.php以处理路由。

答案 2 :(得分:0)

我启用了mod重写

设置htaccess

AllowOverride All

它没有改变任何东西。然后我杀死了与服务器的连接并重新启动,一切正常。不确定为什么会这样,但幸运的是它确实如此。