20 پاسخ

خطای 419 لاراول

سلام
من در پروژه ای که دارم چند وقتی میشه خطای 419 page expired میگیرم
اول کار یعنی چند ماه قبل {{()csrf_field}} توی فرم ها گذاشته بودم و مدتی کار میکرد تا اینکه چند وقت پیش برای آپدیت پروژه دیدم توی همه فرم ها چه لاگین چه رجیستر چه فراموشی رمز این خطارو میده یعنی برای همه route های post
برای حلش علاوه بر اینکه {{()csrf_field}} رو تبدیل به csrf@ کردم، اومدم کانفیگ و کش پروژه رو پاک کردم و همین کار هارو هم با مرورگر کردم بازم ارور میده
دیگه واقعا نمیدونم چه کاری باید بکنم این مشکل حل بشه
خیلی دنبال راه حل گشتم ولی به نتیجه ای نرسیدم اگه کسی میدونه کمک کنه ممنون
لاراول نسخه 7 است و از دو مرورگر کروم و فاکس آخرین ورژن استفاده میکنم


ثبت پرسش جدید
محمدرسول ضیاءالدینی
تخصص : full stack developer
@rasool 4 سال پیش مطرح شد
0

@mhyeganeh
بابت مرورگر باید بگم که من با 4 تا مرورگر تست کردم که همه بروز بودند حتی دیتای کروم رو پاک کردم و فایر فاکس رو هم رفرش کردم بازم نشد
رو این حساب خیالم از طرف مرورگر ها جمعه
اینطور که پیداست سشن ها ذخیره نمیشند که علاوه بر csrf حتی فلش مسیج ها هم نشون داده نمیشند ولی خودم بصورت دستی سشن نساختم و امتحان نکردم
بابت ذخیره نشدن سشن ها سشن درایو رو هم به فایل تغییر دادم هم دیتا بیس ولی هیچ فرقی نکرد :(
اتفاقن بعد از اینکه دیدم پروژه روی یک سیستم دیگه ران میشه به فکرم رسید روی هاست هم تستش کنم که گمون کنم مشکلی نداشته باشه ولی هنوز تست نکردم متاسفانه
ایشالا مواردی که برای سشن گفتید رو خودم تست میکنم و بهتون میگم چی شد
بازم ممنونم ازتون 🙂


HRH
تخصص : back-end developer , switching...
@h.r.hassani 4 سال پیش مطرح شد
0

@rasool
ببینید دوست عزیز . توی فرم هاتون csrf رو باید به این شکل پیاده سازی کنید.

<form action="/" method="POST"">
  @csrf
 </form>

یا این:

    <form action="/" method="POST">
        {{csrf_field()}}
    </form>

و یا این:

    <form action="/" method="POST">
        <input type="hidden" name="_token" value="{{csrf_token()}}">
    </form>

حال اگه بازم مشکل دارید دستور composer dump-autoload رو بزنید. اگر بازم مشکل دارید میدلور verifyCsrfToken رو غیر فعال کنید و بعد فعال کنید.


محمدرسول ضیاءالدینی
تخصص : full stack developer
@rasool 4 سال پیش آپدیت شد
0

@h.r.hassani
بله بله پیاده سازی csrf رو بدرستی انجام دادم
همونطور اشاره کردم قبلا پروژه بدرستی کار میکرد ولی الان بعد چند ماه که برای آپدیت پروژه اومدم این مشکل رو دیدم
کار هایی هم که گفتید کردم مثل composer dump-autoload ولی مشکل هنوز پابرجاست :(
البته با کامنت کردن کلاس VerifyCsrfToken فرم بدرستی کار میکنه ولی درغیر این صورت نه
البته یک نکته دیگه هم بگم با کامنت کردن کلاس VerifyCsrfToken فرم کار کرد ولی فلش مسیج ها و ارور های فرم کار نمیکردند و نمایش داده نمیشدند که گمون کنم مشکلات دیگه ایم به وجود اومده ☹☹


Mohsen Etmd
@mohsenetmd 4 سال پیش مطرح شد
1

این ارور csrf هست یه واردامپ از session ها بگیرید احتمالا اون ها دچار مشکل هستن.


محمدرسول ضیاءالدینی
تخصص : full stack developer
@rasool 4 سال پیش آپدیت شد
0

@mohsenetmd
میشه بیشتر توضیح بدید چطوری؟
کجا ازشون var_dump بگیرم؟


Mohsen Etmd
@mohsenetmd 4 سال پیش مطرح شد
0

در صفحه ای که فرم میاد یه واردامپ بگیرید csrf و اعلان ها معمولا در سشن ذخیره می شن البته برای sweet alert اینطوریه حالا بقیه رو نمی دونم


محمدرسول ضیاءالدینی
تخصص : full stack developer
@rasool 4 سال پیش مطرح شد
0

@mohsenetmd
من تو این چند روز پروژمو روی یک سیستم دیگه تست کردم اوکی بود ولی روی سیستم خودم ارور داره پس پروژه به درستی کار میکنه
اومدم محتویات پروژه رو ....views controllers رو بردم توی یک لاراول جدید دیدم اونجا هم همین ارور هست
دیگه به این نتیجه رسیدم که لاراول مشکلی نداره و شاید زمپ به مشکل خورده برای همین زمپ رو حذف و مجدد نصب کردم
ولی در کمال ناباوری دیدم هنوز ارور پابرجاست :(
دیگه واقعا گیر کردم نمیدونم مشکل چی میتونه باشه ولی مطمعن شدم پروژه اوکیه چون هم روی یک سیستم دیگه ران شد هم برای خودم توی یک پروژه جدید ارور داد


محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 4 سال پیش مطرح شد
2

@rasool

یک احتمال دیگه که قوی تر از بقیه هم هست اینه که مشکل از مرورگرتون باشه. چک کنید که ذخیره سازی Cookie ها برای اون دامنه فعال باشه (بلاک نشده باشه) با مرورگرهای دیگه هم امتحان کردید آیا؟

غیر از این دو موردی که اشاره کردید چک کنید که آیا اصلا میتونید یک کوکی رو در مرورگر کاربر ذخیره کنید و این طرف ببینیدش یا نه...؟
بعد چک کنید که میتونید یک داده ای رو در Session کاربر قرار بدید و بعد بگیریدش یا نه.
مرحله به مرحله این اقدامات رو انجام بدید تا به سرنخ اصلی برسید. اگر Session ها ذخیره نمیشدند از Driver های دیگه لاراول مثل فایل یا دیتابیس استفاده کنید و مجدد تست کنید.

و اینکه پروژتون رو یکبار روی هاست/سرور قرار بدید و چک کنید مشکل برطرف میشه یا نه؟

تمامی مواردی که عرض کردم رو مرحله به مرحله پیش برید و تست کنید. انشالله که برطرف میشه مشکلتون.


محمدرسول ضیاءالدینی
تخصص : full stack developer
@rasool 4 سال پیش مطرح شد
0

@mhyeganeh
بابت مرورگر باید بگم که من با 4 تا مرورگر تست کردم که همه بروز بودند حتی دیتای کروم رو پاک کردم و فایر فاکس رو هم رفرش کردم بازم نشد
رو این حساب خیالم از طرف مرورگر ها جمعه
اینطور که پیداست سشن ها ذخیره نمیشند که علاوه بر csrf حتی فلش مسیج ها هم نشون داده نمیشند ولی خودم بصورت دستی سشن نساختم و امتحان نکردم
بابت ذخیره نشدن سشن ها سشن درایو رو هم به فایل تغییر دادم هم دیتا بیس ولی هیچ فرقی نکرد :(
اتفاقن بعد از اینکه دیدم پروژه روی یک سیستم دیگه ران میشه به فکرم رسید روی هاست هم تستش کنم که گمون کنم مشکلی نداشته باشه ولی هنوز تست نکردم متاسفانه
ایشالا مواردی که برای سشن گفتید رو خودم تست میکنم و بهتون میگم چی شد
بازم ممنونم ازتون 🙂


محسن مهری
تخصص : برنامه نویس back-end با زبان...
@mohsen.mehri6101 4 سال پیش مطرح شد
0

سلام به احتمال زیاد مشکل از همون xamp اتون باید باشه، اخرین نسخه xamp رو دانلود کنید و اگه به ارور هایی مثل سطح دسترسی خوردین، یک فیلم کوتاه هست توی یوتیوب میگه چطور مشکل سطح دسترسی توی نسخه جدید xamp رو حل کنین، چیز دیگه ای به ذهنم نمیرسه واقعا

و اینکه خط کدهایی که توی قسمت providers نوشتین اونا رو غیرفعال و تست کنید، معمولا مشکلات از اون قسمت میاد یعنی قسمت providers ها چون اونجا یک تابع هایی داریم به نام boot() دقیقا قبل از همه اجرا میشن.


محمدرسول ضیاءالدینی
تخصص : full stack developer
@rasool 4 سال پیش آپدیت شد
0

@mohsen.mehri6101
سلام من خودمم به زمپ شک داشتم که حذف و مجدد نصبش کردم و دیدم هنوز توی لاراول ارور داره البته فکر میکنم آپدیت باشه
ولی اومدم با php خام یک صفحه لاگین درست کردم و دیدم به درستی کار میکنه و دیتا هارو ارسال میکنه
حتی با سشن هم تونستم داده انتقال بدم که یعنی سشن ها هم مشکلی ندارند و فکر کنم زمپ به درستی کار میکنه
ولی بازم توی لاراول ارور هست :|


محسن مهری
تخصص : برنامه نویس back-end با زبان...
@mohsen.mehri6101 4 سال پیش مطرح شد
0

@rasool
به قول یکی از دوستامون که بالا گفتن یک سرور رایگان برای تست پیدا کنین، و اونجا هم امتحان کنین اگه مشکلی نداشت بی شک مشکل از سیستمتون یعنی حتما xamp اتونه
من نمیگم زمپ مشکلی داره اما میگم شاید نسخه php یا تنظیماتش به laravel نمیخوره.
به هر حال اگه تونستین مشکل رو حل کنین منم تگ کنین لطفا تا بدونم چی بوده و مورد مشابه پیش اومد راه حل دستم باشه - ممنون


محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 4 سال پیش مطرح شد
0

@rasool

سلام؛
مشکلتون برطرف شد...؟


محمدرسول ضیاءالدینی
تخصص : full stack developer
@rasool 4 سال پیش آپدیت شد
1

@mohsen.mehri6101
@mhyeganeh
سلام دوستان عزیز امیدوارم حالتون خوب باشه
بله خوشبختانه مشکلم برطرف شد ولی بازم دقیقا نفهمیدم مشکل چی بود
باتوجه به اینکه هاست های رایگان محدودیت دارن و هاستی که خودم دارم ظرفیت یک پروژه لاراول دیگه نداشت گفتم اول یک کار دیگه بکنم اگه جواب نداد برم سراغ هاست
همونطور که گفتم روی سیستم دیگه (سیستم دوستم) پروژه کار میکرد رو این حساب گفتم پروژرو برام ریست کنه اینطوری که پوشه vendor به کلی پاک کرد و بعد composer install و composer update رو زد که vendor به همراه همه dependency ها دوباره نصب شدند و کش پروژرو هم به طور کامل پاک کرد هم view هم config هم cache و...
(البته خودمم این کار هارو کرده بودم ولی چیزی دانلود نکردم یعنی یک لاراول خام داشتم ازون کپی میکردم که جواب نمیداد)
از طرفی خودمم زمپ رو به طور کامل حذف کردم و آپدیت جدیدشو گرفتم و نصب کردم (یک بار دیگه هم همین کار رو کرده بودم ولی آپدیت نکردم)
بعد از این کار ها وقتی پروژرو از دوستم گرفتم و روی سیستم خودم امتحان کردم دیدم که همچی درست شده و دیگه خطا نداره و درست کار میکنه
برای همینم نمیفهمم مشکل مربوط به کدوم قسمت بوده (احتمال زیاد خود پروژه) ولی خب همه این کار ها باهم مشکل رو حل کرد
بازم از شما دوستان ممنونم که کمکم کردین 🙂


محمدرسول ضیاءالدینی
تخصص : full stack developer
@rasool 4 سال پیش آپدیت شد
0

من خودم تا به حال همچین مشکلی نه برای خودم نه کس دیگه ندیده بودم ولی خدایی مشکل اعصاب خردکنی بود میتونم بگم تقریبا سه چهار هفته ای درگیرش بودم و هیچ جاییم راه حلی براش پیدا نکردم هرکاری میکردم جواب نمیگرفتم که دیگه خسته شده بودم،

یچیز دیگه من برای این گفتگو به اشتباه یک پیام دیگه رو به عنوان بهترین پاسخ انتخاب کردم و الان نمیتونم پیام بالارو انتخاب کنم،
هیچ راهی نیست بتونم بهترین پاسخ رو عوض کنم؟
یا باید از خود حسام موسوی بخام تغییرش بده؟


محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 4 سال پیش مطرح شد
0

@rasool

خوب خدا رو شکر. آره واقعا مشکلاتی از این قبیل خیلی اعصاب خورد کن هستند. این هم از سختی های کار ماست دیگه... 😉

ولی این کاری هم که گفتید میکنید از نسخه خام لاراول کپی میکنید خیلی ناجوانمردانه‌ست و کار جالبی نیست به نظرم. ترجیحا هر سری با دستور خود لاراول یک نسخه fresh و up-to-date نصب کنید. تازه هر چند وقت یکبار composer update هم فراموش نشه. چه برسه به اینکه از یک نسخه قبلی هر سری کپی بگیرید... 🙄

موفق و پیروز باشد


محمدرسول ضیاءالدینی
تخصص : full stack developer
@rasool 4 سال پیش مطرح شد
0

@mhyeganeh
اره درست میگین ولی من چون توی لاراول خیلی میگشتم و تابع ها و بقیه چیزهای لاراول رو میدیدم و دست کاری میکردم تا بفهمم چین و قاعدتا بعضی وقت ها خرابکاری میکردم که از نسخه خام لاراول یک کپی جایگزینش میکردم و درست میشد 😅
برای همین فکر میکردم این هم اینطوری درست بشه و نمیدونستم که باید پروژه آپدیت باشه و composer update بزنیم و اینا و شما گفتین یاد گرفتم.

سلامت باشید 🤝


عباس
تخصص : برنامه نویس
@AbbasA46 4 سال پیش مطرح شد
0

سلام دوستان
اگه میشه راهنمایی کنید من واسه این مشکل دقیقا چیکار باید کنم؟؟


محمدرسول ضیاءالدینی
تخصص : full stack developer
@rasool 4 سال پیش مطرح شد
0

@abs8927
سلام باید در حالت کلی از صحت سرور مجازی اطمینان کنید سپس به درون پروژه برین ببینین مشکل چیه
ببینید برای ذخیره سازی سشن ها مشکلی به وجود اومده یا خیر چون این اروز مربوط به همین سشن ها است میتونید فایل env. رو چک کنید و برای اطمینان پوشه vendor پاک کنید و دستور composer install رو بزنید تا پروژه از نو کانفیگ بشه
مشکلی که من داشتم ترکیبی از همه این ها بود متاسفانه


علی اکبری
تخصص : بک اند
@jpro.feri 3 سال پیش آپدیت شد
0

من امروز با این مشکلی که دوستمون مطرح کرد مواجه شدم . یعنی به هر صفحه ای که فرم داشت و میخاستم اطلاعات وارد کنم ارور page expire میداد و میخاست صفحه رفرش بشه . در صورتی که چند ساعت قبل که داشتم کار می کردم با پروژه مشکلی نداشت .

تا اینکه بعد از چند دقیقه که مخم خسته شد نشستم فکر کردم که پروژه ای که تا چند ساعت پیش داشت درست کار می کرد چه شد که اینجوری شد .

من فکر کردم و یادم افتاد پکیجی نصب کردم که نیاز به کانفیگ در فایل .env داشت اما پکیچ به کار من نیومد با کامپوزر حذفش کردم اما تنظیماتی که در فایل .env انجام داده بودم را پاک نکرده بودم .
یادم افتاد و رفتم تنظیمات رو از فایل .env پاک کردم و دستور php artisan cache:clear و config:clear را اجرا کردم و پروژه مثل قبل شروع بکار کرد.

نمیدونم این مشکل به اون تنظیمات در فایل env مربوط بود یا ن اما گفتم این مشکلی که برای من ایجاد شد چگونه رفع شد شاید بدرد کسی خورد.

((( بطور کلی مشکل پیش امده م بخاطر تنظیماتی بود که در فایل env وجود داشت. یعنی پکیجی که نصب کرده بودم را حذف کردم اما تنظیماتش در فایل env مونده بود بعد از حذف تنظیمات اضافه مربوط به این پکیج در فایل env دیگر ارور page expire و رفرش صفحه را در هیج مرورگری دریافت نکردم . ))))


amir dabaghi
تخصص : Full-Stack Web Developer Freel...
@amir463 10 ماه پیش مطرح شد
0

سلام بنده هم همچنین مشکلی داشتم
کل دیتا ها و کش های مرورگر رو از بخش cookies and site data گزینه clear data, manage data در فایرفاکس پاک کردم حل شد.
تو کروم هم که مشکلی نداشتم.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام