• 締切済み

htmlの中にssiでphpを表示させる方法について

いつもお世話になっています。 タイトルにもありますが、htmlファイルの中でphpの実行内容を表示させたいと思っています。 htaccessでhtmlでもssiが動くように設定してあるので、htmlの中でssiを使用してphpを呼び出す事はできるでしょうか? <!--#include virtual = "~.php" --> <!--#include file = "~.php" --> 上記のように試してみたのですが、「[an error occurred while processing this directive] 」と表示されてしまいます。 この記述方法で間違っていないと思っていたのですが、どうしても上手くできません。 phpまでのパスを相対パスや、絶対パスで指定してみましたが、やはりダメです。 表示させたいphpは、直接アクセスするとちゃんと表示されます。 またphpのパーミッションは644となっています。 アドバイスを御願い致します。

  • PHP
  • 回答数1
  • ありがとう数2

みんなの回答

  • inu2
  • ベストアンサー率33% (1229/3720)
回答No.1

SSIとPHPを絡めた経験が無いので、いまいち何を目的としているのか定かではありませんがHTMLからPHPを呼び出すんならHTMLの中でPHPを呼び出したいところで <?php include("***.php"); ?> と やればよいだけでは?

Cuty_Cat
質問者

お礼

ご回答ありがとうございます。 教えて頂いたように、HTMLファイルの中に記述してみましたが、何も表示されません。 やりたい事についてですが、サイトのトップページ(html)に天気予報の情報(php)を掲載したいと思っています。 天気予報の情報を取得する、phpファイルは直接アクセスすると、ちゃんと天気予報が表示されます。 この天気予報を、サイトのトップページに表示したいのですが、どのようにすれば良いのでしょうか? アドバイスを御願いします。

関連するQ&A

  • ssi設置について

    「予約状況カレンダー」というフリーのcgiをDLして動かすまではできましたが、同じものをssiで動かそうとしたら[an error occurred while processing this directive]というメッセージがでます。 HTMLソースの中に<!--#include virtual="(URL)"-->を埋め込んで名前を.shtmlにしました。サーバーはロリポップです。 ここのマニュアル【■実行ファイルまでのパスを絶対パス(フルパス)で指定すると動作出来ません。 ■上位ディレクトリを参照すると動作出来ません。 実行ファイルは、SSIを記述するファイルと同じ階層か、下位のディレクトリに設置して頂きますようお願い申し上げます。】がよくわからない初心者ですが、どなたか初心者でも分かるような説明をしてくださいませんか?

    • 締切済み
    • CGI
  • htaccess ssi basic認証

    ssiでヘッダー・フッターを読み込んでいるサイトがあります。 そこでまずhtaccessでssi、shtml→htmlへの設定をしています。 そのサイトの中でディレクトリを切ってbasic認証が必要なページを作成しました。 そのディレクトリの中ではヘッダー・フッターが読み込むことができず、エラーが表示されます。 an error occurred while processing this directive そこでbasic認証に使ったhtaccessにもssiの設定を追記しましたがうまく行きません。 ssiとbasic認証を同時に設定することはできるのでしょうか。

  • SSIでのエラーについて

    こんばんわ。 RedHat7.2で、Perlで、CGIの勉強をしはじめましたが、 SSIが どうもうまくいきません。 CGIならうまくいくのですが、HTMLからSSIでCGIを実行しようと するとうまくいきません。 Apacheで練習しているのですが、Apacheの設定が悪いのか、ほかに 重大なミスをしてるのかわかりません。 HTMLの中に #exec cgi を入れてみたんですが、 ブラウザにはその部分が [an error occurred while processing this directive] と表示されるだけなんです。 ごくごく簡単なカウンターなんですが。。。 SSIにおいて、これだけは必ずしなければだめ、というのが あれば教えていただきたいのですが。。。 よろしくお願いいたします。

  • ApacheをまたがるSSIの利用方法

    よろしくお願いします。 SSIをHTMLから読み出す際タグ内に exec cgi="/フルパス/cgi-bin/test.cgi" のように記述し、ブラウザから開くと、 [an error occurred while processing this directive] と出ます。 これは、パスが間違えていることが原因と思われます。 環境が特殊で、 apacheをSSL用((1))と非SSL用((2))に二つ、同じサーバ内に立ち上げています。 (2)のHTMLから、フルパスで(1)のCGIをキックすることは可能でしょうか? それともapacheをまたがってSSIからCGIをキックするのは無理なのでしょうか? ご回答、どうかおねがいいたします。

    • ベストアンサー
    • Perl
  • ssi がうまく動作しません。

    サーバ会社に訪ねると.htaccessに AddType text/html shtml を記入して下さいとのことでした。 以下の方法でためしましたが、エラーがでるわけでもなく、<!--#INCLUDE VIRTUAL="/ssi/xxx.shtml"--> にした部分だけが表示されません。 http://aaa.com/bbb/ccc/ddd.html .htaccess は、bbbのファイル内におきました。 1, ssi/xxx.shtml は、indexと同じトップの階層におきました。 ddd.html に  <!!--#INCLUDE VIRTUAL="/ssi/xxx.shtml"--> を記入しました。 2, ssi/xxx.shtml は、bbbのファイル内において、ddd.html に <!--#INCLUDE FILE="/ssi/xxx.shtml"--> を記入してみましたが、これもだめでした。 パーミッションも何がいいのか、お分かりでしたらお願い致します。 ちなみに777にして試したのですが、だめでした。

    • ベストアンサー
    • CSS
  • CGIにSSIカウンタをつけたい

    掲示板や日記帳などのCGIに、別途ダウンロードしたSSIのテキストカウンタを表示させようとしたところ、ローカル・Web共に表示されませんでした。 表示する為の記述は「<!--#include virtual="仮想パス"-->」で、HTMLファイルに記述した場合は問題なく表示・動作しました。 HTMLファイルで表示・動作しましたし、CGI・SSI・「.htaccess」ファイルなどの設定はおそらく問題ありません。 SSIのテキストカウンタは「The Room」というサイトの「Text Day Counter Ver.1.10 SSI版」を使用しています。 CGIは「掲示板や日記帳など」と言いましたが、まだ検討段階で特定のCGIはなく、色々なCGIで試しています。 ※特定のものだけではなく、テキストカウンタを表示したいと思うCGIにつけたいのです。 CGIの記述は (1) print "<!--#include virtual=\"仮想パス\"-->\n" ; (2) print '<!--#include virtual="仮想パス"-->\n' ; (3) print "<!--#include virtual='仮想パス'-->\n" ; (4) print <<"EOM"; <!--#include virtual="仮想パス"--> EOM と4通り試しましたが、どれも動作しませんでした。 SSIのテキストカウンタのパスが「http://xxx.yyy.zzz/aaa/bbb/ccc/txtdayc1.cgi」だとしたら、仮想パスは「/aaa/bbb/ccc/txtdayc1.cgi」のようなので、そう記述しましたが動作しませんでした。 CGIと同じディレクトリに置いているので、記述を「<!--#include virtual="./txtdayc1.cgi"-->」に変えたところ、HTMLファイルでは動作しました。 なぜSSIのテキストカウンタがCGIで表示されないのか、アドバイスをお願いできないでしょうか? また、「<!--#include virtual="仮想パス"-->」を「<!--#include virtual="CGIファイル名"-->」または「<!--#include virtual="フルパス"-->」のように記述しても問題ないのかも教えて頂けると助かります。 宜しくお願い致します。

    • ベストアンサー
    • CGI
  • SSIに付いて

    こんばんは 初心者には、無謀すぎる挑戦なんですが・・ ヨミーサーチの登録件数をトップページに表示させようとしています。 (1)自分で用意したindex.html (2)index.htmlに、インラインフレームを作った。 (3)メモ帳を開いて「<!--#include file="./log/total_url.log"--> 」(ヨミサーチの登録フォルダ)を書き、「count.shtml」で、保存。 (4)index.htmlに作った、インラインフレームのリンク先は、サーバーに置いた、「count.shtml」アドレスを入れた。 そして、アクセスしたら「[an error occurred while processing this directive]」と、表示されてしまってます。 SSIが使えるサーバーなんですが・・・・

  • htmlファイルでPHPとSSIを有効にさせる方法

    htmlファイルで、PHPとSSIの両方を有効にさせる方法について教えて頂きたいです。 下記のように、htmlでPHPとSSIを両方とも有効にしたいと思い、 htppd.confファイルを下記のようにしたところ、PHPは有効になったのですが、SSIが無効になってしまいました。 おそらく、SSIの記述が、PHPの記述で上書かれてしまったのだと思いますが、htmlで、PHP,SSI両方を有効にする方法はありますでしょうか? htmlファイルの内容 --------------------------------------------------- (省略) <?php include("/life_contents/login_check.html"); ?> (省略) <!--#include virtual="/resource/ssi/login/status.html" --> (省略) --------------------------------------------------- httpd.confの内容 --------------------------------------------------- (省略) AddType text/html .html .htm .shtml .shtm AddOutputFilter INCLUDES .html .htm .shtml .shtm (省略) AddType application/x-httpd-php .html (省略) ---------------------------------------------------

    • 締切済み
    • PHP
  • SSIの表示確認について

    ホームページのheaderとfooterを共通のSSIで表示しようと設定、 サーバーにアップロードしブラウザで確認したところ無事に表示はされるのですが・・・ 20ピクセル(見た感じ)ほど下方向にずれて表示します。 (SSIを使用しない場合は設定どおり表示されます。) HTMLファイル <!-- /headerエリア --> <div><!--#include virtual="/ssi/header.html" --></div>  省略 <!-- /footerエリア --> <div><!--#include virtual="/ssi/footer.html" --></div> HTMLではheader、footerエリアのmargin、paddingとも上は0としています。 また、includeさせる部分も<div>~</div>内を抜き出しssiディレクトリにheader.html、 footer.htmlのファイル名で保存されています。 .htaccessファイル Options +Includes AddHandler server-parsed html なぜ下方向にずれて表示されるのか、解決できません。 ぜひとも、ご教授お願いします。

  • DreamWeaverでSSIをつかったのですが、ブラウザで表示されません。

    インクルードするファイルには <!--#include file="ssi/header.html" --> を挿入してあり、Dreamweaverのデザインでは きちんと表示がされております。 それをサーバーへアップしてもブラウザ上では表示されません。 もちろん、header.htmlはサーバーへアップしてありますし インクルードのタグを書いているページはshtmlです。 サーバーもSSIは対応しています。 いろいろな過去ログを参照したのですがいまいち原因がわかりません。 階層が間違っているのかと思い、 <!--#include virtual="ssi/header.html" --> でもしてみましたが、やはり表示されませんでした。 ちなみに、ブラウザで表示されるもののソースをみると <!--#include file="ssi/header.html" -->の記述が残ってあります。 通常、上記のようなインクルードされたものは記述がなくなるはずなのですが、なぜか表示されております。 .htaccessなるものですればよいのか どうやってすればよいのかが全然わからず困っております。 どうか、ご教授下さいませ。

    • ベストアンサー
    • HTML