SymfonyComponentHttpKernelExceptionNotFoundHttpException Laravel
问题描述
我正在尝试使用 RESTful 控制器.这是我的 Route.php
:
I am trying to use RESTful controller. Here is my Route.php
:
这是我的 TestController.php
我的应用程序路由是 localhost/Test/public/
并显示您已到达"消息.但是当我尝试 localhost/Test/public/test
它给了我SymfonyComponentHttpKernelExceptionNotFoundHttpException"
My app route is localhost/Test/public/
and it shows "You have arrived" message. But when I tried localhost/Test/public/test
It gives me "SymfonyComponentHttpKernelExceptionNotFoundHttpException"
这是我的日志:
我知道这个问题已经被问过很多次了.我经历了许多相关的线程,但无法找出解决方案.
I know this question has been asked many times. I had gone through many relevant threads but just can not figure out the solution.
推荐答案
Laravel 中的 NotFoundHttpException
异常总是意味着它无法为 特定网址.在您的情况下,这可能是您的 Web 服务器配置、虚拟主机(站点)配置或 .htaccess 配置中的问题.
A NotFoundHttpException
exception in Laravel always means that it was not able to find a router for a particular URL. And in your case this is probably a problem in your web server configuration, virtual host (site) configuratio, or .htaccess configuration.
您的 public/.htaccess 应该如下所示:
Your public/.htaccess should look like this:
如你所见,第一行IfModule mod_rewrite.c
中有一个条件,所以如果你没有安装或启用mode_rewrite,所有的重写规则都会失败,这个
As you can see there is a condition in the first line IfModule mod_rewrite.c
, so if you don`t have mode_rewrite installed or enabled, all rewrite rules will fail and this
可以正常工作,但不是这样:
Will work fine, but not this:
另一方面,这个也应该可以工作,因为这是它的原始形式:
In other hand, this one should work too, because this is its raw form:
因为 Laravel 需要重写它才能工作.
Because Laravel needs it to be rewritten to work.
请注意,您不应使用/public,您的网址应如下所示:
And note that you should not be using /public, your URLs should look like this:
这是您的虚拟主机的文档根目录未正确配置或未指向/var/www/Test/public 或您的应用程序所在的任何路径的另一个线索.
This is another clue that your virtual host's document root is not properly configured or not pointing to /var/www/Test/public, or whatever path your application is in.
所有这一切都假设您使用的是 Apache 2.
All this assuming you are using Apache 2.
这篇关于SymfonyComponentHttpKernelExceptionNotFoundHttpException Laravel的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!