- 締切済み
【質問内容】
【質問内容】 レンタルホームページスペースの特定部分を自分のサイトに表示したい。 【詳細】 有料レンタルスペースの特定の動的部分を自分で借りているサーバー内のHTMLへ反映させたいのですがどうも上手く行きません。 読み込みたいページは http://xxx.com/aaa.html の状態でページ内容は自由に編集できます。 反映するほうの自分で借りているサーバー内のページはこれからどうにでも変更が可能なのでHTMLでなくてもPHPでもなんでも良いです。 読み込みたいページ http://xxx.com/aaa.html を丸ごとコピーするわけではなく http://xxx.com/aaa.html のなかの 《始まり》 この部分を指定してコピーしたい 《終わり》 感じです 《始まり》《終わり》 というのはあくまでも例でこのような目印的なものが実在するならの話です。 なぜこのような回りくどいことをしなければならないかと申しますと、そもそもレンタル側は上記のような使いかたをすることを前提に貸し出しており、料金体系によって一日に同一IPからアクセスできる回数などに制限があったりします。 多数のユーザーからの情報を吸い上げ、レンタル側のプログラムで処理され更新されてゆく部分なのでどうしても自分で借りているサーバー内では完結できない状況なのです。 説明がわかりにくいかもしれませんが『ピン』ときた方がいらっしゃいましたらご指南宜しくお願い致します。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- yyr446
- ベストアンサー率65% (870/1330)
出来そうな事を回答します。 まず、レンタルサーバーからインクルードするものは、HTML or XHTML 文書の 特定部分(識別可能であること)とします。内部CSS定義やSCRIPTまでインクルード して動作させるのは、相当な困難が予想されます。 自分のサーバーの方では、PHP(出来ればVer5以上)の標準機能が動作する事、 不足する拡張機能は自分で組み込める事が前提です。また自動運用したいなら、 クーロンとか、WSHとかOSのシェルの利用も必要です。 上の条件とスキルがあれば、可能です。 具体的には、そのまんまの流れですが、 毎日、朝、昼、晩とかに、取得用のPHPを起動するようにします。 PHPでは、インクルードするページをfile_get_contents()で読み込んで、 dom->loadHTML()でDOMドキュメントとして取り扱い、必要な部分を 探して、その部分を特定の名前でテキストファイルとして上書きで保存します。 そして、あなたのページはそのテキストファイルをjavascriptのAJAX機能で テキストファイルとして読み込み、挿入したい場所にinnerHTMLでも使って 書きこめばよろしいかと.... 実際には、文字コード処理とかいろいろ考慮しなければならないと思うのですが、 インクルードするものもあなたが作っているのならどうにでもなるのではないのかと.. (サンプル:途中まで....) <?php mb_internal_encoding("UTF-8"); $url="http://xxx.com/aaa.html"; $uri =($url); $data=file_get_contents($uri); $data=mb_convert_encoding($data,"UTF-8","euc-jp"); $data = str_replace ("euc-jp","utf-8",$data); $data = str_replace ("&","&",$data); $data = str_replace ("<!--龠龠龠-->","<!--binyu-->",$data); $dom = new DOMDocument(); @$dom->loadHTML($data); $dom->normalize(); $xpath = new DOMXPath($dom); /* ごみ とあるxpathのクエリー $query = '//div[@id="incontents"]//div[@class="group_time_box"]//li/div[@class="title"]/a[1]'; */ $query = '取り込みたいノードのxpath記述'; $entries = $xpath->query($query); foreach($entries as $entry){ /*ごみ 通常の出力の例 echo '<a href="' . $entry->getAttribute('href') . '">'.$entry->textContent.'</a>' .'<br>'; */ //ここでテキストファイル書き込み処理を記述 } ?>
- think49
- ベストアンサー率59% (285/482)
ちょっとわかりづらかったので、質問内容をまとめます。(間違いがあればご指摘下さい) ----- mysite.com から http://xxx.com/aaa.html の一部分を抽出するためにinclude処理を行いたい。 xxx.com は includeするためのレンタルサーバである。 xxx.com には同一IPからの通信回数に制限がある。 どちらも質問者さんが管理している。 ----- mysite.com から http://xxx.com/aaa.html の一部分を抽出するためにinclude処理を行うとしても、 mysite.com に1000回リクエストがあれば、http://xxx.com/aaa.html にも1000回include(他ドメインなので、通信が発生します)しにいきます。 毎回、mysite.com から通信するわけですから、いつも同じIPです。 よって、「同一IPからアクセスできる回数に制限」に引っかかるのを早めるだけになってしまいます…。 > そもそもレンタル側は上記のような使いかたをすることを前提に貸し出しており、 ということですが、includeできるようになっているのに、同一IPアクセスに制限をかける理由がわかりません。 特定IP(mysite.com)に通信を制限するのならば、わかりますが…。 具体的にはどのような方法でincludeできることになっているのでしょうか? 使い方が限定されているのでしたら、xxx.com のFAQなどに実装方法の説明があると思います。 というか、includeが前提のレンタルサーバなんですから、xxx.com が許可している方法でしか実装しちゃダメです…。 # 抽象的な説明が多いので、xxx.com のURLを開示されるとより良い回答が得られると思います。 # 個人的にはxxx.comの動作仕様に興味があります。
補足
ご回答有難う御座いました 問題のURLですが http://castima.net/ こちらになります。 各サイトの更新情報をまとめている物です。
- BellBell
- ベストアンサー率54% (327/598)
非常に判りにくいですね。 >そもそもレンタル側は上記のような使いかたをすることを前提に貸し出しており という事であれば、そもそもレンタル側でそのような機能を用意している事が普通ですが。 上記のような使い方をすることを前提としていないため、用意していないと考えるべきではないかと。 『ピン』ときたのは、あぁかわいそうに、騙されてお金を巻き上げられている被害者だろうなと。 儲かるという触れ込みで、本人はちっとも儲からないスパムサイトを作るお手伝いをさせられてるんだろうなと。 確証はありませんが、8~9割当たってると思ってます。
お礼
回答有難う御座いました。 include とかその辺つめればと考えておりました。 ほとんどのかたはプログラマに依頼してやっているようですが騙されている感じはしないですね。 レンタルスペース内でも完結はする仕様にはなっているのですが、やはり制限があるスペース内ではやれることに限りがあります。 レンタルスペース内で使う分には無料なのですが、これを定期的に訪問し内容を読み取る為には一日にアクセスできるIPに制限があるためにある程度お金を払い一日に訪問できる回数の制限を減らすという仕様です。 よろしくお願い致します。
- swingby
- ベストアンサー率17% (6/34)
確かに分かりにくいですね。 もうちょっと詳しく書いていただけませんか?
お礼
ご回答有難う御座いました。 まずは試してみるにも当方では即実行できるスキルが無いので時間をかけてやってみようと思います。 ご回答有難う御座いました