gpt4 book ai didi

ColdFusion 在 robots.txt 中搜索特定页面异常

转载 作者:行者123 更新时间:2023-12-03 11:17:00 25 4
gpt4 key购买 nike

我们正在向我们的 CMS 添加一些功能,当用户创建页面时,他们可以选择一个选项来允许/禁止对该页面进行搜索引擎索引。

如果他们选择"is",则将应用类似以下内容:

<cfif request.variables.indexable eq 0>
<cffile
action = "append"
file = "C:\websites\robots.txt"
output = "Disallow: /blocked-page.cfm"
addNewLine = "yes">
<cfelse>
<!-- check if page already disallowed in robots.txt and remove line if it does --->
</cfif>

这是<cfelse>我需要帮助的子句。解析 robots.txt 以查看此页面是否已被禁止的最佳方法是什么?它会是 cffile action="read",然后对读取的变量执行 find() 吗?

实际上,检查页面是否已被禁止可能会更进一步,以避免重复添加。

最佳答案

您将页面列表保存在数据库中,并且每个页面记录都有一个 indexable 位,对吧?如果是,则更简单、更可靠的方法是每次添加/删除/更改可索引位时生成新的 robots.txt。

<!--- TODO: query for indexable pages ---->

<!--- lock the code to prevent concurrent changes --->

<cflock name="robots.txt" type="exclusive" timeout="30">

<!--- flush the file, or simply start with writing something --->

<cffile
action = "write"
file = "C:\websites\robots.txt"
output = "Sitemap: http://www.mywebsite.tld/sitemap.xml"
addNewLine = "yes">

<!--- append indexable entry to the file --->

<cfloop query="getPages">

<!--- we assume that page names are not entered by user (= safe names) --->

<cffile
action = "append"
file = "C:\websites\robots.txt"
output = "Disallow: /#getPages.name#.cfm"
addNewLine = "yes">

</cfloop>

</cflock>

示例代码未经测试,请注意拼写错误/错误。

关于ColdFusion 在 robots.txt 中搜索特定页面异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12255596/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com