Bonjour tout le monde je me heurte a un probleme asser génant, je continue mon site en local sur la base du MVC de Grafikart et sur le site que je fait se trouve dans le un dossier nommé "nunux-prod" et donc lorsque je clique sur
Router::url('pages/index');
je tome bien sur une url du type
http://localhost/nunux-prod/pages/index
jusque la parfait sa marche impec' héhé, mais apres avoir mis se site sur mon serveur maison sous debian malheur !
le Router::url ne contient plus localhost+le_dossier :S
si je fait un echo Router::url il m'affiche "/" au lieu du nom de domaine ...
si quelqu'un a une idée sa serait enorme =)
Merci d'avance.
Edit: j'ai trouver une solution c'est d'enlever le slash dans les lien pour que sa passe, mais faire sa a chaque up s'pas top ^^
LOLOLOL j'vien d'me taper une des ces barre de rire !!!
vu que le site est a la racine du serveur et que le router.php avait sa :
foreach(self::$prefixes as $k=>$v){
if(strpos($url,$v) === 0){
$url = str_replace($v,$k,$url);
}
}
return BASE_URL.'/'.$url;
J'ai remplacer par sa XD !!!
foreach(self::$prefixes as $k=>$v){
if(strpos($url,$v) === 0){
$url = str_replace($v,$k,$url);
}
}
return BASE_URL.''.$url;
En gros sans le slash et sa m'affiche bien localhost OU le nom de domaine apres un up :p
Donc voila tourner en rond pendant tres longtemps a cause d'un ... slash ><
Regarde dans le code et modifie le par rapport à ton serveur là j'ai plus trop le code en tête pour te donner une aide plus détaillée :D
héhé jvien de capter que tout foire quand le site n'est pas dans un dossier ^^
il serait temp que j'me refasse du php !
je vien de retester les lien et ya un petit soucis de lien en faite ( logique )
lorsque que je fait
<link rel="stylesheet" href="<?php echo BASE_URL.'/webroot/css/bootstrap.min.css'; ?>">
Sa marche bien avec le slash avant webroot mais lorsque je le up sur le serveur sous linux beh le slash est en trop ><
si quelqu'un a une soluce :p
Bon j'ai capter -_-'
Vu que le site se trouve a la racine du serveur pas besoin de mettre de BASE_URL ou de Router::url ... car sa ne sert a rien de récuperer le dossier parent xD .
héhé oui le code du tuto est donné en l'état, pas testé sur des config variées :)
Au final ça t'a permis de mieux comprendre le fonctionnement du code :)
me reste a comprendre le Router::url :p mais sa devrait etre bon d'ici peu =)
mais sinon meme si ton code n'a pa été tester sur toute les config faudrait que l'on puisse poster nos scipt si tu veux .
EDIT: j'te paye un cafer, car j'pref avoir des sources fraiche ;)
Bon apres mettre remis sur le MVC j'peux dev' sur mon windaube et up le site en prod sur le serveur sans prise de tete ;)
static function url($url = ''){
trim($url,'/');
//debug($url);
foreach(self::$routes as $v){
if(preg_match($v'originreg'],$url,$match)){
$url = $v'redir'];
foreach($match as $k=>$w){
$url = str_replace(":$k:",$w,$url);
}
}
}
foreach(self::$prefixes as $k=>$v){
if(strpos($url,$v) === 0){
$url = str_replace($v,$k,$url);
}
}
if(BASE_URL === '/'){
return BASE_URL.''.$url;
}else{
return BASE_URL.'/'.$url;
}
}
Sujet résolu =D