2010-11-16 30 views
0

J'ai vu un certain nombre de messages similaires, mais n'a pas été en mesure d'atteindre mon sens réel désiré.htaccess bloquer tout mais 1 fichier et 1 dossier

Voilà donc ce que j'ai. J'ai besoin d'avoir toutes mes URL passées au fichier INDEX.PHP. Ce qui est bien et je l'ai jusqu'ici, mais je dois ajouter une exception d'un dossier spécifique le dossier 'images' afin que les images apparaissent, b/c puisque je transmets tout à l'index, il ne saisit pas tout le droit images parce qu'il les bloque.

actuellement j'ai quelque chose comme ça

Options +FollowSymlinks 
RewriteEngine on 
RewriteCond %{REQUEST_URI} !images/$ 
RewriteCond %{REQUEST_URI} !index.php$ 
RewriteRule ^(.*)$ "http://www.exmample.com" [R=301,L] 

actuellement mes images ne se charge pas à moins que je fais un appel spécifique à l'image par exemple:

RewriteCond %{REQUEST_URI} !images/single/picture.jpg$ 

Toute pensée ou suggestions seraient appréciés . Salut

Répondre

1

Oui, le "! Images/$" signifie que vous réécrivez tout sauf pour la demande spécifique à l'URI "http://www.example.com/images/". Utilisez une expression régulière dans votre RewriteCond:

RewriteCond %{REQUEST_URI} !images/(.*)$ 

Cela signifie qu'aucun URI commençant par « images/» seront réécrits. Je suppose qu'il serait plus sûr de faire quelque chose comme "! Images /(.*). Jpg $" afin que les URI commençant par "\ images" et se terminant par ".jpg" soient réécrites. Affinez-le si nécessaire, c'est-à-dire en spécifiant plusieurs extensions ((.jpe? G) | (.gif)).

Je ne suis pas un mod_rewrite, et je ne suis pas très bon en regex, mais cette approche a fonctionné pour moi.

+0

Travaillé parfaitement, je sais très peu de choses sur le htaccess, mais il est si puissant, je suggère de faire plus de lecture, haha. merci pour votre aide, a été très apprécié! – Justin