0
votes

Home controller is ok

Other Codeigniter controllers cannot be accessed using rewrite and instead it shows

Database connection error (2): Could not connect to MySQL.

but using index.php/[nameofcontrollerorroute] it shows normally... I don't think db connection is the problem since I can access the Home controller w/c already connect to db, of course, and using the index.php/[nameofcontrollerorroute]

.htaccess:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]

I also tried changing the config values [uri_protocol & index_page] and still no changes.

I'm using GoDaddy Hosting and the codeigniter is in a subdirectory, I already tried different solutions here in stackoverflow questions. any ideas?

localhosting is very okay with XAMPP

1

1 Answers

2
votes

Try this .htaccess works for my website which is in codeigniter and hosted on godaddy.

<IfModule mod_rewrite.c>
       RewriteEngine On
        #AddHandler application/x-httpd-php5 .php
        RewriteBase /

        #Removes access to the system folder by users.
        #Additionally this will allow you to create a System.php controller,
        #previously this would not have been possible.
        #'system' can be replaced if you have renamed your system folder.

        RewriteCond %{REQUEST_URI} ^system.*
        RewriteRule ^(.*)$ /index.php?/$1 [L]

        #Checks to see if the user is attempting to access a valid file,
        #such as an image or css document, if this isn't true it sends the
        #request to index.php

        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ index.php?/$1 [L]

    </IfModule>

    <IfModule !mod_rewrite.c>
       # If we don't have mod_rewrite installed, all 404's
       # can be sent to index.php, and everything works as normal.
       # Submitted by: ElliotHaughin

       ErrorDocument 404 /index.php
    </IfModule>