几个月来,我们的IIS / ColdFusion服务器在Google搜寻器扫描期间一直抛出404错误。通常,查找这些内容很容易,但是在这种情况下,Google会尝试扫描我们的CFC文件。这些文件确实存在,但是它们不公开给Internet-仅公开给ColdFusion服务器。不过,Google在我们网站的某个地方看到了指向CFC的链接,并正在尝试跟踪它们。
以下是404之一期间CGI结构的转储。 baseCFC
是CF到D:\Domains\[domain]\cfc
的映射。我们的源代码中对baseCFC
的所有引用都在<cfajaxproxy>
标记中,或者在Application.CFC中的CreateObject()
调用中(以下示例)。
也许这是一个重要的线索:baseCFC
指的是D:\Domains\[domain]\cfc
,但是Google试图访问D:\Domains\[domain]\www\baseCFC
,这是我们网站的主目录。显然,Google将baseCFC
视为服务器上的常规(未映射)目录,并希望对其进行扫描。
以下是我们代码中两种类型的baseCFC
引用的示例:
:
<cfajaxproxy cfc="baseCFC.Misc" jsclassname="ajxMisc">
CreateObject():
<cfscript>
request.Misc = CreateObject( "component", "baseCFC.Misc" );
</cfscript>
我们如何解决与CFC相关的404错误?谢谢!
最佳答案
cfajaxproxy
创建的javascript包括cfc的位置。查看页面的源代码,您应该可以找到字符串'/baseCFC/Statement.cfc'
。 Google就是这样找到他们的。
让Google忽略它们的一种快速方法是修改您的robots.txt
文件,以排除baseCFC
“目录”。
User-Agent: *
Disallow: /baseCFC/