こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

URLをコピーしたらやたらに長くなってしまう

こんにちは。
質問をさせてください。
例えば、サンローランのサイトのURLをコピーすると、異常に長くなってしまいます。

http://www.ysl.com/jp/shop-product/%E3%83%A1%E3%83%B3%E3%82%BA/%E3%82%B7%E3%83%A5%E3%83%BC%E3%82%BA-SL10H-SL10H-COURT-CLASSIC%E3%83%8F%E3%82%A4%E3%83%88%E3%83%83%E3%83%97%E3%82%B9%E3%83%8B%E3%83%BC%E3%82%AB%E3%83%BC%EF%BC%88%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%EF%BC%8F%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AC%E3%82%B6%E3%83%BC%EF%BC%89_cod11017894uo.html#section=men_shoes

でも、このサイトに行ってURLを見ると、かなり短いものとなっています。
どうしたら、視覚と同じURLをコピーして友人に送ることができるのでしょうか?

投稿日時 - 2016-09-28 12:58:36

QNo.9235354

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(9)

ANo.9

見た目と同じにすると、
クリックで飛べるURLとしては、動作しないことがあります。

見た目のまま
http://www.ysl.com/jp/shop-product/メンズ/シューズ-SL10H-SL10H-COURT-CLASSICハイトップスニーカー(ブラック/フレームレザー)_cod11017894uo.html#section=men_shoes

これですと
http://www.ysl.com/jp/shop-product/
ここまでしかURLと判断されないことが多いです。

おすすめは、見た目にはこだわらず長いままおくるか、
こちらのような
https://goo.gl
URLの短縮サービスをご利用ください。

投稿日時 - 2016-09-28 15:21:57

ANo.8

>どうしたら、視覚と同じURLをコピーして友人に送ることができるのでしょうか?

長く見えますが、同じURLですので、それを送れば良いです。

どうして長くなるかと言うと、URLに日本語文字が含まれているため、
「漢字(日本語文字)1文字はUTFで3バイト」&「1バイトずつ、3文字(%+16進数2ケタ)で表示」というルールで変換されているからです。
例えば最初の日本語部分に、「メンズ」とありますが、そこの部分だけでも、「%E3%83%A1%E3%83%B3%E3%82%BA」と、展開されてしまいます。(日本語3文字→半角27文字)

漢字というのは、エンコード方法により、文字コードが違ってきてしまいます。(Shift-JIS・EUC・UTF等)
ですので、漢字を含むURLのまま送ると、受け取った側で漢字コードが違ってしまう場合があり、Webページにアクセスできなくなるという不具合が出ることがあります。
ですから、あらかじめ文字コードそのもののURLに展開することで、安全にアクセスできるURLとなり、長くなるのも仕方ないことなのです。

----

ですがこのサイトに関しては、ちょっとした裏技を発見しました。
『URLのうち、商品名の部分は、省略できる。』

ご質問にあるURLの構造は、
http://www.ysl.com/jp/shop-product/(カテゴリ名)/(商品名)_(商品コード).html#section=men_shoes
のようになっていますね。
この、(商品名)の部分を省略しても、商品コードの部分さえあれば同じものが表示できるようです。(商品コード直前のアンダーバーは必要なので注意)
また、#以降はURLにとってはオプション情報ですので、これも省略できます。

そうなると、ご質問のURLは
http://www.ysl.com/jp/shop-product/%E3%83%A1%E3%83%B3%E3%82%BA/_cod11017894uo.html
このように短くできました。

コピペ済みのURLの中から、日本語に挟まれているスラッシュを見つけるのがちょっと大変なので、あらかじめアドレスバーで
http://www.ysl.com/jp/shop-product/メンズ/_cod11017894uo.html
というように編集して(そこでEnterを押さないように)、Ctrl+A(全選択)→Ctrl+C(コピー) と操作すれば、比較的楽に編集コピーできるでしょう。

実際にアクセスすると、商品名が補完され、元のURLと同じになります。

投稿日時 - 2016-09-28 14:39:05

お礼

目からウロコです!商品コードを残して商品名(日本語)は削除する。
ありがとうございました。

投稿日時 - 2017-03-19 20:04:50

ANo.7

>どうしたら、視覚と同じURLをコピーして友人に送ることができるのでしょうか?

「見た目と同じURL」をコピペして友人に送っても、友人は「そのURLでページを開けないかもしれない」ので、そういう事をしてはいけません。

インターネットで使われている「URL」と言うのは、本来は「半角英数記号のみで表現すること」と決まっています。

なぜなら「漢字や全角文字」というのは「パソコンによって、文字を表すコードが異なる可能性がある」から、漢字や全角を使うと「Windows PCでは開けるけど、Linux PCや、Macで開けない」という問題が発生します。

そこで「URLに漢字や全角文字を使えるようにしよう」と拡張仕様を決める時に「漢字や全角文字は、ある一定の規則に従って、半角英数に変換しましょう」と言う事になりました。

この「お約束」を守っていれば、どのようなパソコンでも、同じように「漢字を含むURLのページを開く事が可能」になります。

そして、その「お約束に従って変換したURL」が
http://www.ysl.com/jp/shop-product/%E3%83%A1%E3%83%B3%E3%82%BA/%E3%82%B7%E3%83%A5%E3%83%BC%E3%82%BA-SL10H-SL10H-COURT-CLASSIC%E3%83%8F%E3%82%A4%E3%83%88%E3%83%83%E3%83%97%E3%82%B9%E3%83%8B%E3%83%BC%E3%82%AB%E3%83%BC%EF%BC%88%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%EF%BC%8F%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AC%E3%82%B6%E3%83%BC%EF%BC%89_cod11017894uo.html#section=men_shoes
と言う「長いURL」なのです。

なので、他の人にURLを伝える場合は「変換された長いままで伝えないといけない」のです。

もし「見えてる短いままのURL」で伝えると「受け取った側でそのURLで開いても、ページが開けない」という状態になります。

何故なら「受け取った側で、漢字をどういう風に変換するかわからないから、誤った変換方法で変換してしまい、その結果、存在しないページにアクセスしてしまうかも知れない」からです。

例えば「メ」という全角文字は、EUCコードでは「A5E1」と言うコードになりますが、 UTF-8コードでは「E383A1」と言うコードになります。

もし、貴方が「短く変換された後のURL」で、つまり
http://www.ysl.com/jp/shop-product/メンズ/シューズ-SL10H-SL10H-COURT-CLASSIC(以下略)
のURLで伝えてしまうと、それを受け取った側は「メ」という全角文字を「E383A1」に変換すれば良いのか、「A5E1」に変換すれば良いのか、判らなくなります。

そして「間違った変換方法」で変換してしまうと「ページが開けない」ってことになります。

ですので、URLを伝える場合は「長いまま何も書き換えないで、そのまま伝える必要がある」のです。

投稿日時 - 2016-09-28 14:13:28

お礼

とてもわかりやすいご説明、ありがとうございました!
勉強になりました。

投稿日時 - 2017-03-19 20:02:38

ANo.6

↓同じサイトの短縮形。クリックしてみてください。
http://urx2.nu/yF4F

↓短縮サービスを利用した結果です。
http://urx.nu/

投稿日時 - 2016-09-28 13:42:49

お礼

ありがとうございます!
お礼が遅れて申し訳ありませんでした。

投稿日時 - 2017-03-19 20:05:19

ANo.5

変なの・・

此処を利用してる事を友人に伝えるだけで終わるのに・・・

後は 「今質問した」・・とか言えば友人も閲覧出来てサイトURLも長くても短くても関係ないのに・・

投稿日時 - 2016-09-28 13:29:23

ANo.4

実際の通信では、日本語で書かれている部分はURLエンコードされるためコピーした結果の長い文字列が使われていますので、その長いURLが正式なURLです。

ブラウザはアドレスバーに表示する際に、視認性を高めるためにデコードして日本語を表示してくれています。
多くのブラウザはアドレス全体をコピーすると本来のエンコードされたURLがコピーされますので、URLを日本語が始まる前の部分と日本語が始まった後の部分の2回に分けてコピーすると、URLに日本語が入ったままの状態でコピーできると思います。

最近のブラウザは日本語が入ったURLをそのままアドレスバーに入れれば、正しくエンコードして処理してくれるので問題ないと思いますが、メール本文に貼り付けるなどして送った場合、メールソフトが日本語部分をURLの一部として認識してくれず、ハイパーリンクになった部分をクリックしても目的のページが表示されない場合はあるので、日本語のままで送る場合は注意して下さい。

投稿日時 - 2016-09-28 13:19:01

ANo.3

例えば
%82などとなっている部分は日本語を別の文字列に置き換えているのです。URLに日本語を使うと不具合を起こす場合もあるので日本語を半角英数字に置き換えているって思えばわかりやすいです。

http://www.tagindex.com/tool/url.html
などでURLをデコードすれば

http://www.ysl.com/jp/shop-product/メンズ/シューズ-SL10H-SL10H-COURT-CLASSICハイトップスニーカー(ブラック/フレームレザー)_cod11017894uo.html#section=men_shoes

とすることはできます。ただURLをどうご友人に送られるのか分かりませんがブラウザによってはデコードしたURLではうまくページが開けないような事があるかも知れません。

投稿日時 - 2016-09-28 13:12:47

お礼

デコードできるサイトって色々とあるのですね。
勉強になりました。ありがとうございました。

投稿日時 - 2017-03-19 20:06:43

ANo.2

URLに含まれる%の次の2文字は2バイトコードの文字コードです。

だから「www.ysl.com/jp/shop-product/メンズ」の「メンズ」の部分が「%E3%83%A1%E3%83%B3%E3%82%BA」に変換されているだけです。

ナゼそうなるかはこちら↓を参照してください。
http://charset.7jp.net/urlchg.html

投稿日時 - 2016-09-28 13:09:34

お礼

お礼が遅くなってしまい、申し訳ありませんでした。
ありがとうございました。

投稿日時 - 2017-03-19 20:07:10

ANo.1

https://goo.gl/s2RXNk

短くできるサービスがありますよ。

投稿日時 - 2016-09-28 13:08:24

お礼

ありがとうございました。
お礼がおそくなり申し訳ありませんでした。

投稿日時 - 2017-03-19 20:05:42

あなたにオススメの質問