2017-10-16 2 views
2

Je viens récemment commencé à apprendre CodeIgniter et en essayant d'installer mon projet dans cette structure:CodeIgniter configuration initiale 404

Spécification
Apache/2.4.27 (Win64) PHP/6.5.31.
serveur: WAMP Server 3 Configuration Localhost
CodeIgniter 3.1.2

Répertoire
www/CI/firstci/******

Donc, en utilisant cette structure de répertoire va me donner une erreur 404 lorsque je navigue à www/CI/firstci/

404 Page introuvable La page demandée n'a pas été trouvée.

Si je mets mon CodeIgniter plus haut la racine comme celui-ci

Répertoire
www/firstci/******

Il fonctionnera lorsque je navigue à www/firstci/ et il va me diriger vers une page d'accueil. Donc, ma question est comment puis-je résoudre ce problème de routage/chemin d'accès? Si possible, expliquez pourquoi CodeIgniter se comporte comme ça aussi?

+0

'CI' est dossier ici? –

+0

Gardez votre projet directement sous www, puis accédez comme ceci: 'www/firstci/******' C'est la bonne façon. Il n'y a pas de bénéfice à conserver un dossier supplémentaire "CI" et à y placer le "firstci". –

+0

vérifiez votre URL de base dans la configuration. Rien à voir avec une nouvelle installation –

Répondre

1

Ok j'ai trouvé que après avoir changé:

routes.php

$route['default_controller'] = 'welcome'; 
$route['404_override'] = ''; 
$route['translate_uri_dashes'] = FALSE; 

À

$route['default_controller'] = 'pages/view'; 
$route['(:any)'] = 'pages/view/$1'; 
$route['404_override'] = ''; 
$route['translate_uri_dashes'] = FALSE; 

Ajouter un fichier appelé contrôleur Pages.php

class Pages extends CI_Controller { 
    public function view($page = 'home') { 
     if (!file_exists(APPPATH.'views/pages/'.$page.'.php')){ 
      show_404(); 
     } 

     $data['title'] = ucfirst($page); 

     $this->load->view('templates/header'); 
     $this->load->view('pages/'.$page, $data); 
     $this->load->view('templates/footer'); 
    } 
} 

Également ajouté.htaccess

RewriteEngine on 
RewriteCond $1 !^(index\.php|assets|images|js|css|uploads|favicon.png) 
RewriteCond %(REQUEST_FILENAME) !-f 
RewriteCond %(REQUEST_FILENAME) !-d 
RewriteRule ^(.*)$ ./index.php/$1 [L] 

et a ajouté les fichiers pertinents pour afficher le dossier organisation à cette structure:

templates/header 
pages/'.$page, $data 
templates/footer 

Il fonctionne maintenant et est en mesure de me diriger vers une page php

2

Voici quelques étapes de base pour exécuter le programme d'installation CI.

  1. Comme mentionner dans le commentaire vérifier l'URL de votre base config.php
  2. Suivre ce Installation instructions
  3. Voici le lien d'aide de routage de documentation
  4. Vous pouvez supprimer le fichier index.php. voici le documentation link