我有一个通过Cloudfront具有S3来源和通过Route 53的自定义域名的静态网站。一切正常,但是Google也将Cloudfront分发URL(d123etc.cloudfront.net)以及我的自定义域名索引,导致重复内容问题。
我尝试了规范的URL,但是分发仍然被索引。建议根据使用的域名提供不同的robots.txt,听起来很好,但没有.htaccess或Web服务器,因此需要Lambda Edge函数尝试发送不同的robots.txt。
问题在于我找不到如何在函数中确定请求是来自我的自定义域还是直接分发URL。我尝试过白名单源,但是在使用S3源时不会发送它。我还尝试过白名单Referer标头,但是由于是直接请求,因此不会发送任何referrer,当访问robots.txt文件时。
目前,我在页面加载时使用js添加元素noindex客户端端(我意识到这太晚了),并且还在客户端端重定向到我的实际域,以防某人按照谷歌索引的cloudfront.net域名。
有没有人知道如何在Lambda Edge中检测使用哪个域名进行请求?或者其他阻止Google索引Cloudfront URL的方法,只留下它索引自定义域名。
我尝试了规范的URL,但是分发仍然被索引。建议根据使用的域名提供不同的robots.txt,听起来很好,但没有.htaccess或Web服务器,因此需要Lambda Edge函数尝试发送不同的robots.txt。
问题在于我找不到如何在函数中确定请求是来自我的自定义域还是直接分发URL。我尝试过白名单源,但是在使用S3源时不会发送它。我还尝试过白名单Referer标头,但是由于是直接请求,因此不会发送任何referrer,当访问robots.txt文件时。
目前,我在页面加载时使用js添加元素noindex客户端端(我意识到这太晚了),并且还在客户端端重定向到我的实际域,以防某人按照谷歌索引的cloudfront.net域名。
有没有人知道如何在Lambda Edge中检测使用哪个域名进行请求?或者其他阻止Google索引Cloudfront URL的方法,只留下它索引自定义域名。