0

私の MVC3 アプリケーションでは、コントローラー基本クラスのOnActionExecuting()メソッドに以下を追加しました。

            int pageNumber = 0;
            // deny crawl for bots on pages 
            if (filterContext.ActionParameters.ContainsKey("pageNumber"))
            {
                pageNumber = Convert.ToInt16(filterContext.ActionParameters["pageNumber"]);


                if ((Request.UserAgent.Contains("msnbot") |
                    Request.UserAgent.Contains("googlebot")) && pageNumber > 2)
                {
                    Response.StatusCode = 410;
                    Response.Status = "410 Gone";

                    filterContext.Result = new RedirectResult(Url.Action("NoCrawlerMessage", "Home"));
                }
            }

デバッグ中に、ブラウザのユーザー エージェントを変更して「googlebot」または「msnbot」を含めると、ページが正常にリダイレクトされます。

ただし、これを本番環境に置いて再試行すると、まったく変更がありません。要求されたページが読み込まれますが、そうではありません。

ここで何が問題なのですか?

4

0 に答える 0