各位开发人员大家好!
我们几乎已经完成了ajax Web应用程序第一阶段的开发。在我们的应用程序中,我们使用哈希散列,例如:
http://ourdomain.com/#!list=last_ads&order=date
我了解google会获取此URL并以这种形式向服务器发出请求:
http://ourdomain.com/?_escaped_fragment_=list=last_ads?order=date&direction=desc
一切都很完美,除了…
我想将这种请求路由到另一个脚本
像这样:
RewriteCond %{QUERY_STRING} ^_escaped_fragment_=(.*)$ RewriteRule ^$ /webroot/crawler.php$1 [L]
问题是,当我尝试在crawler.php中使用print_r($ _ REQUEST)时,只会得到:
Array ( [_escaped_fragment_] => list=last_ads?order=date [direction] => desc )
我想要得到的是
Array ( [list] => last_ads [order] => date [directions] => des )
我知道我可以使用php进一步打破第一个论点,但我不想;)
请指教
================================================== ==编辑…在文本和逻辑上的一些更正
您忘记的QSA指令(每个人都错过了= D)
RewriteCond %{QUERY_STRING} ^_escaped_fragment_=(.*)$ RewriteRule ^$ /webroot/crawler.php%1 [QSA,L]
顺便说一句,你$1错了…没用,因为它什么也没说。所以这应该是:
$1
RewriteCond %{QUERY_STRING} ^_escaped_fragment_=(.*)$ RewriteRule ^$ /webroot/crawler.php [QSA,L]
告诉我这是否有效。