سلام و وقت بخیر
من یک مشکلی داره سایتم اینه که تو قسمت ادرس بار اگر قسمتی از ادرس رو پاک کنیم صفحه باز میشه و من نمیخوام اینطوری باشه
مثلا
ادرس اصلی http://site.ir/product-a-b-c-d
ادرس دوم http://site.ir/product-b-d
با ادرس دوم هم باز میشه
ممنون میشم راهنمایی کنید
ممنون میشم یه نمونه مثال بزنید یا معرفی کنید
شاید پاسخ شما همینجا باشد
برای ساخت چنین میدویری من مراحل رو به ترتیب براتون توضیح می دم هر قسمتی گنگ بود بفرمایید تا بیشتر توضیح بدم
بعد از ساخت میدلویر قاعدتا slug های شما توی جدولی از دیتابیسی ذخیره شدن ما فرض می کنیم این جدول اسمش articles و اسم ستون اسلاگ هم slug در نظر می گیریم کافیه یک کوئری زده بشه تا چک بشه که این اسلاگ وجود داره یا خیر به صورت زیر:
public function handle($request, Closure $next){
$slug = substr($request->getUri(), strlen(env('APP_URL')) + 1);
try{
Article::where('slug', $slug)->firstOrFail();
return $next($request);
}
catch(\Exception $ex){}
abort(404);
}
توی شبه کد بالا اگه اسلاگ وجود داشته باشه صفحه لود می شه در غیر اینصورت صفحه 404 نشون می ده