this is a function in my controller
JavaScript
x
public function delete() {
$result_id = $this->uri->segment(3);
$this->result_model->delete($result_id);
redirect('results/all/');
}
function is deleting properly my record but it redirects the user to
JavaScript
http://localhost/ci/index.php/results/all
which gives me error 404
my .htaccess is like this:
JavaScript
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L]
i have set the index_page in config.php
JavaScript
$config['index_page'] = 'index.php';
Advertisement
Answer
Removing the index.php file in Codeigniter
By default, the index.php file will be included in your URLs:
JavaScript
example.com/index.php/news/article/my_article
If your Apache server has mod_rewrite enabled, you can easily remove this file by using a .htaccess file with some simple rules. Here is an example of such a file, using the “negative” method in which everything is redirected except the specified items:
And set your $config[‘index_page’] = ”;
JavaScript
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
In the above example, any HTTP request other than those for existing directories and existing files is treated as a request for your index.php file.