Как получить текущее имя файла в Apache SSI для использования в условных? - PullRequest
0 голосов
/ 01 марта 2019

У меня есть два файла в каталоге в webroot:

index.shtm
nav.shtm

Содержимое index.shtm:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>Home</title>
  </head>
  <body>
    <h1>Test!</h1>

      <div>
          <!--#include virtual="nav.shtm" -->  
      </div>

  </body>
</html>

И nav.shtm:

<div>
    <!--#if expr="%{REQUEST_FILENAME} =~ m#index#" -->
        Home!
    <!--#endif -->
</div>

Однако я не вижу «Дома!»в отображаемом виде, что я и ожидаю.

Если я использую% {THE_REQUEST} в условном выражении, это работает, но это выглядит как довольно широкая цель.

<!--#if expr="%{THE_REQUEST} =~ m#index#" -->

ЕслиЯ просто вывожу REQUEST_FILENAME, как это:

<!--#echo var="SCRIPT_FILENAME" --> 

Я получаю что-то вроде этого:

/path/to/index.shtm

, что глубоко смущает меня, потому что это должно привести к тому, что аргумент оператора if будет иметь значение TRUE, ноэто не так.

В дополнение к REQUEST_FILENAME, я пробовал REQUEST_URI, SCRIPT_FILENAME и SCRIPT_URI.Ничего не работает.

Как правильно проверить текущее имя файла в условном выражении SSI?

Спасибо!

...