Laravel 自定义控制器出现 404 错误

Posted

技术标签:

【中文标题】Laravel 自定义控制器出现 404 错误【英文标题】:Laravel Custom Controller getting 404 error 【发布时间】:2020-03-13 17:36:44 【问题描述】:

我在 laravel 上使用命令行创建了新的控制器

php artisan make:controller PhotoController --resource

只需在 PhotoController 的函数上显示字符串,如下所示

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class PhotoController extends Controller


    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function getName()
    
        echo 'Dev';
    

在路由 web.php 上调用控制器

Route::get('photos', 'PhotoController@getName');

当我尝试加载控制器的 url 时

http://localhost/dev_laravel/public/photos

得到 404 Not found 错误

我也试过

http://localhost/dev_laravel/public/photo/
http://localhost/dev_laravel/public/photo/getname/

我是 laravel 的初学者或学习者,正在使用 5.8 版本

php 工匠路线:列表

之后

谁能帮帮我?

【问题讨论】:

你是如何运行 laravel 的? php artisan serve ?试试http://localhost/photos 这与***.com/questions/13514990/…有关吗? 你的项目目录在哪里? 您可以运行php artisan route:list 并将输出粘贴到您的问题中吗? 移除回显并写入 return "dev"; 【参考方案1】:

打开终端 并运行此命令

php artisan serve

打开第二个终端并运行此命令

php artisan route:list

然后你的 url 模式就像

http://localhost:8000/photos

http://127.0.0.1:8000/photos

【讨论】:

这应该可以工作,但 OP 没有回复,他是如何运行本地服务器的?【参考方案2】:
php artisan serve

它会提供一个链接,如http://127.0.0.1:8000/ 或你想要的端口,如果你为它设置了一个端口,那么只需添加像这样的照片

http://127.0.0.1:8000/photos

【讨论】:

以上是关于Laravel 自定义控制器出现 404 错误的主要内容,如果未能解决你的问题,请参考以下文章

删除行时出现404 laravel 8错误[关闭]

Laravel5.4中自定义404等错误页面

Laravel 8 自定义路由在使用资源时返回 404

Laravel 的 put/patch 没有进入我的更新方法,出现错误 404 page not found

Spring Boot制作个人博客-框架搭建(异常处理)

AD B2C 自定义策略自定义声明出现错误“无法验证提供的信息”。注册时