2009-10-16 9 views
0

Je souhaite écrire des règles de réécriture nginx pour les URL propres. Chaque fois que l'utilisateur atteint http://domain.com/abc/12/16/abc-def-ghi, je dois exécuter domain.com/abc.php?a=12&b=16&c=abc-def-ghi.Règles de réécriture Nginx pour les URL propres (problème avec le rendu CSS et JS)

Maintenant, mon regex est droite par Rubular:

^\/abc\/(\d+)\/(\d+)\/(\w+\S+)$ 

et règle est

if (!-e $request_filename) { 
rewrite ^\/abc\/(\d+)\/(\d+)\/(\w+\S+)$ /abc.php?a=$1&b=$2&c=$3 last; 
} 

Les règles fonctionnent bien et la page est rendu, mais je reçois un CSS brouillées. Ma barre de navigation supérieure apparaît sous la forme d'une barre à trois lignes sur le côté le plus à gauche. Donc je suppose que bien que PHP fonctionne bien, les fichiers CSS ont un problème.

Est-ce parce que je manque dans l'ajout de quelque chose ou la façon dont j'écris mon CSS? Avec l'URL d'origine (w/o) la règle le CSS est rendu correctement et je vois la barre de navigation comme il se doit.

Répondre

0

Cela pourrait être une question étrange, mais êtes-vous accès à ce fichier CSS via SSL avec gzip activé? ...

J'ai eu quelques problèmes quelques mois en arrière avec nginx garbling certains fichiers javascript (seulement vraiment BIG ceux-ci), mais seulement quand gzip était allumé et qu'il était envoyé par SSL ... Si je me souviens bien, je suis passé à une nouvelle version de nginx ou j'ai désactivé gzip pour les fichiers incriminés.

Questions connexes