我对一条路线有点问题(只有这条路线,其他所有路线都没有任何问题)。
这是我的路线(我注释掉所有路线,除了/ home,只是为了确保它们没有弄乱一些东西):
<?php
// Route::get('/', 'DashboardController@index')->middleware('menu.admin')->name('home');
Route::get('/home', 'DashboardController@index')->middleware('menu.admin')->name('home');
// Route::get('/user/verify/{token}', 'Auth\RegisterController@verifyUser');
// Route::get('logout', '\App\Http\Controllers\Auth\LoginController@logout');
// Auth::routes();
// // Admin routes (admin dashboard)
// require(base_path() . '/routes/admin.php');
// // Site routes (frontend)
// require(base_path() . '/routes/front.php');
我收到此错误:
Not Found
The requested resource /home was not found on this server.
/ 路由没有任何问题,当我尝试 / home (这两条路线之间的唯一区别)时,我收到错误。
我做了 php artisan route:clear ,但没有帮助。有没有人知道发生了什么( .htaccess 文件在这里不是问题)?
答案 0 :(得分:0)
您使用apache或nginx作为Web服务器吗?
尝试为webserver设置配置 https://laravel.com/docs/5.6/installation
答案 1 :(得分:0)
如果您的路由定义正确,并且正确地表示您以正确的顺序定义了路由(以避免冲突),并且artisan命令 php artisan route:list 得到正确执行,但您仍然可以找不到404-在此服务器上找不到请求的资源/路径。很奇怪,与您期望的不完全一样!
...我也遇到了这个问题,问题是 在 public 中创建文件夹时发生了错误与 目录相同的 URI
...为了说明这是一个示例(这是我面临的问题)
/*
|--------------------------------------------------------------------------
| Web Routes - Backend
|--------------------------------------------------------------------------
*/
Route::group(['namespace' => 'Backend', 'prefix' => 'backend'], function () {
Route::get('/', 'DashboardController')->name('backend.dashboard');
// ...
});
php artisan route:list --name =后端--columns = uri --columns = name
+--------------------------------+--------------------------------------+
| URI | Name |
+--------------------------------+--------------------------------------+
| backend | backend.dashboard |
| // ... | // ... |
+--------------------------------+--------------------------------------+
+---public
| +---backend
| | +---css
| | +---fonts
| | +---images
| | +---js
| +---.htaccess
| +---favicon.ico
| +---index.php
| +---mix-manifest.json
| +---robots.txt
如您所见,我有一条以后端开头的路由 URI ,并且还有一个名为 backend 的公共目录下的文件夹,这就是造成问题的原因,因此由您决定更改其中之一,就我个人而言,将公共目录下的文件夹名称更改为“ 后端”。解决了我的问题。