小さな違いのあるファイルがたくさんあります。インクルードされたファイルにはこれが含まれており、長いパスの一部を区別しようとしています。
<!--#if expr="${DOCUMENT_URI}=/internet/"-->Internet<!--#else-->Intranet<!--#endif-->
私が得るエラーログで
AH01337: /opt/apache/htdocs/ssi/time.shtml の expr "${DOCUMENT_URI}=/internet/" を解析できませんでした: '$' 付近で解析エラーが発生しました
このテーマには、中括弧がない、引用符の内側に括弧がある、コメントの終わりの前にスペースがある、または =~ など、さまざまなバリエーションがありますが、何も役に立ちません。mod_include のデバッグ設定がないようです。何が問題なのかを教えてくれます...
私が見つけた別の変種は
<!--#if expr='"${DOCUMENT_URI}"=~/internet/'-->
これによりエラーは発生しません。REQUEST_URI
しかし、変数が設定されていないかのように、と同様に常に else ブランチを選択します。しかし、私はそれらをうまくエコーできます。/.+internet.+/
これを固定している場合に備えて、私も試しました。
これらは CGI 変数なので、cgid_module もロードしようとしましたが、どちらもうまくいきませんでした。