• 締切済み

HTML文書の中で環境変数を使うには?

サーバを変える作業をしています。そして近い将来また変えるよていがあります。 プログラムファイルの中には、たくさんのHTML文書があり、その中でCGIを呼び出しています。URLにホスト名が入っているのをひとつひとつ修正するのを2回やらなくてもいいように、環境変数を使いたいのですが、HTML文書の中で環境変数を使うことはできますか?もしできるのなら、簡単なサンプルを紹介していただきたいのですが。よろしくお願いいたします。

みんなの回答

  • noopee
  • ベストアンサー率38% (114/297)
回答No.2

再度。 SSIとは「Server Side Include」の略で、HTML文書中に、コメントの形でコマンドを埋め込むことでサーバにコメントを発行した結果を返してくれます。 プロバイダが許可してないと使用することが出来ません。 自社もしくは自分で立てているサーバであれば、httpd.confや.htaccessの設定で使用することが出来ます。 SSIで使用可能な環境変数を表示させることも出来ます。

参考URL:
http://tohoho.wakusei.ne.jp/www.htm
lily02
質問者

お礼

ありがとうございました。 SSIのことは知らなかったので勉強になりました。 どういうふうに利用できるか思案中です。

全文を見る
すると、全ての回答が全文表示されます。
  • noopee
  • ベストアンサー率38% (114/297)
回答No.1

こんにちは。 HTMLのみでというなら、不可能だと思います。 SSIを使えばホスト名の取得はできますが、お使いのサーバで許可されてない場合は使えません。

lily02
質問者

補足

SSIって何ですか? スクリプトですか? CGIの方は、環境変数「SERVER_NAME」を取得することで解決したのですが、 やはりHTMLの方は無理でしょうね?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • cgi環境変数の変更方法?

    cgi環境変数の変更方法? perlで書かれたcgiプログラムがあります。 そのcgiではcgi環境変数内のREMOTE_ADDRを読出し、特定のIPアドレス【特定の端末】であれば特別処理を行っております。 今回、別の端末【別のIPアドレス】から同じ特別処理をする必要が生じました。 サーバ側のcgiプログラムを修正すれば簡単なのですが、著作権上の問題があって出来ません。 そこで端末側のプログラムがC#のWebClientクラスを使用してサーバと交信しているのを幸いとして myClient.Headers.Set("REMOTE_ADDR", "xxx,xxx,xxx,xxx"); ← 従前のIPアドレスへの変更 のステートメントを追加して強制的にIPアドレスを変更しようとしました。 ところがサーバ側のcgi環境変数には、HTTP_REMOTE_ADDRという新しい要素が加わっただけであり、目的とするREMOTE_ADDRを修正出来ません。 調べてみると、apacheがHTTP_タグを追加しているとのことです。 この追加をやめさせREMOTE_ADDRに当方が望むIPアドレスを設定することは可能でしょうか?

  • ローカルのHTMLファイルを開く際、ファイルに変数を渡すことは可能ですか?

    こんにちは。お世話になります。 たとえば http://oshiete1.goo.ne.jp/kotaeru.php3?q=1904866 というのは、サーバ上のkotaeru.php3というスクリプトに q=1904866という変数を渡した場合の出力をリクエストしているわけですが、 変数の値を変えることにより、出力の内容を変化させることができます。 いま、ローカルPC環境での閲覧を前提としたHTMLファイルを作成しています。(すなわち、ハードディスク上にあるHTMLファイルを、単にブラウザで表示させるだけです。PCにパーソナルウェブサーバを稼動させて、そのサーバの応答を表示させたりするわけではありません。) HTMLファイルを表示させる際に、呼び出しURLの変数の値を変えることによって表示内容を変化させるファイルを作成したいのですが、そのようなことは可能でしょうか。 ---- ↓以下、なんとなく具体的?な例(ハードディスク上のHTMLファイル) <html> <body> <a href="sample.html?★=10">表示行を10回表示</a><br> <a href="sample.html?★=50">表示行を50回表示</a><br> <a href="sample.html?★=100">表示行を100回表示</a> </body> </html> ---- ↓sample.html(呼び出すHTMLファイル)の内容 <html> <body> <script language="JavaScript">   ● = URLから★の値を取得する;   for(i=0; i<●; i++){     document.write("表示行<br>");   } </script> </body> </html> ---- 何百種類もHTMLファイルを作るのが面倒なので、なんとかしたいと考え、質問させていただきました。 JavaScriptでも他言語でもかまいません。HTMLファイルをCD-ROMで配布するため、PHPなどをインストールしなくても可能な方法があれば、ご教授くださいませんでしょうか。(小ウィンドウを動的に生成する方法も考えたのですが、できればURLを使って変数を渡したいです。) よろしくお願いします。

  • クライアントの環境変数値を得る。

    よろしくお願いします。 web上からCGIを実行したときに そのCGIを実行したクライアントの環境変数値を得ることは可能でしょうか? システム環境変数の「HOME」や「TEMP」の指定先を得たいのですが。 クライアント端末はWindows2000 or XP です。 webサーバー・・・HP-UX web・・・IE CGI開発言語・・・Perl もしくは csh 開発端末・・・windows2000(Tera Term 使用)

    • ベストアンサー
    • CGI
  • ブラウザの環境変数の確認方法

    プロキシのことを勉強しようと思っています。 プロキシを使った場合にIPアドレスなどの情報が確かに隠せているかをチェックするためには まずはブラウザから読み取ることができる環境変数を見ればいいだろうと思いました。 そういうわけですので、この環境変数の確認方法を教えて下さい。 OS は debian 7.8 です。 ググッてみると解説ページはいくらでもあるようですが、例えば http://www.perl-labo.org/analyse/useragent/ の最初の方にはユーザーエージェントを画面に表示するCGIプログラムが掲載されています。 しかし、これだとレンタルサーバー上にこのCGIプログラムを設置して、 そのサイトにブラウザからアクセス、という手順を踏まなければいけません。 レンタルサーバーなどを持っていなくても、 自分で自分の環境変数を確認する方法はないでしょうか? Konqueror でこのスクリプトファイルの場所にアクセスしてもファイルの中身が表示されるだけですし。 自分のPCにおいて自分のみアクセスできるサーバーを立ち上げて そこにブラウザからアクセスする、なんていうやり方がありそうですが、 他にはないでしょうか? どうぞよろしくお願いいたします。

  • 環境変数 $(NEMORDIR)

    C++初心者です VC++で、あるサンプルプログラムをコンパイルしたところ、 3DTransfo.dll エラー 0、警告 0 以下の環境変数が見つかりませんでした。 $(NEMORDIR) と出てきました。 3DTransfo.dllというdllファイルができるはずなんですが、できていません。また、NEMORDIRというディレクトリが作成されていました。 環境変数$(NEMORDIR)ていうのは何なのでしょうか? もし少しでも分かる人がいらっしゃいましたらヒントをください よろしくお願いします

  • 変数内でHTMLを使用したいです

    自分なりにいろいろ試してみたのですが出来なかったので、お教えいただきたいと思い、質問させていただきます。 現在、perlを使ってCGIを組んでいます。 (というよりは組まれていたCGIを編集しています) その中で、外部から入力された文字列データを変数に格納し それをprintで書き出しています。 以下のような形です。 -------------------------------------------------- open(IN,"$datfile"); while (<IN>) { my ($no,$date,$name,$comment,$ip) = split(/<>/); print "<div class=\"line_wrap\">"; print "<div class=\"line_left\">$date</div>"; print "<div class=\"line_right\">$comment</div>"; print "</div>"; } close(IN); -------------------------------------------------- なんとなくでしか理解できてないのに編集したのでおかしい部分もあるとは思いますが・・・。 今回お伺いしたいのは $comment という変数内に、HTMLタグが入っていた場合、そのままの状態で吐き出されてしまうことになり困っています。 変数内の文字列に記載されているHTMLを、HTMLとして認識して実行したいのですが(要はリンクを貼りたい)可能でしょうか? 外部から入力されているものですので、HTMLがあったりなかったりします。 何か方法があれば、教えていただきたいです。 よろしくお願い致します。

    • ベストアンサー
    • Perl
  • ブラウザを使用しないでプログラムから変数を送る方法

    通常、 ・GETの場合 <a href=http://www.xxx.co.jp?a=1>submit</a> ・POSTの場合 <form method=post action="xxx.cgi"> <input type=hidden name=a value=1> <input type=submit value=submit> </form> のなどのHTMLでクリックまたはSUBMITボタンを押すとその特定のURLのWWWサーバーに変数が送られますよね。 これをブラウザを使用せず、サーバーのプログラム(perl)を使用して、そのプログラムを実行すると プログラムで指定した特定のURLのwwwサーバー(port 80)に変数を送る方法書き方を教えて下さい。 GETの場合、POSTの場合それぞれ教えてください。 通常、ブラウザがしていることを、プログラムでしたいと思っています。 よろしくお願いします

    • ベストアンサー
    • CGI
  • Notesの「notes.ini」内の環境変数に関して

    Notesユーザーが人事異動なので、MailBoxのサーバが変わった場合に、 新着メールのお知らせのPopUpが出ない時があります。 ロケーションのサーバの変更は正しく行っているのですが、直りません。 色々と調べると、 notes.ini の環境変数に問題があるというのが、 教えてGoo から分かりました。 しかし、notes.ini を手作業で修正するのをユーザーにやらすわけには 行かないので、Notes DBを作り、その中で Lotus Script でやりたいと 思っています。 = 処理概要== Notesの「notes.ini」内の環境変数の中で  NewMailSeqNum=4180  NewMailSeqNum49256FB3:0010EA61=4180 という変数がありますが、この2つの変数の値の変更を Lotus Script で 0 に 設定する。  Call session.SetEnvironmentVar("NewMailSeqNum","0",True) 「NewMailSeqNum」に関しては、上記でいいのですが、 もうひとつ「NewMailSeqNum」の後ろに英数字がある環境変数の変更なのですが、 端末やNotesのユーザーによって?後ろの英数字が違います。 この場合どのように変更したらいいか教えてください。 また、後ろの値を求めるのが難しいのでしたら、「NewMailSeqNum」を notes.ini から Script で削除する方法を教えてください。 以上、宜しくお願い致します。

  • 環境変数Pathの設定について教えてください。

    私、Microsoft Visual C++2010 Express を使用し勉強しているビギナーです。 文字数に制約があるとおもいますので、要点だけ記します。 コマンドプロンプトを操作する過程で、「〇〇〇は内部コマンド、操作可能なプログラム又はバッチファイルに認識されていません」メッセージがあり、各サイトを検索したところ、「環境変数 Path」を追記設定しなければならないという事が解りましたが、初めてなものですから、どの様に追記するのかが解りません、具体的にご教授頂ければと思い投稿しました。 ディレクトリの過程は、C:\User\YUZO>Documents>Visual Studio 2010> Projects>Sample>Sample>となっていまして最後のSample>の中に、System1.cppというファイルを作成しています。同様にSampleとは別のプロジェクトに、C:\User\YUZO>---中略---Projects>Test>Test>の中に、Main1.cppというファイルを作成しており、両方共、上記のメッセージが表示されます。 「環境設定」を開くとデフォルトでPathは、全部表示させたところ、次の様になっていました。「Microsoft SQL Server\100\Tool\Binn;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\」ここに私の場合どの様に追記すれば良いのか、具体的に教えて下さい。説明に不備があるとは思いますが宜しくお願い致します。 OS---Windows7

  • WORD文書をHTMLに変換

    WEBのHOME PAGE構築のため,WORD文書をHTMLに変換して表示する作業をしています。 ところでOffice2000のWORDでHTMLに変換した場合、本体のHTMLのほかに フォルダができてXMLのファイルリスト、HTMLのヘッダーファイルというものもできます。文書の中に図などを使用した場合はそれも入っています。 このXMLのファイルリスト、HTMLのヘッダーファイルというものを無視(削除)して構築しても問題ないのかそれとも必要なのか回答よろしくお願いします。