twitterプロフィールのpixivリンクはなぜエラーページに飛んでしまうのか

Twitterライフをエンジョイしてると、時折「おっ、良い絵……!」って画像が流れてくるじゃないですか。

その絵描きさんのプロフィール欄にpixivへのリンクを見つけて、「さらなる良い絵を求めて探検だ!」と喜び勇んでクリックするじゃないですか。

 

なのにエラーページに繋がってうぉぉおおおおああああああ!!!!!!!

どおじでえらぁぺぇじでるのぉおおおおおおおお!!!!

わだぢ絵描ぎざんのぐっどぴくちゃみたいのにいいいぃいぃぃ!!!!!

 

といった機会が、それぞれ別の絵描きさんで複数回ありました。

リンクミスはまれによくあることです。

が、さすがにそんな頻繁に、それも複数人で同じように起きるものではないはず。

 

では、なぜこのリンクミスは起きるのだろう?

気になったので、それを調べてみました。

スポンサーリンク

状況

同じ「正常なリンクになっていない」場合でも、幾つかのパターンがあります。

  • pixivトップページに飛ぶ
  • pixivエラーページに飛ぶ
  • なんかよくわからないページに飛ぶ

このうち「トップページに飛ぶ」ものと「よくわからないページに飛ぶ」ものは、今回の記事とはたぶん関係ありません。

プロフィールページのurl取得ミスだったり、urlのコピペミスだったりと、十中八九ヒューマンエラー。

 

しかし、二つ目の「pixivエラーページに飛ぶ」ものには、違う理由が隠されているようなのです。

pixivリンクが貼られたtwitterプロフィール画面のスクショ

 

見たことありませんか?

こういったようにtwitterプロフィールのbio部分に貼られていて、クリックすると……。

 

pixivエラーページのスクショ

といったページに飛んでしまうリンク。

 

これに関しては、twitterの仕様が悪さしているようなんです。

具体的に言うと、「bio欄にurl貼ってプロフィール更新した後、再度bio欄に変更を加えるとurlが切り詰められる」仕様があるようでして……。

切り詰められ方の実験

どういう切り詰められ方になるのか、幾つかのリンクで試してみました。

雑な実験で申し訳ないのですが、実験手順は以下の通り。

  1. twitter bio欄にurlを貼ってプロフィール更新
  2. bio欄url以外の部分を変更して更新
  3. twitter bio欄に貼ったurlがどうなっているか確認
  4. 切り詰め結果とpathname(ドメイン名以後の部分)の文字数を数える

実験に用いたurl一覧

  • pixivプロフィールページ: https://www.pixiv.net/member.php?id=2187843
  • 小説家になろうAPIページ: https://api.syosetu.com/novelapi/api/?out=json&ncode=n7682fj
  • 長いurl記事ページ: https://dettalant.com/post/jandent_v3_update_note/
  • 短いurl記事ページ: https://dettalant.com/about/
  • 適当な短いurl: https://example.com/test/ook/ppp/
  • 適当な長いurl: http://example.com/test/ook/ppp/popop/pepe/pupu
  • 適当なurlクエリ付きの短いurl: http://example.com/?ok=true
  • 長大なサブドメインurl: https://test.ttt.test.example.com/test/vvv/ppp/sss/ooo
用いたリンク 切り詰め結果 結果文字数 pathname文字数
pixivプロフィールページ pixiv.net/member.php?id= 25 16
小説家になろうAPIページ api.syosetu.com/novelapi/api/? 31 16
長いurl記事ページ dettalant.com/post/jandent_v 29 16
短いurl記事ページ dettalant.com/about/ 21 8
適当な短いurl example.com/test/ook/ppp/ 26 15
適当な長いurl example.com/test/ook/ppp/p 27 16
適当なurlクエリ付きの短いurl example.com/?ok=true 21 10
長大なサブドメインurl test.ttt.test.example.com/test/vvv/ppp/s 41 16

謎の鍵は文字数制限

上での実験結果からわかることはこのあたりでしょうか。

  • URL scheme(https://といった部分)は無条件で切り詰められる
  • pathname部分が最大16文字になるよう切り詰められる
  • urlクエリの有無は関係なし

つまり、ドメイン名に続く/から始まるpathname部分が一定の長さで切り詰められる仕様が隠れていたわけですね。

ちなみにURL scheme部分も切り詰められるので、https形式のurlを貼っていてもbio欄を更新するとhttp形式のurlに差し替わってしまう仕様もあります。

結論

Twitterプロフィールのpixivリンクがエラーページに繋がってしまうのは、「bioを更新したらpathname部分が切り詰められてしまう」仕様があるから。

これはbio欄特有の仕様で、少なくともWebsite欄では存在しないようです。

 

なので長いurlを掲載する際は、できる限りWebsite欄を用いるようにしましょう!

これで万事解決! ……と、言いたいところですが。

 

「幾つものサイトで活動しているので、複数urlを貼りたい人」もいるでしょう。

そういう場合は、以下のような対策を行うといいんじゃないでしょうか。

  • (pathname文字数が16文字以下になる)短縮urlサービスを用いる
  • ツイフィールなどの別サイトurlをWebsite欄に乗せて、そちらにurlをまとめて記述する
  • もしくは、固定ツイートにurlを記述する
  • どうしてもbio欄にそのまま貼りたい場合は、bioに追記するたびurlをコピペし直す

どの対策も利点欠点があるので、お好きなものを選んで使ってください。

それでは、URLリンク切れを気にしつつも、楽しいTwitterライフを送ってね。

記事終わり!