искал 2 дня и не может найти правильное решение из-за моего непонимания mod_rewrite и временных ограничений в этом проекте, поэтому надеюсь, что кто-то может помочь.
Цель
Переписать все запросы в корневой index.php, если у клиента нет правильного cookie.
Если у клиента есть правильный файл cookie, разрешите ему просматривать файлы по своему усмотрению.
Проблема
htaccess в моем подкаталоге имеет преимущество перед моим корневым htaccess, поэтому такие запросы, как www.mydomain.com/subdir/index.php, не перенаправляются.
Мой корень .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]
Мой подкаталог htaccess
RewriteEngine On
RewriteBase /
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [L]
Дополнительная информация
В идеале я пытаюсь создать защищенную паролем область, поэтому все запросы направляются в index.php, где можно ввести пароль и при проверке создать файл cookie, что позволяет бесплатно просматривать содержимое и подкаталоги. Так что, если есть лучший способ сделать это, пожалуйста, дайте мне знать, и я не пошел на .htpasswd, так как мне нужны пользовательские страницы входа в систему, ошибки и заставки.
Кроме того, подкаталог .htaccess является обработчиком URL-адресов ExpressionEngine.
Спасибо.