2017-08-14 2 views
0

Je suis débutant dans Codeigniter. Dans .htaccess fichierProblème de routage de l'action du contrôleur Codeigniter

RewriteEngine on 
RewriteCond $1 !^(index\.php|resources|robots\.txt) 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php/$1 [L,QSA] 

Dans le fichier config.php j'ai apporté des modifications que

$config['index_page'] = ''; 
$config['uri_protocol'] = 'REQUEST_URI'; 
$config['url_suffix'] = ''; 
$config['base_url'] = ''; 

Dans le fichier route.php j'ai modifié comme

$route['products/register'] = 'products/register'; 
$route['products'] = 'products'; 
$route['default_controller'] = 'products'; 
$route['404_override'] = ''; 
$route['translate_uri_dashes'] = FALSE; 

Produits Controller

<?php 
if (!defined('BASEPATH')) 
exit('No direct script access allowed'); 
class Products extends CI_Controller { 
    public function __construct(){ 
     parent::__construct(); 
     $this->load->helper(array('form', 'url')); 
     $this->load->library(array('session', 'form_validation', 'email')); 
     $this->load->database();   
     $this->load->model("product_model"); 
    }  
    public function index() 
    { 
     die("aaaaa"); exit; 
    } 
    public function register() 
    { 
     die("DSds"); 
    } 
} 

Quand je demande url dans le navigateur http://localhost/codei/products/register ses spectacles 404 Page Not Found

Répondre

0
RewriteEngine on 
RewriteCond $1 !^(index\.php|resources|robots\.txt) 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?/$1 [L,QSA] 

Essayez le code ci-dessus dans .htaccess et url de base également configuré dans le fichier de configuration

$config['base_url'] = 'http://localhost/codei/'; 
+0

ne fonctionne pas, je l'ai utilisé même code – Sudhir

+0

chèque rewrite_mode est dans apache (xampp ou WAMP) –

0

Utilisez ce qu'il sera certainement travailler pour vous. Ne faites rien d'autre, tout est parfait. seulement remplacer le code .htaccess

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

Note: Assurez-vous rewrite_mode est dans apache