作为尝试使 AJAX 站点可抓取的一部分,我希望将包含“_escaped_fragment_”的 URL 重定向到 Tomcat。
我目前让 Apache 为根资源“/”提供服务,但如果请求资源“/?_escaped_fragment_=”,那么它应该将请求重定向到 Tomcat,以便爬虫 servlet 可以为它提供服务。
在我看来,你不能在 mod_jk.conf 中做到这一点
作为尝试使 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