مهدی سمیعیان
5 سال پیش توسط مهدی سمیعیان مطرح شد
18 پاسخ

ارور csrf هنگام لاگین

سلام
بعد از لاگین با این ارور مواجه میشم
The page has expired due to inactivity.

Please refresh and try again.
تا وقتی کش و کوکی مرورگر را پاک نکنم هم برطرف نمیشه.
مشکل از چیه و چطوری میشه حلش کرد؟


ثبت پرسش جدید
profnami
تخصص : برنامه نویس
@nader.minaie 5 سال پیش مطرح شد
0

آیا در فرمهاتون از CSRF استفاده کردین؟
یک همچین کدی رو باید درون فرمهاتون قرار داده باشین :

<input type="hidden" name="_token" value="{{ csrf_token() }}">

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

@nader.minaie
بله
داخل ویو و فرم از csrf استفاده کردم

 {{ csrf_field() }}

profnami
تخصص : برنامه نویس
@nader.minaie 5 سال پیش مطرح شد
0

@mahdidev
از چه ورژنی از لاراول استفاده میکنید؟


مهدی سمیعیان
تخصص : برنامه نویس وب/اندروید
@mahdidev 5 سال پیش مطرح شد
profnami
تخصص : برنامه نویس
@nader.minaie 5 سال پیش مطرح شد
0

البته فکر میکنم اگر از نسخه های بالاتر استفاده کنید این مشکل رو نخواهید داشت. اما این رو هم امتحان کنید. در این مسیر :

app/Http/Middleware/VerifyCsrfToken.php

این قطعه کد رو ویرایش کنید :

protected $except = [
    'your/route'
];

هر چند از لحاظ امنیتی زیاد درست نیست ولی میتونید Route مورد نظرتون رو استثنا قرار بدید.


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

@nader.minaie
این راه حل درستی نیست


profnami
تخصص : برنامه نویس
@nader.minaie 5 سال پیش مطرح شد
0

یک راه حل دیگه هم به نظرم میرسه و اونم اینه که lifetime رو برای session در فایل config/session.php تغییر بدید.


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

@nader.minaie
فکر کنم یکی از راه حل هاش اجرا کردن دستورات زیر باشه
php artisan cache:clear
php artisan config:clear
php artisan route:clear
php artisan view:clear
ولی نمیدونم چکار میشه کرد که اصلا این مشکل پیش نیاد.


profnami
تخصص : برنامه نویس
@nader.minaie 5 سال پیش مطرح شد
0

من احساس میکنم با Upgrade کردن میتونید مشکلتون رو حل کنید. واقعا من هم دلیل اصلی رو نمیدونم.


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

@nader.minaie
تنها در صورتی میشه گفت با upgrade مشکل حل میشه که این مساله به عنوان باگ در نسخه های قبلی معرفی شده باشه


سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 5 سال پیش مطرح شد
0

@mahdidev
خب چیزی که شما میفرمایید باید درست کار کنه مگر مربوط به کش شدن یا لایف تایم سشن در غیر اینصورت اگر برای شما درست کار نمیکنه یک نسخه بالاتر لاراول رو امتحان کنید ببینید مشکل از serve شدن پروژه اس یا لاراول.


مهدی سمیعیان
تخصص : برنامه نویس وب/اندروید
@mahdidev 5 سال پیش آپدیت شد
0

@juza66
معمولا درست کار می کنه. ولی گاهی اوقات به مشکل می خوره. با رفرش هم حل نمیشه. باید کامل کش و کوکی مرورگر پاک بشه.
حالا این مشکل اگر برای کاربران پیش بیاد کار خیلی سخت میشه.
لوکال به این مشکل بر نخوردم. نمیدونم می تونه از هاست هم باشه یا نه؟!


علیرضا تحریری
تخصص : لاراول، لایوایر و Tailwind css
@alirezatahriri 5 سال پیش مطرح شد
0

سلام از دستور @csrf  استفاده کردید شاید اینطوری درست شد.


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

@alirezatahriri
سلام. نه. داخل ویو با کد زیر توکن رو فراخوانی می کنم

 {{ csrf_field() }}

s
@sevda 1 سال پیش مطرح شد
0

سلام من از لاراول ۱۰ استفاده میکنم اما این مشکلو دارم


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

@sevda
داخل blade و توی فرم اینو اضافه کن
@csrf


مهدی نظری
تخصص : توسعه دهنده Front End
@mahdi.nazari 1 سال پیش مطرح شد
0

سلام دوست من 🖐
امیدوارم حالت خوب و عالی باشی✨

مشکلی که شما در Laravel با CSRF (Cross-Site Request Forgery) و انقضای جلسه (Session Timeout) روبرو میشی، ممکنه به علت تنظیمات مختلف سرور و تنظیمات Laravel باشه. این مشکلات میتونه به چندین دلیل اتفاق بیفته

تنظیمات CSRF Middleware:
چک کن که تنظیمات CSRF Middleware در فایل app/Http/Middleware/VerifyCsrfToken.php به درستی تنظیم شده باشه. این فایل باید به این صورت باشد:

protected $except = [
    // ...
];

اگر در اینجا مسیری که مشکل دارد را به except اضافه کرده‌اید، CSRF بر روی آن مسیر اعمال نمی‌شه.

تنظیمات (Session Settings):
اگر مشکل انقضای جلسه هست ، ممکنه تنظیمات جلسه در فایل config/session.php نیاز به تغییر داشته باشن. شما میتونی مقدار lifetime را افزایش بدی تا مدت زمان انقضای جلسه افزایش پیدا کنه :

'lifetime' => 120, // دقیقه

تنظیمات کش و سیستم فایل (Cache and Filesystem):
اگر از سیستم کش و سیستم فایل برای ذخیره کش و فایل‌ها استفاده می‌کنی، چک کنید که تنظیمات آنها در config/cache.php و config/filesystems.php به درستی تنظیم شده باشن. اگر تغییری ایجاد کردی ، ممکنه به مشکل اینجا برخورده باشی.

اجرای دستورات Clear:
دستورات php artisan cache:clear, php artisan config:clear, php artisan route:clear, و php artisan view:clear را اجرا کنید تا کش‌ها میتونه تا حدودی راه حل باشه اما شاید بهتون کمک نکنه

امیدوارم پاسخم بهت کمک کرده باشه ❤️
موفق و پیروز باشی 🤘🌹


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

من اینشکلی می نویسم و ارور نمیده
@csrf


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

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