我有一些国防部重写规则,testing在各种NFS安装文件的存在,我希望testing随机发生,作为一个非常基本的方式来分配负载。
例如:
重写引擎
RewriteCond%{REQUEST_URI} ^ /(。+)$
RewriteCond / mnt / mount1 /%1 -f
RewriteRule ^ /(。+)$ / mnt / mount1 / $ 1 [L]
RewriteCond%{REQUEST_URI} ^ /(。+)$
RewriteCond / mnt / mount2 /%1 -f
RewriteRule ^ /(。+)$ / mount2 / $ 1 [L]
RewriteCond%{REQUEST_URI} ^ /(。+)$
RewriteCond / mnt / mount3 /%1 -f
RewriteRule ^ /(。+)$ / mnt / mount3 / $ 1 [L]
RewriteCond%{REQUEST_URI} ^ /(。+)$
RewriteCond / mnt / mount4 /%1 -f
RewriteRule ^ /(。+)$ / mnt / mount4 / $ 1 [L]
据我所知mod_rewrite Apache将寻找文件/ mnt / mount1,然后mount2,mount3等。
我可以在每个请求上随机化这个吗? 我知道这是一个奇怪的要求,但我需要一个创造性的解决scheme,以避免意外的停机。
在附注中,我是否需要每次重新声明RewriteCond %{REQUEST_URI} ^/(.+)$ ?
谢谢
作为一个build议,你可以创build一个cron作业,用改写条件以不同的顺序改写其他configuration文件。 您可以每分钟运行一次cron作业,并使用不同的configuration文件来replace它。
我想我在mod_rewrite中find了一个可以实现这个function的特性:RewriteMap prg
http://httpd.apache.org/docs/current/rewrite/rewritemap.html