ga('set', 'anonymizeIp', 1);
Categories: AWSTech Introduce

[AWS] ads.txt warning fixed in AWS with CloudFront and S3

Share

ads.txt 如果無法被Google crawler touch到會影響到網站的廣告收益。

本文講述如何使用AWS S3和CloudFront解決ads.txt無法被Google Adsense辨識到的問題。

問題

在AWS上的ads.txt無法被Google Adsense辨識到。

仔細找尋原因後發現,因為網址的根目錄網址(none www)沒有重新導向至www網址。意思是假設Route53上你的DNS是example.com,你上傳的ads.txt應該要在http://example.com/ads.txt找到,但卻只能在http://www.example.com/ads.txt找到。


解決方法

利用S3設置一個重新導向的空間個體,再使用CloudFront指向到該個體,而在Route53中的DNS A record要指向到CloudFront位址。

如此一來就能解決none www redirect to www address上。


詳細步驟

Step1:

到S3儲存貯體服務新增一個儲存貯體,名稱填入你的DNS Name(ex: example.com)以利辨識,再來設定屬性為“靜態網站託管”,並選擇“重新導向要求”目標填寫你的DNS Name with www(ex: www.example.com)。

這邊有個最重要的步驟,有很多人缺少這步驟導致導向不成功,

請複製“靜態網站託管”的終端節點(End Point)網址,待會會使用到。
(example.com.s3-website-us-west-1.amazonaws.com)

Step2:

請到CloudFront上建立一個新的Distribution,並且選擇剛才在S3建立的儲存貯體,並且在Alternate CNAME填入example.com。

這邊AWS會要求你為自己自訂的SSL憑證提供憑證資訊,我們點擊“在ACM請求或匯入憑證”,填入你要申請憑證的網域名稱(請新增兩個,none www & www),下一步選擇DNS驗證,執行到狀態為“正在進行申請”的畫面後,分別點開你申請的網域,點擊“在Route53中建立紀錄”按鈕,再來等待申請成功即可。

憑證申請成功後,回到CloudFront在自訂SSL選擇剛才申請的憑證資訊。

重要:請進到剛才新增的Distribution中的“源和源群組(Origin and Origin Groups)”,點選你的“源(Origins)”進行編輯,使用Step1複製的終端節點網址取代“源網域名稱(Origin Domain Name)”並儲存。

這邊筆者發現AWS並沒有做好正確的導向網址,必須在這邊手動修改才能正確導向。

Step3:

請到Route53新增一個A record到example.com並改為Alias,將剛才的CloudFront endpoint URL填入(ex: 1232456.cloudfront.net)。

請耐心等待生效後,即可測試none www url重新導向至www url。

也可輸入http://example.com/ads.txt 查看是否能抓到你的ads.txt檔案。

Jys

Recent Posts

[python] Flask Create RESTful API

This article gi... Read More

3 年 前發表

[Javascript] 新增/刪除JSON中key值

在web訊息交換常會需要對JS... Read More

3 年 前發表

[JAVA] SQL Server Connection

本文介紹JAVA連線SQL s... Read More

3 年 前發表