私はいくつかのSSIを使用するサイトで作業しています。これらは静的なので、ページを.shtml
として提供し、PHPインクルードに変換せず、.php
としてください。問題は今、PHPのいくつかのコンテンツを動的に生成したいのですが、インクルードの1つです。次のことが正しい方向に進むか、他の/より良い解決策があるかどうか。私が現時点でやっていることは:SSIからPHPを組み込む正しい方法は何ですか
<!--test.shtml-->
<!DOCTYPE html>
<html lang="en" dir="ltr">
<body>
<!--#include virtual="/test.php" -->
</body>
</html>
<!--test.php-->
<?php echo 'Hello from php'; ?>
これはうまくいかないが、読んだところでは、それはApache 1.3を指していたと私は読んだ。家庭の私のサーバーでは、私はApache 2.を実行しています。それはうまく動作し、サイトがホストされるサーバー上でも動作します。 1.3で動作しなかったのですが、2で動作しますか?何とかラッキーになってしまって本当に別のやり方をしているはずですか?
私が生成しているコンテンツは、現在のページをハイライトするために、サイトのナビゲーションにCSSクラス/ IDを追加するだけです.PHPは最初に生成された後はかなり静的になるため、 PHPの出力を私が想定しているサーバーにキャッシュすることはできますが、最初にこれを行うより良い方法がありますか?
ありがとうございました。
EDIT - 私の代わりの方法の質問との回答ではありません。 私はおそらくもっと適していると分かりました(私は自分の状況のために牛が家に帰るまで議論することができると確信していますので、きれいに言うことをためらっています)。私は現在、サイト上の何かのためにPHPを使用していないので、私は今のところそれに固執します。それはDan M hereによって概説されているとおりです。これらは静的なので
FYI、 '.shtml'は静的ではありません – ajreal
@ajreal、ありがとうございますが、どんな意味ですか? SSIを変更するだけで、各ページのコンテンツを変更することができます。あるいは、あなたが '.shtml'でコンテンツを動的に生成できることを示唆していますか?申し訳ありませんが少し混乱しています。私は何か基本的なことを逃したのですか – tjm
[何が.shtml](http://en.wikipedia.org/wiki/.shtml)。 phpスクリプトを含めることは、PHPが静的なhtml – ajreal