Nginx, equivalent de RewriteRule et HTTP_REFERER

WRInaute occasionnel
Bonsoir,
Ayant installer nginx sur un sous domaine, je cherche l'équivalent de ces lignes
Code:
RewriteEngine On
RewriteRule ^.*\.mp3$ /foo [F]
RewriteRule ^.*\.MP3$ /foo [F]
RewriteRule ^.*\.Mp3$ /foo [F]
RewriteRule ^.*\.mP3$ /foo [F]

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?site\.com(/)?.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://(player\.)?site\.com(/)?.*$ [NC]
RewriteRule ^.*$ http://www.site.com [R,L,NC]

RewriteRule ^streaming:(.*)$ page.php?album=$1 [L]

Merci d'avance
 
WRInaute passionné
Erf, tu vas avoir du mal (traduire des rewrites sous NGinx est un peu galère)

Si tu cherches des bons tutos/exemples sur ce blog : -http://www.cyberciti.biz/ (y compris des bons tutos pour sécu le tout).

au hasard pour les ".mp3" :
Code:
rewrite ^/.*\.(mp3|MP3|Mp3|mP3)$ http://www.ton_url.tld last

à vérifier pour les regexp, je ne sais pas s'ils sont CI ou non.
 
WRInaute passionné
h4ni a dit:
Merci Julia41
Seulement, ca n'a pas marcher!
personne d'autre ne peut m'aider?

Bon, il n'y a pas de TAG "propagande" sous PHPBB :p
Je te dirais bien de tester Lighttpd ;)
Je te fais tes rewrites en quelques secondes !

Code:
$HTTP["url"] ~= "^/(mp3|Mp3|mP3)" {
     url.access-deny = ( "" )
     #J'ai mis un Deny mais un url.redirect marcherait simplement
}

Bon, en tout cas, d'après ce que j'ai vu sur le net, si tu as des rewrites et que c'est hyper important, NGinx est difficile d'accès.
D'après toutes les installations que j'ai pu en faire, il faut vraiment un paquet de test pour pouvoir les balancer ;)

Sinon, au niveau de mon rewrite, il "devrait" être bon, après j'ai peut-être fait une faute de syntaxe, n'hésites pas à changer mes :
^/.*\.(m
par des ^/(.*)(mp3...

C'était une supposition à la "con" qui se test et qui (si on croit en dieu) pourrait marcher directement :p
 
Discussions similaires
Haut