.htaccess dans le répertoire 'primordial' parent htaccess

été la recherche de 2 jours et ne pouvez pas tout à fait obtenir la bonne solution en raison de mon manque de compréhension de mod_rewrite et des contraintes de temps sur ce projet, donc en espérant que quelqu'un peut aider.

Le but

À réécrire toutes les demandes à la racine index.php si le client n'a pas le bon cookie.
Si le client a le bon cookie leur permettre de naviguer comme ils le souhaitent.

Le problème

Le htaccess dans mon sous-répertoire est de prendre precendence sur mon htaccess de la racine, de sorte que les demandes de www.mydomain.com/subdir/index.php arn pas redirigé.

Ma racine .htaccess

Options FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_COOKIE} !^.*pass.*$ 
RewriteCond %{REQUEST_URI} !^/index.php$
RewriteRule ^(.*)$ http://www.mydomain.com/index.php?url=$0 [NC]

Mon subdir htaccess

RewriteEngine On
RewriteBase /
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [L]

Informations supplémentaires

Idéalement, je suis en train de créer un mot de passe de l'aire protégée, de sorte que toutes les demandes sont acheminées à index.php lorsqu'un mot de passe peut être saisi et une fois vérifiée, un cookie est créé, permettant ainsi la libre navigation de contenu et les sous-répertoires. Donc, si il ya une meilleure façon d'accomplir cela, alors s'il vous plaît laissez-moi savoir, et je havn't disparu .htpasswd car j'ai besoin de connexion personnalisée, d'erreur et de pages d'accueil.

Aussi, le sous répertoire .htaccess est un ExpressionEngine gestionnaire d'URL.

Grâce.

Peu importe comment vous résoudre ce problème, vérifier la présence d'un cookie n'est PAS bon de sécurité. Il est trivial pour un faux, et puisque vous n'êtes pas à valider les données dans le cookie, juste vérifier sa présence), votre "sécurité" du système est facile à contourner.
juste une suggestion, mais avez-vous pensé à la mise en œuvre de l'authentification HTTP, si votre seule recherche à permettre l'accès aux répertoires: uk.php.net/manual/en/features.http-auth.php

OriginalL'auteur Abe | 2011-09-07