web-dev-qa-db-fra.com

Configurer l'URL de base dans codeigniter

J'ai la structure de répertoire comme celle-ci dans le code allumeur:

 Appsite
    -website
       -application
        -images

Lorsque j’accédais à l’image dans index.php, j’utilisais: <img src="http://localhost/Appsite/website/images/images.PNG"

Et le href est: <li class=""><a href="http://localhos/tAppsite/website/index.php/home/">Home</a></li>

Je pense que ce n’est pas une bonne pratique d’inclure le http://localhost lors de l’accès aux images ou aux bibliothèques de code igniter. J'ai donc essayé de changer le $config['base_url'] dans config.php En $config['base_url'] = "http://".$_SERVER["HTTP_Host"]."/";

Et maintenant je mets à jour mon image source et une autre source de la bibliothèque, je supprime l’hôte local et le nom de mon dossier de répertoire

<img src="images/images.PNG”><li class=""><a href= <?php echo base_url;?> /website/index.php/home/">Home</a></li>

Mais je reçois des erreurs. il dit objet non trouvé. Certains peuvent m'aider? 

5
qazzu

Dans Config.php

$config['base_url'] = 'http://localhost/Appsite/website/';
$config['index_page'] = '';

# If online site
# $config['base_url'] = 'http://stackoverflow.com/';

Dans .htaccess (dossier extérieur de l'application) - Pour supprimer index.php dans l'URL

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]

Accéder à l'URL

<a href="<?php echo base_url();?>contollerName/methodName"> click here</a>

Pour accéder à l'image

<img src="<?php echo base_url();?>images/images.PNG”>

Pour accéder à CSS

<link rel="stylesheet" type="text/css" href="<?php echo base_url();?>assets/css/style.css"/>

Pour utiliser base_url load URL helper à partir de autoload.php

8
Abdulla Nilam

Dans votre config.php, définissez la base_url() comme suit:

$config['base_url'] = 'http://localhost/projectname/';

Dans votre vue, chargez l'image en tant que,

<img src="<?php echo base_url();?>images/images.PNG”>
1
Vinod VT

Il suffit de mettre cela, il prendra le chemin automatiquement correct du projet et définira l'URL de base 

$site_url = ((isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) !== 'off') || (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')) ? 'https' : 'http';
$site_url .= '://' . (isset($_SERVER['HTTP_Host']) ? $_SERVER['HTTP_Host'] : '');
$site_url .= str_replace(basename($_SERVER['SCRIPT_NAME']), '', $_SERVER['SCRIPT_NAME']);

$config['base_url'] = $site_url;
0
Jafarali Maknojiya