كيف أقوم باستكشاف أخطاء تطبيق CakePHP العالق في حلقة إعادة التوجيه وإصلاحها؟

StackOverflow https://stackoverflow.com/questions/810390

  •  03-07-2019
  •  | 
  •  

سؤال

لدي موقع CakePHP عالق في حلقة إعادة التوجيه.لقد قمت بإزالة كل جزء من التعليمات البرمجية التي تقوم بإعادة التوجيه وقمت بإيقاف تشغيل إعادة التوجيه التلقائي على كائن المصادقة.

حدث هذا عندما قمت بتسجيل الخروج من الموقع واستمر حتى بعد حذف جميع ملفات تعريف الارتباط ومحاولة تحميل الصفحة الرئيسية.إجراء الفهرس موجود $this->Auth->allow.

لا ينبغي لي ذلك، فهو يستمر في محاولة إعادة توجيهي إلى /users/login والذي يقوم بعد ذلك بإعادة توجيه الحلقات.إجراء تسجيل الدخول موجود أيضًا في القائمة المسموح بها

هل لدى أي شخص أي أفكار عما يمكن أن يسبب هذا؟

هل كانت مفيدة؟

المحلول

لك <cake>/app/app_controller ينبغي أن يكون beforeFilter() الطريقة مع جميع سلوكيات مصادقة عنصر.أحد هذه السلوكيات هو مكان الإرسال عندما لا يقوم المستخدم بتسجيل الدخول.

سوف تبحث عن شيء مثل:

// If cake should redirect automatically or you will do it in the User.login()
$this->Auth->autoRedirect = true; 
// And if the autoRedirect is true, where to redirect
$this->Auth->loginRedirect = '/user/login';

جلوك

نصائح أخرى

يحدث هذا أيضًا في CakePHP 1.3 إذا قمت بإضافة مكون مخصص يمتد عنصر بدلاً من هدف.

ويا أحيانا، إذا كنت ديسيبل اتصال مخطئون ،،، التطبيق سوف يحاول الاتصال الخلية، وستكون في حلقات. لذلك، تبدو لل Allways إذا كان التكوين قاعدة بيانات على حق.

وداعا.

وكان لي نفس المشكلة بالضبط، وعندما كنت إعادة تشغيل خدمة ماي توقف إعادة التوجيه. لذلك هذا إضافة إلى قائمة من الأشياء للتحقق.

وحسنا يبدو أن هناك عددا من الأسباب التي تجعل هذا يمكن أن يحدث في حالتي كنت أحاول الوصول

وcakeapplication / المستخدمين / إضافة

وخرج أنني في عداد المفقودين

'add'=>'*',

وفي مجموعة الأذونات في usersController.php

وكان لي مؤخرا هذه المشكلة وأنا لا أعرف لماذا ولكن كانت ثابتة عندما غيرت (في بلدي طريقة AppController beforeFilter ()):

$this->Auth->allow('*');

إلى

$this->Auth->allow();

وبطبيعة الحال بعد ذلك في وحدات تحكم بلدي اللاحقة أنفي الإجراءات approriate.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top