php - splitting directory/folder into small directories with htaccess mod_rewrite -
i'm terrible mod_rewrite, , not sure if best method.
i have /image directory 20,000 or images in it. webhost says deactivate business relationship unless each directory under 2500 files.
so want alter /images/apple.jpg redirects /images/a/apple.jpg, , /images/banana.jpg redirects /images/b/banana.jpg whenever php file calls /images/apple.jpg redirect. conversely, new images created need set in right directory.
i'd code php this, image directory referenced in 736 files.
if has improve ideas - i'm open ideas.
redirecting in .htaccess new directories doesn't seem best thought need @ to the lowest degree 8 different directories (and 8 different rewrite rules) @ moment split 20000 files directories 2500 files maximum. so, tomorrow 9 directories needed, not mentioning might become hard rewrite rules select files go each directory .
i guess best alternative handle routing in php script, arrays or whatever needed.
you redirect goes /images directory php script in root, example, in turn redirects appropriate directory according parameters passed script
like this:
options +followsymlinks rewriteengine on rewritebase / rewritecond %{request_uri} !handler.php rewritecond %{request_uri} ^/images/([^\.]+)\.([\w]+)/? [nc] rewriterule .* handler.php?name=%1&ext=%2 [l] maps silently:
http://example.com/images/filename.ext or without trailing slash.
to:
http://example.com/handler.php?name=filename&type=ext
to pass 1 parameter script, instead or name , extension, replace rewrite rule one:
rewriterule .* handler.php?%1.%2 [l] this example. script handler can have name , keys name , type, if used.
the incoming url construction has kept rule-set work: lastly string within url must file.
for permanent , visible redirection, replace [l] [r=301,l].
php .htaccess mod-rewrite
No comments:
Post a Comment