質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

2回答

5110閲覧

file_get_contents など のIPを訪問者のIPでアクセスさせたい

cakehiro

総合スコア11

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2016/11/17 12:09

サーバーで自動的に決まったサイトに決まったリファラーを

1、訪問者がAサイト見る
2、Aサイト(Aサーバー)にfile_get_contentsを設置しBサイトを取得
3、取得したBサイトソースをAサイトに表示

上記の過程で リファラーはこのスクリプトを置いたAサーバーのドメインになってしまったり、BサイトからしたらAサイトのIPアドレスになってしまいます。

これをBサイトから見た場合、訪問者のIPやリファラ等のヘッダリクエストを取得しリファラ偽装できないのでしょうか?

古典的なインラインフレームでの手法ですとこの「訪問者のリファラ等のヘッダリクエストを取得しリファラ偽装」ができないので、ここを解消していただきたいです。

phpでなくても下記に2点ができればjavascriptなどの方法でも大丈夫です。
1、訪問者のIPを使って他サイトにアクセス
2、訪問者のリファラーを取得して他サイトにアクセス

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

リファラーは訪問者の物をfile_get_contents()の第3パラメーターで適切に設定し渡せば実現可能です

IP偽装は以下を参照ください。ネットワーク攻撃手法の一つです。
かなりアンダーグラウンドなことをやらないとできません。
(たぶんここで質問するレベルの技術力では実現できないと思います)
(IPA)IP Spoofing
(Wikipedia)IPスプーフィング

IP偽装が手軽にできてしまうとgoogle.co.jpやapple.comやmicrosoft.co.jpやyahoo.co.jpを騙ることができてしまいます。


追記:
質問者さんのやりたいことは、上記紹介した記事等で触れられている方法で実装したとしても、インターネットのTCP/IPネットワーク上ではルーティングの仕組み上不可能となります。

仮にWebサーバー(またはアプリケーションサーバー)でIP偽装を実現できたとしても、閲覧者の端末とIP偽装したサーバー2台が同じIPアドレスを持つことによりどちらかが通信不可となります。

投稿2016/11/17 13:16

編集2016/11/18 02:28
Y.H.

総合スコア7914

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cakehiro

2016/11/18 07:58

なるほど、、ありがとうございます。IP偽装とはいかなくても 訪問者のIPアドレスでAサイトを仲介してBというサイトにアクセスはできないのでしょうか? phpにこだわらず、html javascript でもいいのですが、、、 AサイトにBサイトへiframe設置した場合は訪問者のIPアドレスでBサイトにアクセスができるのですが、、ヘッダーなどのリファラー情報が偽装できなくて、、 かといって phpでfile_get_contentsだとヘッダー情報偽装できるのですが、Bサイトからすれば 訪問者IPアドレスでなく訪問者が訪れたAというサイトのサーバーのIPアドレスでアクセスされた ことになってしまうので、、、困ってます。。
Y.H.

2016/11/18 08:11

「訪問者のIPアドレスでAサイトを仲介してBというサイトにアクセスはできないのでしょうか?」 これを行うことをIP偽装といいます。
guest

0

リファラをつかってどうしたかによるのでは?
単にリファラのぎそうであればhttpヘッダを手動で書いてクロールするphpを
実行すればよさそうな気がします。
クライアント側のリファラを偽装するのは特殊なブラウザや
グレーなアドオンを使えばよいでしょう

投稿2016/11/17 12:57

yambejp

総合スコア114572

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cakehiro

2016/11/17 13:04

ご回答ありがとうございます。 >リファラをつかってどうしたかによるのでは? Aというサイトの訪問者の「リファラー」や「IP」を使い他ソースを取得したんです。 >単にリファラのぎそうであればhttpヘッダを手動で書いてクロールするphpを >実行すればよさそうな気がします。 →これだと取得先のサイトからしたら訪問者のIPでなく Aサイトのサーバー側のIP でアクセスされてると一緒ですので、、、
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問