我正在使用helicontech的IsapiRewrite作为我的自定义经典ASP购物车。 我的实际httpd.ini文件是:
[ISAPI_Rewrite]
RewriteBase /
RewriteCond %HTTPS off
RewriteCond Host: (?!^www.domain.com)(.+)
RewriteRule /(.*) http\://www.domain.com/$2 [I,RP]
RewriteRule /httpd(?:\.ini|\.parse\.errors).* / [I,O]
RewriteRule /(.+)-([^-]*)-([^-]*)-([^-]*)\.html$ /detail.asp?brand=$1&model=$2&id=$3&lg=$4 [L]
所以我实际上只使用这个组件以一种很好的方式重写产品详细信息页面。 最近在谷歌缓存中找到一些文件夹,其中包含googleBot缓存的文件,这些文件在我的服务器上不存在,例如:domain.com/carrera-CHAMPION ...等等。 如果我访问这些奇怪的页面绘制的页面是detail.asp页面,但没有加载css和一些js。 我最近使用Acunetix扫描仪测试了该网站,看起来他也发现了这些奇怪的文件夹。 首先我添加了一个javascript检查,如果没有加载Jquery然后这意味着该页面是其中之一所以我抛出一个警报并将用户重定向到主页.. 你知道可能是什么吗?或者我如何通过httpd.ini中的规则解决这个问题?
希望我自己清楚,如果没有随意问我细节, 谢谢
答案 0 :(得分:0)
您是否可以确认当您禁用ISAPI_Rewrite时这些奇怪的页面/文件夹会消失? 请注意,ISAPI_Rewrite只会重写响应标头而不能生成任何内容,因此它不太可能成为问题的原因。
BTW,您的配置是ISAPI_Rewrite 2和3语法的混合。如果它是v2,请修改如下:
[ISAPI_Rewrite]
RewriteCond %HTTPS off
RewriteCond Host: (?!www.domain.com).+
RewriteRule /(.*) http\://www.domain.com/$1 [I,RP]
RewriteRule /httpd(?:\.ini|\.parse\.errors).* / [I,O]
RewriteRule /(.+)-([^-]*)-([^-]*)-([^-]*)\.html$ /detail.asp\?brand=$1&model=$2&id=$3&lg=$4 [L]