我正在关闭一个网站,并且想在任何人尝试访问网站上的任何页面(除了几个页面)时显示一条消息。有些页面具有某些 pageid 参数。因此基本上所有内容都应重定向到,但以下页面/retired
除外:
/testcode.jsp
/search/*
/codes/*
/resources/blogs/*
/status/*
/wiki/article?pageid=178973-ghgh-98089
/wiki/article?pageid=354973-aaaa-80879
/wiki/article?pageid=334224-sada-20293
/wiki/article?pageid=546665-qasq-34491
答案1
看起来您想利用 Apache 的 RewriteCond 指令根据模式匹配有条件地重定向请求,如下所示:
RewriteCond "%{REQUEST_URI}" "! /testcode.jsp" [OR]
RewriteCond "%{REQUEST_URI}" "! /search/*" [OR]
{ditto for your other requirements...}
RewriteRule .* /retired [R,L]
它应该明确允许正则表达式模式中的任何内容通过,同时重定向其他所有内容。另请参阅,https://httpd.apache.org/docs/2.4/mod/mod_rewrite.html#rewritecond更多细节。