旧HAIK forum (参照のみ)

« back RSS

[461]301リダイレクトとcanonicalなど 2016/11/23(Wed) 2:33:50
name : Yujiro
つぶやきです。

たまには技術的なお話も。
私の頭の中の整理を兼ねます。ちょっと長いです。

HAIK以外で作っていた既存サイトをHAIKで作り直すとき、ことによっては301リダイレクトを使いたいときがあります。

このとき、ファイル.htaccess にリダイレクトを記述するときのポイント。

リダイレクト先のURLに日本語が含まれるとき、.htaccess には日本語部分をエンコードしたものを記述する必要があります。(Punycode表記への変換)

例えば・・以下のアドレスがリダイレクト先ならば・・

http://sample-123.com/index.php?お問い合わせ

これを以下のような表記に変換する必要があります。

http://sample-123.com/index.php?%E3%81%8A%E5%95%8F%E3%81%84%E5%90%88%E3%82%8F%E3%81%9B

この変換を行ってくれるページは幾つかあります。

さて、必要な変換を行った後、これを.htaccess に対して「UTF-8」で保存する必要があります。

そこで、私はxserverのファイルマネージャー(WebFTP )を使って.htaccess を書き換えていますが(これが簡単だから)、ここで気をつけるべきは、その専用エディタの文字コード選択のデフォが何せ「Shift-JIS」なんです。
(さくらサーバーのデフォままた違う)

ここはくれぐれも「UTF-8」を選んでから保存しましょう。
さもないと、リダイレクト先のページが存在しないことになります。

面白いことに、リダイレクト先のHAIKページがログイン状態だと、突然に「新規ページの作成」状態で現れます。

【短縮URLは使えるか?】

次に、このPunycode表記への変換作業がちょと煩わしく感じ、HAIKに備わっているURL短縮機能を使ってみたこともあります。

これは編集メニュー内「このページの>共有」で得られる短縮URLというもの。これだとURLに含まれていた日本語表記の部分は、アルファベットの短い表記になります。

この短縮URLを.htaccessにて301リダイレクト先に使え、実際に機能はします。まあ、そりゃ当然でしょうが。

ここで懸念されるのは、もしも短縮URLを作ると、ネット上に同じページが異なるアドレスで二つ存在することになります。これはSEO上で避けたいところ。

この対策のためか、HAIKの基本仕様として「そのページ自身にcanonical指定している」ことがあるようです。自分自身にcanonicalするって変だと思いましたが、明らかにそのページの元URLをPunycode表記したものがcanonicalに入っています。

ですから、短縮URLで飛んできたアクセスを、「元ページはこちらです」と言ってPunycode表記したURLに向かってcanonicalしているということになります。が、しかしそれは本当は自分自身という不思議な感じ・・・

その上、本件ではそもそもが301リダイレクトで飛ばされた先が短縮URLで、そこに更にcanonicalがあってそれが自分自身、ってどうだろう??とふと思えます。

がしかし、301リダイレクトされたんだ、ということをGoogleが読んでいるのか、そこも私にはわからず・・・

「index.php?日本語」 が使えるがためのややこしい話でした。

最終的には、今の所は短縮URLに向かってリダイレクトせず、素直にPunycode表記したURLに飛ばしています。なんか気持ち悪いから。

で、現実問題としてはHAIKページのURLには最初から日本語を入れないのも方法。しかしそれだと自動リンクの機能があまり有効でなくなることもありで、少し悩ましいところあり。

【cananicalに関する懸念ひとつ】

実は、前のQHMマニュアルやHAIK簡易マニュアルにもありませんが、プラグインとしcanonical指定が使えます。こうです↓

#canonical(ここに元ページURL)

こう書くと、デフォでは自分自身のPunycode表記していたURLの代わりに、ユーザーが指定したURLがcanonicalに記述されます。これやってみると分かりますが、かなり親切設計です。

ん? しかし、これってどうなん?

もしも自分にcanonicalしている意味が前述の短縮URL対策だとすると、独自に「#canonical」を書いてしまうとその元の対策効果がなくなりゃしないかと・・・どうでしょう。だってそのページのリンク元が短縮URLでリンクしてきていたら・・・・自分のPunycode表記のURLにcanonicalしないで他を参照してしまう。これだとまんまと同じページに二つのURLが存在することになるまいか。私が間違っているのか、考えすぎなのか・・・

そういえば、元はと言えばNOINDEX:指定しているページにまで自分にcanonicalしていたこともあったらしく・・・今は対策済みですが。とにかく、ここいらの仕様は苦しいかも。
  status : 解決済!
pass :


list

subject name date no flag
★ 301リダイレクトとcanonicalなど Yujiro 2016/11/23(Wed) 2:33:50 461 解決済!
  → Re:301リダイレクトとcanonicalなど いしまる 2016/11/23(Wed) 10:39:15 462  
    → Re:Re:301リダイレクトとcanonicalなど Yujiro 2016/11/23(Wed) 11:23:37 463  


res form

name
mail (表示されません)
home
設置先
subject
message
  ファイルアップロードは1 MBまで可能です。
file 1 file 1 へ添付可能なファイルは、 .txt.zip.lzh です。
file 2 file 2 へ添付可能なファイルは、 .jpg.gif.png です。
password
Solved! 解決した場合はチェックを入れてください。

+ P forum 1.33 +
このHAIK forumは、QHMユーザフォーラムが閉鎖されため、その代わりにtomzoが個人的に作成しているものです。
どうぞご自由にお使いください。当フォーラムはシステム不調により、新規書き込みは禁止とします。新HAIK forumをお使いください。 2016.9.22作成
一歩先を行くhaikユーザのためのTips