携帯用ページでリンクナビにDitto等を使うと、DoCoMo系で「301」ワーニング | MODxでハマるありがちな罠と解決法

携帯用ページでリンクナビにDitto等を使うと、DoCoMo系で「301」ワーニング

この問題は、Dittoのみならず、フレンドリーURLを使っていると起こりがちな問題です。
SEO Strict URLs を使うとほぼ解消します。

当方の設定はフレンドリーURL+SEO Strict URLsですが、わざと、SEO Strict URLsを外して発生状況を調べてみました。

こちらで把握している理由は以下の二つ。

・フォルダ属性(1.02以降だとコンテナ)設定されている場合で、生成されたリンク先URLの末尾にスラッシュがない。
・フォルダ属性(1.02以降だとコンテナ)設定されていない場合で、生成されたリンク先URLの末尾にスラッシュがある。

この条件だとリダイレクトで、スラッシュを付けたURLに301リダイレクトをしたり、スラッシュを削ったURLに301リダイレクトします。
他にも条件はあるかもしれませんので、気がついたら追記しますが、対処方法はというと、Ditto制御、もしくは、PHxを入れていればそれほど難しくありません。
条件が増えた場合もPHxのif制御でなんとでもなります。

上記の条件であれば、こんな感じのPHx制御をリンクの箇所にいれます。

<a href="[~[+id+]~][+isfolder:is=`0`:then=``:else=`/`+]">[[pagetitle]]</a>
「コンテナ設定されてたら、末尾にスラッシュを付けろ」ということです。これにより、諸々の機能で「301 リダイレクト」を起こさせないようにします。

SEO Strict URLsを使うと設定で、フォルダ設定されている場合にページに出力するURLのリライトの設定もありますので、これも絡むと思います。
当方の場合はこんな設定です。デフォルトですが。

&editDocLinks=Edit document links;int;1 &makeFolders=Rewrite containers as folders;int;1 &emptyFolders=Check for empty container when rewriting;int;1 &override=Enable manual overrides;int;0 &overrideTV=Override TV name;string;seoOverride

参考サイト:http://honoo-no.com/creators/2007/11/15_203252.html


作成日
2010.01.03 (日)
最終更新日
2010.02.09 (火)
作成者
Takayuki Hirosawa
  • speed_fish 引っ越ししてからつなげていなかったとても古いnetgearのnas。今日つなげようとしたらlan経由で全くつながらず。windows10が勝手にsmb1を切り捨ててたと判明するまでに3時間。httpでもpingでもつながるのにos… https://t.co/Ejd7om16t0 2018-04-24 11:41:09
  • speed_fish modxからevoが切り離しかー。まあrevoとはもう別物感溢れてたし良いんじゃないでしょうか。やりやすくなるといいなー。 2017-04-28 20:33:09
  • speed_fish Chromeの57から頻発している、ERR_BLOCKED_BY_XSS_AUDITOR。試してみたけど、hidden含め入力項目にJavaScriptが入っても発生。HTTPS化していないフォームはまあ当然発生かな。 2017-04-10 18:00:57
  • speed_fish modxサイトをcloudflare化でeFormで引っかかる。中身みたらsite_urlでリファラーチェックしてました。ssl flexibleを使おうとしてたので、eFormを改造。パラメータにsiteurlを追加しましたとさ。#modx #cloudflare #eform 2017-03-04 00:44:09
  • speed_fish メモメモ。MODxでAMP対応するスニペット。 GETのURLが気に食わないのでリライトかな。 https://t.co/Oa9qzQ5dOr 2017-02-03 01:10:54