Я новичок в laravel, но когда я кодировал в vscode, все работало нормально, теперь, когда я загрузил его на общий сервер, например хостингер, теперь он не работает. Он говорит, что контроллер не существует. ... Я использую laravel 11, а мой PHP — 8.2, композитор — 2
Я думал, что это пространство имен, но id на него не похож... поможете?
Я перепробовал все, от смены букв и контроллеров до разрешений на запись, даже спрашивал AI, но ничего
веб.php
<?php
use App\Http\Controllers\Admin\AdminController;
use App\Http\Controllers\Admin\CategoryController;
use App\Http\Controllers\Admin\MeniuController;
use App\Http\Controllers\Admin\TableController;
use App\Http\Controllers\Admin\UzsakymasController;
use App\Http\Controllers\Auth\RegisteredUserController;
use App\Http\Controllers\Frontend\CategoryController as FrontendCategoryController;
use App\Http\Controllers\Frontend\MeniuController as FrontendMeniuController;
use App\Http\Controllers\Frontend\TableController as FrontendTableController;
use App\Http\Controllers\Frontend\WelcomeController;
use App\Http\Controllers\ProfileController;
use Illuminate\Support\Facades\Route;
use App\Http\Middleware\Admin;
// Frontend routes
Route::get('/', [WelcomeController::class, 'index']);
Route::get('/categories', [FrontendCategoryController::class, 'index'])->name('categories.index');
Route::get('/categories/{category}', [FrontendCategoryController::class, 'show'])->name('categories.show');
Route::get('/menius', [FrontendMeniuController::class, 'index'])->name('menius.index');
Route::get('/menius/{meniu}', [FrontendMeniuController::class, 'show'])->name('menius.show');
Route::get('/table', [FrontendTableController::class, 'index'])->name('table.index');
Route::get('/dashboard', function () {
return view('dashboard');
})->middleware(['auth', 'verified'])->name('dashboard');
// Authenticated user routes
Route::middleware('auth')->group(function () {
Route::get('/profile', [ProfileController::class, 'edit'])->name('profile.edit');
Route::patch('/profile', [ProfileController::class, 'update'])->name('profile.update');
Route::delete('/profile', [ProfileController::class, 'destroy'])->name('profile.destroy');
});
// Admin routes
Route::middleware(['auth', Admin::class])->prefix('admin')->name('admin.')->group(function () {
Route::get('/', [AdminController::class, 'index'])->name('index');
Route::get('/register', [RegisteredUserController::class, 'create'])->name('register');
Route::post('/register', [RegisteredUserController::class, 'store']);
Route::resource('categories', CategoryController::class)->names([
'index' => 'categories.index',
'create' => 'categories.create',
'store' => 'categories.store',
'show' => 'categories.show',
'edit' => 'categories.edit',
'update' => 'categories.update',
'destroy' => 'categories.destroy',
]);
Route::resource('menius', MeniuController::class)->names([
'index' => 'menius.index',
'create' => 'menius.create',
'store' => 'menius.store',
'show' => 'menius.show',
'edit' => 'menius.edit',
'update' => 'menius.update',
'destroy' => 'menius.destroy',
]);
Route::resource('table', TableController::class)->names([
'index' => 'table.index',
'create' => 'table.create',
'store' => 'table.store',
'show' => 'table.show',
'edit' => 'table.edit',
'update' => 'table.update',
'destroy' => 'table.destroy',
]);
Route::resource('uzsakymas', UzsakymasController::class)->names([
'index' => 'uzsakymas.index',
'create' => 'uzsakymas.create',
'store' => 'uzsakymas.store',
'show' => 'uzsakymas.show',
'edit' => 'uzsakymas.edit',
'update' => 'uzsakymas.update',
'destroy' => 'uzsakymas.destroy',
]);
});
require __DIR__.'/auth.php';
как мой Добро пожаловатьController.php
<?php
namespace App\Http\Controllers\FrontEnd;
use App\Http\Controllers\Controller;
use App\Models\Category;
use App\Models\Meniu;
use Illuminate\Http\Request;
class WelcomeController extends Controller
{
public function index()
{
$savaite = Category::where('name', 'Pirma savaite')->first();
return view('welcome', compact('savaite'));
}
}






изменять
namespace App\Http\Controllers\FrontEnd;
к
namespace App\Http\Controllers\Frontend;
на вашем WelcomeController.php
Убедитесь, что ваше пространство имен соответствует пути к файлу; у вас есть
App\Http\Controllers\FrontEnd, поэтому убедитесь, что они находятся в папкеapp/Http/Controllers/FrontEnd. Также убедитесь, что имя класса соответствует имени файла;class WelcomeControllerдолжно соответствоватьWelcomeController.php. Вероятно, ваша файловая система Prod чувствительна к регистру, а ваша локальная система нечувствительна к регистру. Если вы запуститеcomposer dump-autoloadлокально, он покажет вам любые предупреждения о несоответствии имени класса/файла.