Любой способ для включения на стороне сервера, чтобы получить имя файла или URL-адрес файла, куда он включается? - PullRequest
1 голос
/ 09 июня 2010

Есть ли способ для включения на стороне сервера определить, в какой файл он включен? Я хотел бы сделать что-то вроде этого:

<ul id="menu">
    <!--#if expr="$URL = index.html" -->
        <li><span>Home</span></li>
    <!--#else -->
        <li><a href="index.html">Home</a></li>
    <!--#endif -->
    <!--#if expr="$URL = about.html" -->
        <li><span>About us</span></li>
    <!--#else -->
        <li><a href="about.html">About us</a></li>
    <!--#endif -->
    <!--#if expr="$URL = contact.html" -->
        <li><span>Contact us</span></li>
    <!--#else -->
        <li><a href="contact.html">Contact us</a></li>
    <!--#endif -->
</ul>

Мне просто нужно знать, возможно ли использование серверных включений, и если да, то какой будет синтаксис.

Я провел некоторые исследования на стороне сервера и попробовал что-то вроде этого:

<!--#if expr="DOCUMENT_URI = /contact.html" -->
    this is the contact page
<!--#endif -->

И я вижу это в выводе:

[при обработке этой директивы произошла ошибка] это страница контактов

как будто понимает команду, но что-то вызывает ошибку по какой-то причине.

Я пробовал похожие вещи с SCRIPT_FILENAME, REQUEST_URI, SCRIPT_NAME и DOCUMENT_NAME вместо DOCUMENT_URI, с необходимой информацией о пути или без нее, и в каждом случае мне удавалось заставить ее работать, но я получал это сообщение об ошибке. У кого-нибудь есть идеи, что вызвало бы это?

1 Ответ

0 голосов
/ 09 июня 2010

Я понял это:

<!--#if expr='"$DOCUMENT_URI" = "/contact.html"' -->
    This is the contact page.
<!--#endif -->
...