Looking for codeigniter Keywords? Try Ask4Keywords

codeigniterDémarrer avec codeigniter


Remarques

CodeIgniter est un framework MVC écrit dans et pour PHP.

Il est léger comparé aux autres frameworks MVC, au prix de moins de fonctionnalités, par exemple, il n’ya pas de système d’authentification intégré pouvant faire partie d’autres frameworks.

CodeIgniter est un bon choix de frameworks pour ceux qui commencent avec MVC car il ne force aucune norme particulière pour la dénomination et la structure du code; mais il convient également aux projets de grande envergure pour lesquels une large gamme de fonctionnalités contenues dans d’autres frameworks peut ne pas être nécessaire.

Versions

Version Date de sortie
Version Bêta 1.0 2006-02-28
Version 2.0.0 2011-01-28
Version 2.2.0 2014-06-02
Version 3.0.0 2015-03-30
Version 3.1.3 2017-01-09
La version est 3.1.4 2017-03-20
La version est 3.1.5 2017-06-19

Augmentez la sécurité en masquant l'emplacement de vos fichiers CodeIgniter

Dans le CodeIgniter, il y a deux répertoires principaux à prendre en compte: système et application . Le dossier système contient les entrailles principales de CodeIgniter. Le dossier de l'application contiendra tout le code spécifique à votre application, y compris les modèles, contrôleurs, vues et autres bibliothèques pertinentes.

Selon les instructions d'installation de CodeIgniter, dans l'intérêt de la sécurisation de votre application, le dossier du système et celui de l'application doivent être placés au-dessus de la racine Web afin qu'ils ne soient pas directement accessibles via un navigateur. Par défaut, les fichiers .htaccess sont inclus dans chaque dossier pour empêcher l'accès direct, mais il est préférable de les supprimer complètement de l'accès public si la configuration du serveur Web change ou ne respecte pas le .htaccess.

├── CodeIgniter 
│   ├── application
│   ├── system
│   ├── wwwroot
│   │   ├── index.php
 

Après avoir déplacé les dossiers système et application, ouvrez le fichier principal index.php et définissez les $system_path , $application_folder , de préférence avec un chemin complet, par exemple ' /www/MyUser/system' . Cependant, les chemins relatifs doivent fonctionner.

Pour Linux / Apache:

$application_folder = './application';
$system_path = './system';
 

Pour Windows / IIS:

$application_folder = '../application/';
$system_path = '../system/';
 

Installation et configuration

Environnement Windows

  1. Installer XAMPP ou WAMP
  2. Téléchargez et décompressez le package depuis Codeigniter.com
  3. Extraire tout le document dans l'espace du serveur (répertoire htdocs ou www)

Environnement Mac

  1. Installez MAMP
  2. Téléchargez et décompressez le package depuis Codeigniter.com
  3. Extraire tout le document dans l'espace serveur (htdocs)

Environnement Linux

  1. Téléchargez et décompressez le package depuis Codeigniter.com
  2. Placez le dossier extrait dans / var / www (dans WAMP) ou xampp / htdocs (XAMPP)

GitHub

git clone https://github.com/bcit-ci/CodeIgniter.git


Si vous suivez le système correctement, vous obtiendrez l'écran ci-dessous.

entrer la description de l'image ici


URL de base

  1. Aller à l' application/config/config.php
  2. Définir l'URL de base sous la forme $config['base_url'] = 'http://localhost/path/to/folder';

Supprimer index.php de l'URL

Configuration d'Apache
  1. aller à la racine

  2. créer un fichier htaccess

  3. Ajouter le code ci-dessous à l'intérieur

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

Remarque: le code .htaccess varie selon le serveur d'hébergement. Dans certains serveurs d'hébergement (par exemple: Godaddy), vous devez utiliser un serveur supplémentaire ? dans la dernière ligne du code ci-dessus. La ligne suivante sera remplacée par la dernière ligne dans le cas applicable:

RewriteRule ^(.*)$ index.php?/$1 [L,QSA]
 
Configuration Nginx
  1. Ouvrir le fichier de configuration nginx (par défaut: /etc/nginx/sites-available/default )

  2. Ajouter le code ci-dessous à l'intérieur

    server {
       server_name domain.tld;
    
       root /path-to-codeigniter-folder; //you codeigniter path
       index index.html index.php;
    
       # set expiration of assets to MAX for caching
       location ~* \.(ico|css|js|gif|jpe?g|png)(\?[0-9]+)?$ {
            expires max;
            log_not_found off;
       }
    
       location / {
            # Check if a file or directory index file exists, else route it to index.php.
            try_files $uri $uri/ /index.php;
       }
    
       location ~* \.php$ {
            fastcgi_pass 127.0.0.1:9000;
            include fastcgi.conf;
       }
    }
     

Configuration de la base de données

  1. Aller à l' application/config/database.php
  2. Définissez les variables de configuration suivantes.
    • Hôte
    • Nom d'utilisateur
    • Mot de passe
    • Nom de la base de données
    • Port

Définir le contrôleur par défaut

  1. Aller à l' application/config/routes.php
  2. définissez la valeur de la variable de configuration suivante avec le nom de votre contrôleur.
    • default_controller

AutoLoad Library And Helper

  1. Aller à l' application/config/autoload.php
  1. set Valeur $autoload['libraries'] = array('database', 'session'); comme $autoload['libraries'] = array('database', 'session');
  2. set Helper value comme $autoload['helper'] = array('url', 'file', 'form', 'html', 'text');

Exécuter plusieurs applications sur un système CI

Codeigniter peut être configuré pour exécuter plusieurs projets sans dupliquer les fichiers core CI.

C'est possible en divisant le côté de l'application CI. Par exemple , nous allons prendre projet de site Web, qui contient front-end et back-end système de gestion de contenu des applications (CMS). Dans ce cas, la structure du dossier CI sera comme suit:


Structure du dossier:

├── Codeigniter
│   ├── applications
│   │   ├─ front-end
│   │   │   ├── views
│   │   │   ├── models
│   │   │   ├── controllers
│   │   │   ├── config
│   │   │   └── ...
│   │   ├─ back-end
│   │   │   ├── views
│   │   │   ├── models
│   │   │   ├── controllers
│   │   │   ├── config
│   │   │   └── ...
│   │   │
│   ├── system
│   │   ├── core
│   │   ├── database
│   │   ├── helpers
│   │   └── ...
│   │   
│   ├── index.php
└   └── backend.php
 

Dans le dossier des applications , nous avons créé deux dossiers: front-end et back-end et copié tout le contenu par défaut des applications sous ces deux dossiers.

Nous avons également dupliqué le fichier index.php sous le dossier racine en tant que backend.php

Ensuite, configurez CI pour qu'il fonctionne avec ces deux instances d'application.


Configuration du code :

Ouvrez les fichiers index.php et backend.php et mettez à jour application_folder confg:

//index.php
$application_folder = 'applications/front-end';

//backend.php
$application_folder = 'applications/back-end';
 

Après la configuration ci-dessus, CI est prêt à exécuter deux applications sous un système CI:

La demande sur example.com/Codeigniter/index.php ouvrira front-end application front-end

Demande sur example.com/Codeigniter/backend.php va ouvrir l'application back-end