Err_Too_Many_Redirects On Access Filtering In Site/index

Good morning!

I have pure Yii-1.1.13 application. I need to add access rules in SiteController, but there is always 310 error.

First i’ve tried standard CRUD access rules:




public function filters()

    {

        return array(

            'accessControl', // perform access control for CRUD operations

            'postOnly + delete', // we only allow deletion via POST request

        );

    }


    /**

     * Specifies the access control rules.

     * This method is used by the 'accessControl' filter.

     * @return array access control rules

     */

    public function accessRules()

    {

		return array(

            array('deny',  // allow all users to perform 'index' and 'view' actions

                'users'=>array('*'),

            ),

        );

    }



This is first time i get ERR_TOO_MANY_REDIRECTS.

Then i’ve tried this solution, but result is the same.

This is my protected/config/main.php:




<?php


Yii::setPathOfAlias('bootstrap', dirname(__FILE__).'/../extensions/bootstrap');

// uncomment the following to define a path alias

// Yii::setPathOfAlias('local','path/to/local-folder');


// This is the main Web application configuration. Any writable

// CWebApplication properties can be configured here.

return array(

	'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',

    'name'=>'Тибсер',

    //'homeUrl'=>'search',

    'theme'=>'bootstrap',


	// preloading 'log' component

	'preload'=>array('log'),


	// autoloading model and component classes

	'import'=>array(

		'application.models.*',

		'application.components.*',

	),


	'modules'=>array(

		// uncomment the following to enable the Gii tool

		/*

		'gii'=>array(

			'class'=>'system.gii.GiiModule',

			'password'=>'Enter Your Password Here',

			// If removed, Gii defaults to localhost only. Edit carefully to taste.

			'ipFilters'=>array('127.0.0.1','::1'),

            'generatorPaths'=>array(

                'bootstrap.gii',

            ),

		),

		*/

	),


	// application components

	'components'=>array(

		'user'=>array(

			// enable cookie-based authentication

			'allowAutoLogin'=>true,

		),

		// uncomment the following to enable URLs in path-format


		'urlManager'=>array(

			'urlFormat'=>'path',

			'rules'=>array(

				'<controller:\w+>/<id:\d+>'=>'<controller>/view',

				'<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',

				'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',

			),

		),


		/*'db'=>array(

			'connectionString' => 'sqlite:'.dirname(__FILE__).'/../data/testdrive.db',

		),*/

		// uncomment the following to use a MySQL database


        'db'=>array(

            'connectionString' => 'mysql:host=localhost;dbname=ibt_db',

            'emulatePrepare' => true,

            'username' => 'root',

            'password' => '2236',

            'charset' => 'utf8',

        ),


		'errorHandler'=>array(

			// use 'site/error' action to display errors

			'errorAction'=>'site/error',

		),

		'log'=>array(

			'class'=>'CLogRouter',

			'routes'=>array(

				array(

					'class'=>'CFileLogRoute',

					'levels'=>'error, warning',

				),

				// uncomment the following to show log messages on web pages

				/*

				array(

					'class'=>'CWebLogRoute',

				),

				*/

			),

		),

        'bootstrap'=>array(

            'class'=>'bootstrap.components.Bootstrap',

        ),

	),


    'behaviors' => array(

        'onBeginRequest' => array(

            'class' => 'application.components.RequireLogin'

        )

    ),


	// application-level parameters that can be accessed

	// using Yii::app()->params['paramName']

	'params'=>array(

		// this is used in contact page

		'adminEmail'=>'example@example.com',

	),

);



Any ideas what’s wrong with SiteController?

Best regards!

I am having the same problem frequently. I think is a server error need to fixed on Apache config file?

kinos, try to comment all rules in urlManager in your protected/config/main.php. Or you can add new rules in top




'gii'=>'gii',

                'gii/<controller:\w+>'=>'gii/<controller>',

                'gii/<controller:\w+>/<action:\w+>'=>'gii/<controller>/<action>',



taken from this comment