作为使AJAX网站可爬网的一部分,我希望将包含“ _escaped_fragment_”的URL重定向到Tomcat。
我目前使Apache服务于根资源“ /”,但是如果请求了资源“ /?_ escaped_fragment_ =“,那么它应该将请求重定向到Tomcat,以便搜寻器Servlet可以为它服务。
在我看来,您无法在mod_jk.conf中做到这一点
最佳答案
您可以使用Apache重写规则将URL转换为使用mod_jk更易于转发到Tomcat的格式:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^(_escaped_fragment_=.*)
RewriteRule ^/$ /crawler/?%1 [L,R=permanent]
上面的规则仅在查询字符串以
_escaped_fragment_=
开头并且将转换此URL时适用:http://host/?_escaped_fragment_=home
进入这个:
http://host/crawler/?_escaped_fragment_=home
然后,您可以使用通常的JkMount指令将
/crawler
转发到Tomcat,例如:JkMount /crawler* ajp13_worker