Solved

Diagnosing the cause of a redirect loop in a CodeIgniter app

Posted on 2014-03-02
4
513 Views
Last Modified: 2016-04-07
I seem to have a redirect loop in my app, and I'm trying to track down the cause.

My controller home.php is the default controller for my app, and contains:
	function index()
	{
		if (!$this->tank_auth->is_logged_in()) {
			dbglog('redirecting');
			redirect('/auth/login/');
		} else {

Open in new window


The dbglog() call is just debugging to a log file. When I add debugging to the auth controller login function, it doesn't get output.

The word "redirecting" is written to my log file 21 times before an error is displayed by Chrome. Firefox doesn't seem to detect the problem (the page doesn't load; it just keeps trying).

Is there some kind of logging I can turn on in CodeIgniter to figure out what's happening?

It's possible the issue is with Apache, in which case I'll need to try to find out what logging is done by that, and where it gets written to. I'm using a (shared) corporate Linux server.
0
Comment
Question by:Terry Woods
4 Comments
 
LVL 36

Accepted Solution

by:
Loganathan Natarajan earned 250 total points
Comment Utility
Is there some kind of logging I can turn on in CodeIgniter to figure out what's happening?


ref. http://ellislab.com/codeigniter/user-guide/general/errors.html
0
 
LVL 35

Author Comment

by:Terry Woods
Comment Utility
Thanks for the link. I suspect that logging needs to be manually added though, so it requires me to understand the problem that I don't fully understand. I will have a play with the log threshold settings though and see what happens.
0
 
LVL 42

Assisted Solution

by:Chris Stanyon
Chris Stanyon earned 250 total points
Comment Utility
In the config.php file in the application/config folder, turn logging up to maximum - 4

$config['log_threshold'] = 4;

Don't leave this in place for too long because your log files (usually in application/logs) will get huge.

Also double check what's going on in your auth/login method - that may be causing the loop
0
 

Expert Comment

by:Jawad Abbass
Comment Utility
I have solved this issue by setting the value of "$config['sess_encrypt_cookie']" to "TRUE"
In my case it’s due to sanitizing of cookie values by security class.
But Encryption of cookie data solves the problem.
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Developers of all skill levels should learn to use current best practices when developing websites. However many developers, new and old, fall into the trap of using deprecated features because this is what so many tutorials and books tell them to u…
Recently I spent hours debugging an issue in a Rails project where ActiveRecord was causing MySQL errors trying to create a User object of a class at the top level of a Single Table Inheritance model structure.  It turns out `.create` behaves differ…
The viewer will learn how to dynamically set the form action using jQuery.
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

9 Experts available now in Live!

Get 1:1 Help Now