複数のサイト上で、共通した部分を表示させたいのですが、良い方法はないでしょうか?ただし、

・IFRAMEを使用しない
・外部javascriptを読み込んで表示させない(htmlソースを表示させたいので)
・表示させるページの拡張子はhtml
・一括管理ができる(1つのファイルの中身を変更させると、すべてのサイト上で表示内容が変わる)
の条件を満たす方法でお願いします。

ブラウザからソースを表示させると、共通した部分のhtmlのソースが表示されるようにできるようにしたいのですが。

できるだけわかりやすく教えていただけると幸いです。よろしくお願いします。

回答の条件
  • 1人5回まで
  • 登録:2007/01/07 21:52:34
  • 終了:2007/01/14 21:55:28

回答(5件)

id:coliss No.1

coliss回答回数79ベストアンサー獲得回数102007/01/07 22:18:37

ポイント20pt

SSI(Server Side Include)を使用すると拡張子「html」のまま共通した部分を埋め込むことができます。

SSIの使用のポイントは、3点あります。

  • サーバーの設定で、「.html」でSSIの実行を許可する。
    Apacheの場合、「.htaccess」ファイルに「AddHandler server-parsed .html」を記述します。
  • 共通の部分は、SSIファイルにします。
    例:common.txtを作成し、コードを記述します。
  • HTMLファイルには、埋め込みたい場所にSSIファイルのパスを記述します。
    <!--#include virtual="common.txt" -->
    別ドメインの場合は、http://から記述します。
    <!--#include virtual="http://www.example.com/common.txt" -->

SSIの説明:とほほのSSI入門

id:ko_suke79

すいません。SSIだと複数のサイト(別ドメイン)で共通部分を表示できないと思うのですが・・・

2007/01/13 22:42:41
id:coliss No.2

coliss回答回数79ベストアンサー獲得回数102007/01/08 11:26:14

ポイント20pt

すいません、無責任なことを書いてしまいました。

> 別ドメインの場合は、http://から記述します。

上記はできないです。

セキュリティ上も問題有りです。


使用しているのは、各サーバーに共通のSSI用のフォルダを作成し、各サーバーごとにアップロードが必要ですが、ファイルの一元管理が可能です。


ダミーです。

http://q.hatena.ne.jp/

id:ko_suke79

いえいえ、ありがとうございました。

ただ、サイトを数十も運営していると、

ファイルのアップロードが面倒なので。

例えば、30のサイトで共通の部分を表示したい場合、今のままだと、

ファイルの保存の作業 ×30

アップロード×30 となり、

作業する工程がとても面倒なので、

何か良い方法がないかなと思っています。

2007/01/13 22:42:46
id:nev No.3

nev回答回数77ベストアンサー獲得回数42007/01/08 12:56:52

ポイント20pt

共通部分のHTMLファイルを適当なサーバにアップして、

http://XXXXXXXX/common.html

みたいなURLでアクセスできるようにしておきます。

そのURLからHTMLの内容を取得して表示するスクリプトを Perl などで作成し、

<!--#exec cmd="./disp_common.pl"-->

みたいな感じで各HTMLに埋め込んではいかがでしょう。

id:ko_suke79

ありがとうございます。

その方法だと希望通りにできそうですねw

ただ、肝心のPerlが分かりません・・・

もしよかったら、スクリプトのソースを教えていただけると助かります。

2007/01/08 21:54:09
id:nev No.4

nev回答回数77ベストアンサー獲得回数42007/01/08 22:44:12

ポイント20pt

こんな感じです

#!/usr/bin/perl

use LWP::Simple;

print get('http://XXXXXXXXXXXX/common.html');


http://XXXXXXXXXXXX/common.html のところを、共通 HTML の URL に書き換えて下さい。

id:ko_suke79

ありがとうございます。

何回かチャレンジしてみましたが、

当方の勉強不足のせいか、

表示させることはできませんでした。

小学生にでも分かるくらい、

くわしく教えていただけるととても助かるのですが。申し訳ありません。

2007/01/09 08:49:21
id:zebevogue No.5

zebevogue回答回数65ベストアンサー獲得回数72007/01/09 14:28:20

ポイント20pt

PHPでしたら、

を挿入箇所に書き込めばいいと思います。

#ファイル名は「~.php」にして下さい。

id:ko_suke79

すいません、拡張子はhtmlで行いたいと考えています。

ただ、cgiを1から勉強したらできました。

みなさま本当にありがとうございましたmm

これで作業がはかどります☆

2007/01/13 22:42:17

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません