私の現在の Web サイトでは、PHP を使用して HTML コンテンツを作成し、書き換えられた「クリーンな」URL で指定されたブラウザーに出力しています。
url.rewrite-once = (
"^/([-a-zA-Z0-9]+)/$" => "/index.php?section=$1",
"^/([-a-zA-Z0-9/]+)/([-a-zA-Z0-9/]+)$" => "/index.php?section=$1&article=$2"
)
index.php は単純に関数を呼び出して、変数に応じてコンテンツを作成および出力します。
http://domain.com/some-section/this-is-an-article/
現在、これは単なるフラットな HTML 出力ですが、フラットな出力に PHP をインクルードしたいと考えています。主に、ページがブラウザにロードされたときの PHP インクルード呼び出し用です。
<h1>lorem ipsum</h1>
<?php include_once('example.php') ;?>
<p>Dolar sit amet.</p>
私は単純に、PHP を介して HTML を次のようにマップできると考えました。
fastcgi.map-extensions = ( ".html" => ".php" )
しかし、私の URL には物理的にファイル拡張子がなく、拡張子を持つ物理的に書き換えられたページも実際には存在しないため、fastcgi は何もマッピングできません。
PHP が埋め込まれた .html ファイルを作成するだけで fastcgi が機能することをテストしたところ、正しく解析されたので、.html ファイル拡張子が fastcgi を介してマッピングされていることがわかりました。
私の質問は、拡張機能がない場合、PHP を介して出力されたコンテンツをマップするために fastcgi/lighttpd を取得するにはどうすればよいですか?