2009-08-10 7 views
0

J'ai la règle mod_rewrite suivante:mod_rewrite chambouler comprend

RewriteRule ^home/ home.php [L] 

assez simple. Quand je me dirige vers home.php, tout se charge bien, mais quand je me dirige vers me.com/home/, le CSS ne charge pas. CSS tire de

lib/css/home.css 

qui ne sont pas dans le même dossier .. Pour clarifier, ma structure est:

/htdocs 
home.php 
/lib 
    /css 
     home.css 

Comment puis-je résoudre ce problème sans avoir à réécrire les références de mon css?

+1

Modifier pour afficher à quoi ressemblent vos références actuelles – random

Répondre

1

je ne sais pas si cela aidera à résoudre votre problème, mais je l'ai résolu en utilisant la base href balise html, SMTH comme

la base < href = "http://www.domain.com">

dans la section tête fait toutes les images, CSS et les chemins des fichiers js par rapport à www.domain.com

+1

Notez que la modification de l'URI de base affectera * chaque * URI relatif et pas uniquement les chemins d'URI relatifs. – Gumbo

1

Oui, c'est pourquoi j'ai une variable (disons $ sys_url), qui contient l'URL du site (http://www.me.com/). Quand je veux charger CSS, je tape

<link rel="stylesheet" type="text/css" href="<?php echo $sys_url; ?>lib/css/home.css" />

Peut-être que cela est méchant et mieux existe contourner le problème, mais cela fonctionne pour moi :)