رضا
1 سال پیش توسط رضا مطرح شد
1 پاسخ

حل خطای 419

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

مشکل :
وقتی یوزرنیم پسورد میزنه خطا 419 میده
تو میدل ور که میشه csrf رو غیر فعال کرد این حرکت رو زدم لینکش رو هم دادم اما بعد از این حرکت لاگین رو میزنه دوباره ریدارکت میشه صفحه لاگین بدون خطا یعنی وقتی میدلور رو دست می زنم که csrf کلا غیر فعال بشه یا برای روت خاص غیرفعال بشه تنها فرقش اینه که دیگه اون خطا نمیاد ولی لاگینم نمیشه.

اما نکته بعدی اینه مروگر رو عوض کنم لاگین میشه یا کش رو پاک کنم لاگین میشه.
لطفا اساتید به سوالم دقت کنید منو راهنمایی کنید ممنون میشم. csrf تو برگه هم هستش اما نمی دونم چرا اینطور میشه و باید حتما یا کش پاک بشه یا مروگر عوض بشه تا کار کنه.
با 5 تا کامپیوتر و چند تا گوشی هم تست کردم . یعنی بعد عضویت که صفحه لاگین میره لاگین نمیشه و این خطا میاد اما دفعات بعد دیگه کار می کنه.


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

سلام، خطای 419 به دلیل عدم اعتبارسنجی CSRF درخواست است و ممکن است با غیرفعال کردن آن حل نشود. برای رفع این مشکل می‌توانید این راه‌حل‌ها را امتحان کنید:

1- بررسی فرم و پارامترهای ارسالی:
اگر نام فیلدهای فرم شما با نام فیلدهای مورد انتظار در کنترلر یا روت مطابقت نداشته باشد، ممکن است باعث ایجاد خطای 419 از سمت Laravel شود. لذا، اطمینان حاصل کنید که نام فیلدهای فرم با نام فیلدهای مورد انتظار در کنترلر (یا روت) یکسان باشد.

2- بررسی تنظیمات Session:
چنانچه تنظیمات جلسه (Session) شما با تنظیمات پیش‌فرض فرق دارد، این مشکل بوجود می‌آید. لذا، از اطمینان حاصل کنید که تنظیمات Session شما مناسب برنامه شماست.

3- استفاده از پروتکل HTTPS:
بعضی از مرورگرها وب‌سایت‌هایی که از پروتکل HTTP استفاده می‌کنند را به عنوان غیر امن معرفی می‌کنند. لذا، با فعال‌سازی پروتکل HTTPS و تأیید SSL شما می‌توانید این مشکل را حل کنید.

4- بررسی تنظیمات توکن CSRF:
چنانچه تنظیمات توکن CSRF شما با تنظیمات پیش‌فرض متفاوت است، این مشکل رخ می‌دهد. برای رفع این مشکل، تنظیمات توکن CSRF را با تنظیمات پیش‌فرض Laravel یکسان کنید.

5- بررسی نرم‌افزارهای امنیتی:
برخی از نرم‌افزارهای امنیتی مثل فایروال Firewall یا برخی افزونه‌های مرورگر، با عدم تطابق تنظیمات CSRF و Session شما با پیش‌فرض‌های آن‌ها در کار کرد با Laravel، این خطا را ایجاد می‌کنند. در صورت نصب بودن چنین نرم‌افزارهایی، تنظیمات آن‌ها را چک کنید.

امیدوارم یکی از راه‌حل‌های فوق برای حل این مشکل شما مفید باشد.


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

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