SunWuKung
SunWuKung

Reputation: 557

mod_rewrite to parent directory

I would like to create a .htaccess file that would do this logic:

If the requested file is not found try to find it in the directory above.

I don't want to redirect the browser I would just like to internally rewrite the request.

I tried and searched for this a lot but always got stuck because (as I gather from the log) the where I could do the rewrite the path was always already without its per directory prefix. In the example below the .htaccess file is in the lang folder. If the lang specific file is not found it should just take the file from the parent folder. I understand that it is possible to do it by hardcoding the parent directory or by placing the .htaccess higher, but now that I suffered for so long in trying I would be very interested to learn if it was possible at all this way.

strip per-dir prefix: X:/localhost/htdocs/peopletest/public/img/root_cli/lang/en/loginhead.gif -> en/loginhead.gif
applying pattern 'somePattern' to uri 'en/loginhead.gif'

Thanks for the help.

SWK

Upvotes: 1

Views: 397

Answers (1)

jørgensen
jørgensen

Reputation: 10549

Like this?

RewriteCond %{DOCUMENT_ROOT}/%{SCRIPT_FILENAME} !-f
RewriteCond %{DOCUMENT_ROOT}/%{SCRIPT_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/%{SCRIPT_FILENAME} !-l
RewriteRule /[^/+]/([^/]+)$ $1

Upvotes: 1

Related Questions