Получить URL и параметры с помощью SSI

Я должен получить URL и параметры с SSI (только с SSI), но я не могу найти никакого решения.

например:http://www.test.com/abc.html?data=something

и я должен получить значение параметра "data".

2 ответов


<!-- set default value for SSI variable "data" -->    
<!--#set var="data" value="" -->

<!-- get "data" value from URL --> 
<!--#if expr="$QUERY_STRING = /data=([a-zA-Z0-9]+)/" -->
<!--#set var="data" value="" -->
<!--#endif -->

<!-- print the "data" value -->     
<!--#echo var="data" -->

старый вопрос, который я знаю, но я просто наткнулся на него, делая некоторые вещи SSI сам. Я уверен, что вы уже решили свою проблему, но если это не поможет вам, возможно, это сделает кто-то другой. Я предполагаю, что сервер Apache. (Если нет, то я думаю, что это не сработает!)

сначала отказ от ответственности! Я ни в коем случае не Apache, sed или regex master, поэтому я уверен, что следующее можно улучшить, но это может быть началом. Он просто печатает страницу относительно базы сайта и параметр запроса данных.

<!--#echo var="DOCUMENT_URI" -->
<!--#exec cmd="echo '$QUERY_STRING' | sed -n 's/\([^&]*&\)*data=\([^&]*\).*//p'" --> 

Я нашел список переменных среды apache здесь: http://www.zytrax.com/tech/web/env_var.htm, и узнать, что вы можете сделать с этим материалом, как только вы его извлекли смотрите здесь: http://httpd.apache.org/docs/2.0/howto/ssi.html.

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