Url rewrite

Eléphant du PHP | 372 Messages

26 août 2016, 07:18

Salut à tous.
Voila je fait un peu d'url rewrite.
Tout marche bien juste une question cependant :

- j'ai donc ma page list.php

Et mon htaccess.
# -- actu+ région -------------------
RewriteRule ^actu/region-([A-Za-z0-9_-]+).html$ list.php?region=$1

# -- actu+ région + ville
RewriteRule ^actu/region-([A-Za-z0-9_-]+)/ville-([A-Za-z0-9_-]+).html$ list.php?region=$1&ville=$2

Le problème c'est sur la façon d'appeler mon css.
Si il n'y a que la region je fait just ../css/mon-fichier ca marche

Si il y a region + ville faut faire
../../css/mon-fichier

En gros je dois rajouter ../
Puis je faire en sorte que peut importe l'url toujours appeler mon css de la meme facon ou dois je controler ca avec des if
Bien le merci

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9783 Messages

26 août 2016, 10:29

Bonjour,

Dans ton HTML, fait un appel en relatif commençant par un slash, ce qui voudra dire par rapport à la racine du domaine.

Par exemple, si tu mets src="/repertoire/style.css", ça ira toujours chercher le fichier dans http://www.tondomaine.com/repertoire/style.css quelque soit l'adresse de ta page
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphant du PHP | 372 Messages

26 août 2016, 17:11

Bonjour,
Je ne comprends pas pourquoi ça ne marche pas.

J'ai donc fait comme ceci:
<link rel="stylesheet" type="text/css" href="/css/style.css" media="all">

et l'adress en en question est :
http://127.0.0.1/monsite/actu/region-rhone-alpes.html

Mammouth du PHP | 2703 Messages

26 août 2016, 17:15

enlève monsite dans ton environement de test, pour être comme en production. cela fonctionnera.

et si tu as plusieurs sites en local, tu joues avec ton fichier hosts.