View Full Version : only default controller is loading for all request - Critical

05-06-2010, 09:37 AM
My codeigniter project is in live.
I have two copies of it. One in the root and another in a subfolder.
Both are configered to work normal.

The root copy if the one which was made after testing in a subfolder.
While running from the a subfolder all worked well.

But when copied to the root folder the default controller is loading for all requests.
But were as in subfolders and in other servers it is working well.

It is like the following
A true copy in root folder like http://sitename.com
and another true copy in a subfolder like http://sitename.com/abc

when requesting like this http://sitename.com/gallery the default controller is loaded instead of gallery controller.

When i tried like this http://sitename.com/index.php/gallery/ then it worked well...
but http://sitename.com/gallery/ is showing only the default controller. that is the index page.

here is my htaccess...

php_flag magic_quotes_gpc off
php_flag short_open_tag on

RewriteEngine on

RewriteCond $1 !^(index\.php|images|css|static|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

The server is
Linux barracuda.elinuxservers.com #1 SMP Tue Aug 25 18:13:37 UTC 2009 i686
PHP Version 5.2.9

05-06-2010, 04:34 PM
This looks like a problem with your rewrite, and nothing with php; everything appears to go through the index.php.

You have contacted the CodeIgniter support I assume? They will provide you with much better answers in a shorter timeline than a generic support forum can (unless someone here has seen and solved this exact issue).

05-07-2010, 11:32 AM
I solved it.

In the above htaccess i replaced the last line
RewriteRule ^(.*)$ index.php/$1 [L]

with this
RewriteRule ^(.*)$ index.php?$1 [L]

The modification is i changed the index.php/ to index.php?

and the pages loaded as expected.

Will there be any side effects cause of the above modification?

05-07-2010, 05:11 PM
I have no idea; I don't use the codeigniter framework so I couldn't even guess what they do and do not expect within their query strings. For that you would have to contact their support.