سوال بپرسید
1

خطای Object not found در لاراول

سوال بپرسید

سلام دوستام میخواستم یک فرم بسازم و هنگامی که روی دکمه submit کلیک میکنم اطلاعاتی رو که از طریق متد post ارسال میشه رو از طریق متد store در کنترلر خود ببینم (این مشکل مربوط به دوره لاراول قسمت 24 هست ممنون میشم دوستانی که دیدن راهنمایی کنن) ورژن لاراول مورد استفاده من 6.4 هست:

تا قسمت نمایش فرم در مرورگر کد به درستی عمل میکند ولی هنگامی که روی دکمه submit کلیلک میکنم ارور

Object not found!
The requested URL was not found on this server.

رو دریافت میکنم

//کد Route
Route::resource('/posts', 'PostsController');

{{-- create.blade.php --}}
@extends('layouts.app')
@section('content')
<form method="POST" action="/posts">
    @csrf
    <input type="text" name="title" placeholder="عنوان مطلب">
    <button type="submit" name="submit">ذخیره</button>
</form>
@endsection


//در پست کنترلر قسمت create
public function create()
  {
     return view('posts.create');
  }


//در پست کنترلر قسمت store
public function store(Request $request)
    {
        return $request->all();
    }
برچسب ها:
گزارش سوال
پرسیده شده در
آمار بازدید: 191

2 پاسخ

1

در صورتیکه تنظیمات فوق را قرار داده اید ولی هنوز با خطای Object Not Found رو به رو می شوید، بدین معنی است که نرم افزار لاراول شما به درستی روی وب سرویس Xampp اجرا نمی شود. به احتمال زیاد تنظیمات Vhosts را به درستی انجام نداده اید. اما در هر صورت برای بررسی مجدد لطفا دستور زیر را در فایل index.php که داخل پوشه public وجود دارد قرار دهید:

die();

پس از اعمال این دستور اگر با خطای 404 مواجه شدید یعنی نرم افزار لاراول شما به درستی کانفیگ نشده و هنوز روی Xampp اجرا نمی شود. ولی اگر خطای دیگری دریافت کرده اید یعنی مسیر به درستی تعریف شده است.

pirniak (157)
خیلی ممنون مشکل حل شد و همینجور که گفتید مشکل از تنظیمات vhost بود خیلی ممنون – arasham در
0

سلام وقت شما بخیر

لطفا داخل فایل htaccess. که در پوشه public وجود دارد، دستورهای زیر را جایگزین دستورهای قبلی کنید و سپس سرویس Apache را در Xampp خاموش و روشن نمایید:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

اگر خطایی وجود داشت لطفا در قسمت «افزودن نظر» مطرح بفرمایید.

pirniak (157)
سلام ممنون که وقت گذاشتین و راهنمایی کردین دستور هارو جایگزین کردم C:\xampp\htdocs\laravel-course\laravel\public\.htaccess ولی متاسفانه تغییری نکرد و هنوز ارور قبلی رو میده: Object not found! The requested URL was not found on this server. The link on the referring page seems to be wrong or outdated. Please inform the author of that page about the error. If you think this is a server error, please contact the webmaster. Apache/2.4.38 (Win32) OpenSSL/1.1.1a PHP/7.3.2 ممنون میشم اگر باز راهنماییم کنید – arasham در