よろしくお願い致します。
オンラインショッピングなどのページで、下記のようにリンク先を暗号化(?)しているソース
をよく見かけるのですが、これはどうやっているのでしょうか?
<a href="https://●●●.com/shoping/785c2fde71699e82c6f1a1b48ea7a46e34bb2f2cddec1290f590f2809d32af775d7b0db644c87f75" target="_blank">リンク先へ移動</a>
お分かりの方がいらっしゃいましたらお教え下さい。
よろしくお願い致します。
No.3ベストアンサー
- 回答日時:
暗号化ではなくて、PATH_INFOかQUERY_STRINGです。
(?があれば、それ以降はQUERY_STRING)
★暗号化ではありません。
No.2「785c2xxxxxxという文字列がデータベースに格納されているので、」
ではありません。動的なデータです。
No.1「エンティティ」
ではありません。
サーバーがhttpsで呼びだされているので、HTTPプロトコルで送受信されるデータ自体は暗号化されています。画面には表示されない。
URLにて
[domein]/[path]/[file Name]][PATH_INFO]?[QUERY_STRING]#[Ancjor Target]
ですよね。
#以降は、サーバーには送られずブラウザで利用するページないアンカー
?以降はQUERY_STRINGといい、URLに使用できる文字列なら何でも
QUERY_STRINGを受け取るとサーバーは環境変数[QUERY_STRING]に収納して、処理します。
[file Name]/より後ろは、その環境変数[PATH_INFO]に渡されます。
[file Name]より前については、ご存知でしょうから省略します。
示されたデータについて考えて見ます。
https://●●●.com/shoping/785**略**f75
1)まず、HTTP、セキュアサーバーに対して暗号化した要求を行います。
2)サーバーは、末尾の/について、[78**略**f75]/というフォルダーが存在するかを確認します。
(*)もしあれば(10)へ
3)それがないと、/を切り捨てて環境変数{PATH_INFO}に/をいれ
4) [78**略**f75]をファルとみなし探します。
(*)あればそれを提供(ファイル)
ないし処理を任せます(実行ファイル)。
5) ファイルがなければ、環境変数{path_info}に[78**略**f75]を代入します。環境変数{path_info} = /78**略**f75/
6) 残ったshoppingについて、それが存在すると
a.ファイルだと提供
b.実行ファイルだと実行
c.フォルダーだとフォルダー内を探し
(*)もしあれば(10)へ
7)この場合、実行ファイルだともそのプログラムを実行します。利用されるデータは、HTTP要求ヘッダに含まれる各種情報
78**略**f75は、商品コードや数量を表しているに過ぎないですし、暗号化もされていません。暗号化はデータ交換時です。
10) フォルダー内にファイルがあれば、
サーバーの設定で、INDEXに使用するファイルを順番に探す
index.html→index.htm→INDEX.HTML→
または、エラー(440)を伝える
ご回答ありがとうございます。
専門家の方なんですね。
専門用語はよく分かりませんでしたが、なんとなくフローチャートが分かりました。
> 暗号化ではなくて、PATH_INFOかQUERY_STRINGです。
少なくともこの仕組みのキーワードが分かりましたので、ネットなどでもう少し
色々と調べてみようと思います。
ありがとうございました。
No.2
- 回答日時:
●●●.com側で、情報を持っています。
具体的には 785c2xxxxxxという文字列がデータベースに格納されているので、アクセスが来たときにデータベースから情報を引っ張って、ユーザの特定や処理などを行います。
ご回答ありがとうございます。
サーバーと連携した仕組みなんですね。
簡単には真似できなそうですが、疑問に思っていた仕組みが分かりました。
ありがとうございました。
No.1
- 回答日時:
こちらのサイトで暗号化できます。
迷惑メール防止 メールアドレスのエンティティ化
http://ranking.prb.jp/ent.shtml
メールアドレス以外ももちろん大丈夫です。
参考URL:http://ranking.prb.jp/ent.shtml
早速ご回答頂きありがとうございます。
お教え頂いた方法は私も存じておりましたが、これはメールアドレスの暗号化なので
ちょっと内容が違うようです。
こちらも参考にさせて頂きます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel2007での条件付き書式について 6 2023/05/02 10:56
- 仮想通貨(暗号通貨) 仮想通貨【アプトス】もうすごく上がる可能性は高い? 10万円を1億円い増やすyoutube動画 3 2022/10/23 21:49
- Excel(エクセル) SUMIFのIF分岐について 4 2023/04/15 12:57
- その他(コンピューター・テクノロジー) <a href="file:///フォルダ名/ファイル名">リンクテキスト</a>について 1 2023/04/06 22:40
- Word(ワード) リンクが作動しない 7 2022/12/23 14:15
- 会社・職場 「パワハラ防止法」罰則規制がなければ あんまり意味がない。 2 2022/08/11 07:16
- その他(プログラミング・Web制作) 「複数行の行頭に同じテキストを挿入」をVimのコマンドモードで行う方法について 3 2022/10/19 13:23
- SSL・HTTPS httpとhttpsの安全性のちがいについておしえてください 3 2022/11/18 22:51
- その他(IT・Webサービス) ランサムウエアに汚染されたかもしれない外付けHDDのファイル復旧方法 3 2023/02/04 01:23
- Excel(エクセル) Excelでハイパーリンクが変化する表を作りたい 6 2023/05/03 07:54
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ローカル用HTMLファイルの安全...
-
リンクを押すとEXEファイルを実...
-
saved from url=(0013)abou
-
HTMLでDBからデータを表形式で...
-
subversionでコミットしたらftp...
-
HTMLファイルにテキストファイ...
-
【JavaScript】confirmのボタン...
-
カーソルの動きに合わせてDBか...
-
Ajaxでpostした内容のresponse...
-
HTMLでリアルタイムグラフを作...
-
外部プログラム実行時の戻り値
-
wininet.dllのInternetOpenの同...
-
データ受け渡しについて
-
JK-FFを使う非同期10進・2進カ...
-
非同期通信を使うタイミングが...
-
セレクトボックスのHTMLを教え...
-
ASP.NET(VB)VBソースからJavas...
-
JQuery サーバー上にアップする...
-
Javadcriptでwebサーバー側にあ...
-
[JavaScript] preven...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
HTMLでDBからデータを表形式で...
-
saved from url=(0013)abou
-
リンクを押すとEXEファイルを実...
-
Flickity で画像にリンクを貼る...
-
ローカルでのhtmlチェックにつ...
-
ソースのリンク先などの暗号化...
-
F5などで更新すると、画像やCSS...
-
ローカル用HTMLファイルの安全...
-
テーブルで作った表をボタン操...
-
htmlからhtaへのリンク
-
Python3, Flask, Jinja2などで...
-
インターネット上のファイルサ...
-
HTMLファイル内にformの記述を...
-
HP作成の際、どうしていますか?
-
suEXECとパーミッションの関係...
-
HTMLファイルにテキストファイ...
-
subversionでコミットしたらftp...
-
現在HPを制作中で、jQueryプラ...
-
imageタグの画像データを取得す...
-
ajax googlmap
おすすめ情報