Джон: я не понимаю вашего решения.
Вот мое: сначала проверьте, есть ли попытка получить доступ к тому, что вам не нужно (например, /php/index.php
), и если да, перенаправьте на ошибку иостановить всеЗатем после (только после ) вы уверены, что это не /php/index.php
, поэтому примените перенаправление:
RewriteRule /php/index\.php /php/error.php [L]
RewriteRule / /php/index.php [QSA,L]
Имейте в виду, что [L]
директива немедленно остановит RewriteRules, поэтому удалите оставшуюся последнюю, если вы хотите добавить другие RewriteRules.
Конечно, если вы хотите перенаправить ALL входящих запросов на php/index.php
и передатьURL в качестве аргумента здесь является решением, которое должно работать (я говорю "должен", потому что я не проверял):
RewriteRule /php/index\.php /php/error.php [L]
RewriteRule (.*) /php/index.php?url=$1 [QSA,L]
Оливье