CodeIgniter Forums

Full Version: routing problem
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

El Forum

Hello together.
the roouting doesn't seam to work, or I've configured the wrong way.

I have a root folder: and have set this in the config.php
$config['base_url'] = '';
$config['uri_protocol'] = "REQUEST_URI";

In the routes.php file I've set the following:
$route['default_controller'] = "welcome";
$route['404_override'] = '';
$route["users"] = "users";

//For pages those have a static name
$route['{default_controller}/{default_method}/about.html'] = "{original_controller}/{original_method}";

//rule to rout request with number values
$route['{default_controller}/{default_method}/:num'] = "{original_controller}/{original_method}";

//rule to rout request with regular expression values
$route['{default_controller}/{default_method}/([a-z]+)-{delimiter}'] = "{original_controller}/{original_method}/$1";

My htaccess file hase the following code:
<IfModule mod_rewrite.c>

    RewriteEngine On
    RewriteBase /cm13/

    # Disable rewrite for valid directory/files
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d

    #map all request urls to a specific controller method
    RewriteRule ^(.*)$ index.php?/{controller}/{method}/$1 [L]

The users controller:

class Users extends CI_Controller {

public function index()
       echo "UsersIndex<br>";

but when I try to call, I get an 404 error message.
What can I do? Or what have I done wrong?

El Forum

You cannot do routing like that! Also your .htaccess file will not allow that!

CodeIgniter User Guide - URI Routing

El Forum

I already viewed the URI Routing page. But don't understand why it doesn't work, and what ist required so that it works.

El Forum

Using {var} isn't a regular expression. Use the real controller/method names or use regular expressions in your routing rules.

Same in your .htaccess. .htaccess gets processed the very first thing on each request, before CI gets the request. How is it supposed to know what {controller} and {method} are?

Quote:Routes can either be specified using wildcards or Regular Expressions