SSI (пÑогÑаммиÑование)
SSI (Server Side Includes â вклÑÑÐµÐ½Ð¸Ñ Ð½Ð° ÑÑоÑоне ÑеÑвеÑа) â неÑложнÑй ÑзÑк Ð´Ð»Ñ Ð´Ð¸Ð½Ð°Ð¼Ð¸ÑеÑкой «ÑбоÑки» веб-ÑÑÑÐ°Ð½Ð¸Ñ Ð½Ð° ÑеÑвеÑе из оÑделÑнÑÑ
ÑоÑÑавнÑÑ
ÑаÑÑей и вÑдаÑи клиенÑÑ Ð¿Ð¾Ð»ÑÑенного HTML-докÑменÑа. Реализован в веб-ÑеÑвеÑе Apache пÑи помоÑи модÑÐ»Ñ mod_include. ÐклÑÑÑÐ½Ð½Ð°Ñ Ð² наÑÑÑойкаÑ
по ÑмолÑÐ°Ð½Ð¸Ñ Ð²ÐµÐ±-ÑеÑвеÑа возможноÑÑÑ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÐµÑ Ð¿Ð¾Ð´ÐºÐ»ÑÑаÑÑ HTML-ÑайлÑ, поÑÑÐ¾Ð¼Ñ Ð´Ð»Ñ Ð¸ÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¸Ð½ÑÑÑÑкÑий Ñайл должен оканÑиваÑÑÑÑ ÑаÑÑиÑением .shtml, .stm или .shtm
СинÑакÑÐ¸Ñ SSI позволÑÐµÑ Ð²ÐºÐ»ÑÑаÑÑ Ð² ÑекÑÑ ÑÑÑаниÑÑ Ð´ÑÑгие SSI-ÑÑÑаниÑÑ, вÑзÑваÑÑ Ð²Ð½ÐµÑние CGI-ÑкÑипÑÑ, ÑеализовÑваÑÑ ÑÑловнÑе опеÑаÑии (if/else), ÑабоÑаÑÑ Ñ Ð¿ÐµÑеменнÑми и Ñ.п. ÐлагодаÑÑ ÐºÑайней пÑоÑÑоÑе ÑзÑка, ÑбоÑка SSI-ÑÑÑÐ°Ð½Ð¸Ñ Ð¿ÑоиÑÑ Ð¾Ð´Ð¸Ñ Ð¾ÑÐµÐ½Ñ Ð±ÑÑÑÑо, однако многие возможноÑÑи полноÑеннÑÑ ÑзÑков пÑогÑаммиÑованиÑ, напÑимеÑ, ÑабоÑа Ñ Ñайлами, в SSI оÑÑÑÑÑÑвÑÑÑ.
ÐÑделÑнÑе ÑлеменÑÑ ÑинÑакÑиÑа SSI иÑполÑзÑÑÑÑÑ Ð¸ в дÑÑÐ³Ð¸Ñ ÑкÑипÑовÑÑ ÑзÑÐºÐ°Ñ , напÑÐ¸Ð¼ÐµÑ Ð² ASP.
[пÑавиÑÑ] ÐÑновнÑе ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ SSI
- config â ÑÑÑÐ°Ð½Ð°Ð²Ð»Ð¸Ð²Ð°ÐµÑ ÑоÑÐ¼Ð°Ñ ÑообÑений об оÑÐ¸Ð±ÐºÐ°Ñ , Ð´Ð°Ñ Ð¸ ÑазмеÑа
- set â ÑÑÑÐ°Ð½Ð°Ð²Ð»Ð¸Ð²Ð°ÐµÑ Ð·Ð½Ð°Ñение пеÑеменной
- printenv â вÑÐ²Ð¾Ð´Ð¸Ñ ÑпиÑок пеÑеменнÑÑ Ð¾ÐºÑÑжениÑ
- echo â вÑÑавлÑÐµÑ Ð·Ð½Ð°Ñение пеÑеменной
- flastmod â вÑÑавлÑÐµÑ Ð´Ð°ÑÑ Ð¸ вÑÐµÐ¼Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñайла
- fsize â вÑÑавлÑÐµÑ ÑÐ°Ð·Ð¼ÐµÑ Ñайла
- include â вÑÑавлÑÐµÑ ÑодеÑжимое дÑÑгого Ñайла
- if, elif, else, endif â ÑÑловнÑе опеÑаÑоÑÑ
[пÑавиÑÑ] ÐпиÑание
config â конÑÑолиÑÑÐµÑ ÑазлиÑнÑе аÑпекÑÑ ÑканиÑованиÑ. Ðго аÑÑибÑÑами могÑÑ Ð±ÑÑÑ:
- errmsg â ÑÑÑÐ°Ð½Ð°Ð²Ð»Ð¸Ð²Ð°ÐµÑ ÑообÑение, вÑводÑÑееÑÑ Ð¿Ñи возникновении оÑибки; в болÑÑинÑÑве ÑлÑÑаев ÑелеÑообÑазно ÑÑÑановиÑÑ Ð² пÑÑÑÑÑ ÑÑÑокÑ;
- sizefmt â ÑÑÑÐ°Ð½Ð°Ð²Ð»Ð¸Ð²Ð°ÐµÑ ÑоÑмаÑ, в коÑоÑом бÑÐ´ÐµÑ Ð²ÑводиÑÑÑÑ ÑÐ°Ð·Ð¼ÐµÑ Ñайла. ФоÑÐ¼Ð°Ñ ÑооÑвеÑÑÑвÑÐµÑ Ð¿ÐµÑÐµÐ´Ð°Ð²Ð°ÐµÐ¼Ð¾Ð¼Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾ÑеÑной ÑÑнкÑии strftime;
- timefmt â ÑÑÑÐ°Ð½Ð°Ð²Ð»Ð¸Ð²Ð°ÐµÑ ÑоÑмаÑ, в коÑоÑом бÑÐ´ÐµÑ Ð²ÑводиÑÑÑÑ Ð´Ð°Ñа.
ÐеÑеменнÑе Ð´Ð»Ñ sizefmt:
<!--#config sizefmt="abbrev"--> ÐÑÐ²Ð¾Ð´Ð¸Ñ ÑÐ°Ð·Ð¼ÐµÑ Ñайла в килобайÑÐ°Ñ : (17k)
<!--#config sizefmt="bytes"--> ÐÑÐ²Ð¾Ð´Ð¸Ñ ÑÐ°Ð·Ð¼ÐµÑ Ñайла в байÑÐ°Ñ (17,076)
ÐеÑеменнÑе Ð´Ð»Ñ timefmt:
| ФоÑÐ¼Ð°Ñ | ÐпиÑание | ÐÑÐ¸Ð¼ÐµÑ |
|---|---|---|
| %a | ÐÑаÑкое название Ð´Ð½Ñ Ð½ÐµÐ´ÐµÐ»Ð¸ | Mon |
| %A | Ðолное название Ð´Ð½Ñ Ð½ÐµÐ´ÐµÐ»Ð¸ | Monday |
| %b | ÐббÑевиаÑÑÑа Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ñ Ð¼ÐµÑÑÑа | Dec |
| %B | Ðолное название меÑÑÑа | December |
| %d | ÐÐµÐ½Ñ Ð¼ÐµÑÑÑа | 01 (не 1) |
| %D | ÐаÑа в ÑоÑмаÑе "%m/%d/%y" | 12/31/99 |
| %e | ÐÐµÐ½Ñ Ð¼ÐµÑÑÑа | 13 |
| %H | ЧаÑÑ Ð² 24-ÑаÑовом ÑоÑмаÑе | 13 |
| %I | ЧаÑÑ Ð² 12-ÑаÑовом ÑоÑмаÑе | 01 |
| %j | ÐÐµÐ½Ñ Ð³Ð¾Ð´Ð° | 235 |
| %m | ÐÐ¾Ð¼ÐµÑ Ð¼ÐµÑÑÑа | 01 |
| %M | ÐинÑÑÑ | 03 |
| %p | AM/PM (до полÑднÑ/поÑле) | AM |
| %r | ÐÑÐµÐ¼Ñ Ð² ÑоÑмаÑе "I:M:S p" | 11:35:46 PM |
| %S | СекÑÐ½Ð´Ñ | 34 |
| %s | ÐÑÐµÐ¼Ñ Ð² ÑекÑÐ½Ð´Ð°Ñ Ñ 01.01.1970 | 957228726 |
| %T | ÐÑÐµÐ¼Ñ Ð² ÑоÑмаÑе "%H:%M:%S" | 14:05:34 |
| %U | ÐÐµÐ´ÐµÐ»Ñ Ð³Ð¾Ð´Ð° | 16 |
| %w | ÐÐ¾Ð¼ÐµÑ Ð´Ð½Ñ Ð½ÐµÐ´ÐµÐ»Ð¸ | 4 |
| %y | Ðод в ÑоÑмаÑе ÐÐ | 99 |
| %Y | Ðод в ÑоÑмаÑе ÐÐÐÐ | 1999 |
| %Z | ÐÑÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ð·Ð¾Ð½Ð° | MSK |
ÐбÑаÑиÑе внимание на Ñо, ÑÑо ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ #config sizefmt и #config timefmt влиÑÑÑ Ð½Ð° вÑе ÑвÑзаннÑе Ñ Ð½Ð¸Ð¼Ð¸ SSI-ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð¾Ñ Ñого меÑÑа, оÑкÑда они бÑли вÑÐ·Ð²Ð°Ð½Ñ Ð¸ до Ñамого конÑа ÑÑÑаниÑÑ. ÐоÑÑÐ¾Ð¼Ñ ÐºÐ°Ð¶Ð´Ñй вÑзов команд #flastmod и #fsize лÑÑÑе ÑнабжаÑÑ Ñвоей командой #config.
set â ÑÑÑÐ°Ð½Ð°Ð²Ð»Ð¸Ð²Ð°ÐµÑ Ð·Ð½Ð°Ñение пеÑеменной. Ðе аÑÑибÑÑами ÑвлÑÑÑÑÑ var, опÑеделÑÑÑий Ð¸Ð¼Ñ Ð¿ÐµÑеменной, и value, опÑеделÑÑÑий ее знаÑение.
- ÐодÑÑановка пеÑеменнÑÑ
ÐодÑÑановка пеÑеменнÑÑ Ð¿ÑоизводиÑÑÑ Ð²Ð½ÑÑÑи заклÑÑеннÑÑ Ð² кавÑÑки ÑÑÑок в болÑÑинÑÑве аÑгÑменÑов SSI диÑекÑив. Ð ÑÑÐ¸Ñ ÑлÑÑаÑÑ Ð·Ð½Ð°Ðº доллаÑа можно вÑÑавиÑÑ, пÑедваÑив его ÑлеÑом:
<!--#if expr="$a = \$test" -->
ÐÐ»Ñ Ð¿ÑедоÑвÑаÑÐµÐ½Ð¸Ñ Ð´Ð²ÑÑмÑÑленноÑÑи можно заклÑÑаÑÑ Ð¸Ð¼Ñ Ð¿ÐµÑеменной в ÑигÑÑнÑе Ñкобки:
<!--#set var="Zed" value="${a}bc_${abc}" -->
Ð ÑезÑлÑÑаÑе Ñакого пÑиÑÐ²Ð¾ÐµÐ½Ð¸Ñ Ð¿ÐµÑÐµÐ¼ÐµÐ½Ð½Ð°Ñ Zed бÑÐ´ÐµÑ Ð¸Ð¼ÐµÑÑ Ð·Ð½Ð°Ñение «Xbc_Y», еÑли пеÑÐµÐ¼ÐµÐ½Ð½Ð°Ñ a Ñавна X, а пеÑÐµÐ¼ÐµÐ½Ð½Ð°Ñ abc Ñавна Y.
printenv â ÐÑÐ²Ð¾Ð´Ð¸Ñ ÑпиÑок Ñак назÑваемÑÑ Â«Ð¿ÐµÑеменнÑÑ Ð¾ÐºÑÑжениÑ» («environment variables») Ñ Ð¸Ñ Ð·Ð½Ð°ÑениÑми. ÐÑзÑваеÑÑÑ Ð±ÐµÐ· паÑамеÑÑов.
ÐеÑеменнÑе окÑÑжениÑ:
- DOCUMENT_ROOT (название оÑновной папки Ð´Ð»Ñ Ð²ÐµÐ±ÑÑÑÐ°Ð½Ð¸Ñ Ð½Ð° ÑеÑвеÑе, обÑÑно ваÑа папка public_html и пÑÑÑ Ðº ней)
- USER_AGENT и HTTP_USER_AGENT (название бÑаÑзеÑа, коÑоÑÑм полÑзÑеÑÑÑ Ð¿Ð¾ÑеÑиÑелÑ)
- REMOTE_ADDR (IP-адÑÐµÑ Ð¿Ð¾ÑеÑиÑелÑ)
- REMOTE_HOST (адÑÐµÑ Ð¿Ð¾ÑеÑиÑÐµÐ»Ñ Ð² ноÑмалÑной ÑоÑме â напÑимеÑ, adsl53.peterlink.ru)
- SERVER_ADDR (IP-адÑÐµÑ Ð²Ð°Ñего ÑайÑа)
- SERVER_NAME и HTTP_HOST (адÑÐµÑ ÑеÑвеÑа, Ñипа userguide.webservis.ru),
- DOCUMENT_URI, REQUEST_URI и SCRIPT_NAME (запÑоÑÐµÐ½Ð½Ð°Ñ Ð²Ð°Ð¼Ð¸ ÑÑÑаниÑа, Ñипа /examples/mysqlexample.shtml.),
- DOCUMENT_NAME (Ð¸Ð¼Ñ Ñайла (без каÑалогов) докÑменÑа, запÑоÑенного полÑзоваÑелем),
- SCRIPT_FILENAME (полнÑй пÑÑÑ Ðº вебÑÑÑаниÑе на ÑеÑвеÑе. ÐапÑÐ¸Ð¼ÐµÑ /home/home-webservis/public_html/ и Ñак далее),
- SERVER_SOFTWARE (название ÑеÑвеÑа, напÑимеÑ, Apache/1.3.2 (Unix))
- SERVER_ADMIN (поÑÑовÑй адÑÐµÑ Ð²Ð»Ð°Ð´ÐµÐ»ÑÑа ÑеÑвеÑа, ÑказаннÑй пÑи ÑÑÑановке),
- DATE_LOCAL (ÑегоднÑÑние вÑÐµÐ¼Ñ Ð¸ даÑа в ваÑем ÑаÑовом поÑÑе(Ð´Ð»Ñ ÑеÑвеÑа)),
- DATE_GMT (ÑекÑÑее вÑÐµÐ¼Ñ Ð¿Ð¾ ÐÑинвиÑÑ),
- LAST_MODIFIED (даÑа поÑледней модиÑикаÑии докÑменÑа, запÑоÑенного полÑзоваÑелем. То еÑÑÑ Ð²Ð¾ вложенном SSI ÑÑа пеÑÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ð±ÑÐ´ÐµÑ ÑодеÑжаÑÑ Ð¸Ð¼Ñ Â«Ð³Ð»Ð°Ð²Ð½Ð¾Ð³Ð¾Â» докÑменÑа, а не вложенного).
- HTTP_COOKIE (СÑÑока Cookie ÑÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ð°Ñ Ð´Ð»Ñ ÑекÑÑего домена.).
echo â вÑÐ²Ð¾Ð´Ð¸Ñ Ð·Ð½Ð°Ñение ÑÑÑановленной пеÑеменной SSI. ÐопÑÑÑимÑе аÑÑибÑÑÑ:
- var â (обÑзаÑелÑнÑй) Ð¸Ð¼Ñ Ð²Ñводимой пеÑеменной;
- encoding â (необÑзаÑелÑнÑй) пеÑекодиÑовка знаÑÐµÐ½Ð¸Ñ Ð¿ÐµÑеменной пеÑед вÑводом. ÐейÑÑвÑÐµÑ Ð² веÑÑиÑÑ
Apache 1.3.12 и вÑÑе. РвеÑÑиÑÑ
Apache 2.2.6 и вÑÑе по ÑмолÑÐ°Ð½Ð¸Ñ ÑÐ¸Ð¼Ð²Ð¾Ð»Ñ ÐºÐ¾Ð´Ð¸ÑÑÑÑÑÑ Ð² windows-1252 из-за Ñего ssi пеÑеменнÑе окÑÑÐ¶ÐµÐ½Ð¸Ñ Ñ ÑÑÑÑкими Ñиволами пÑи оÑобÑажении в доÑкÑменÑе поÑÑÑÑÑÑ Ð¸ вÑглÑдÑÑ ÐºÐ°Ðº кÑакозÑбÑÑ, во избежание ÑÑого вÑегда ÑказÑвайÑе encoding="none". ÐбÑаÑиÑе внимание, ÑÑо бÑдÑÑи заданнÑм, ÑÑÐ¾Ñ Ð°ÑÑибÑÑ Ð´Ð¾Ð»Ð¶ÐµÐ½ пÑедÑеÑÑвоваÑÑ Ð°ÑÑибÑÑÑ var. ÐаÑианÑÑ Ð·Ð½Ð°Ñений аÑÑибÑÑа encoding:
- entity â (по ÑмолÑаниÑ) бÑÐ´ÐµÑ Ð¿Ñоизведено пÑеобÑазование ÑпеÑиалÑнÑÑ HTML-Ñимволов в ÑÑÑноÑÑи;
- url â бÑÐ´ÐµÑ Ð¿Ñоизведено Ñ.н. %-пÑеобÑазование, Ñо еÑÑÑ Ð¿Ñигодное Ð´Ð»Ñ Ñказание в ÑÑÑоке URL;
- none â не бÑÐ´ÐµÑ Ð¿ÑоизводиÑÑÑÑ Ð½Ð¸ÐºÐ°ÐºÐ¸Ñ Ð¿ÑеобÑазований.
flastmod â вÑÐ²Ð¾Ð´Ð¸Ñ Ð´Ð°ÑÑ Ð¿Ð¾Ñледней модиÑикаÑии Ñайла в опÑеделенном Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ timefmt ÑоÑмаÑе. ÐÑÑибÑÑÑ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¸ÑÐ½Ñ Ð°ÑÑибÑÑам fsize.
fsize â вÑÐ²Ð¾Ð´Ð¸Ñ ÑÐ°Ð·Ð¼ÐµÑ Ñайла в опÑеделенном Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ sizefmt ÑоÑмаÑе. ÐопÑÑÑимÑе аÑÑибÑÑÑ:
- file â опÑеделÑÐµÑ Ð¿ÑÑÑ Ðº ÑайлÑ, оÑноÑиÑелÑно ÑканиÑÑемого докÑменÑа;
- virtual â опÑеделÑÐµÑ ÑÑандаÑÑнÑй кодиÑованнÑй URL, оÑноÑиÑелÑно ÑканиÑÑемого докÑменÑа, или, пÑи налиÑии в наÑале ÑлеÑа (/) â оÑноÑиÑелÑно коÑÐ½Ñ Ð´Ð¾ÐºÑменÑов Ñзла.
include â вклÑÑÐ°ÐµÑ ÑекÑÑ Ð´ÑÑгого докÑменÑа или Ñайла в ÑканиÑÑемÑй Ñайл. РвклÑÑÐ°ÐµÐ¼Ð¾Ð¼Ñ ÑÐ°Ð¹Ð»Ñ Ð¿ÑименÑÑÑÑÑ Ð²Ñе ÑÑÑановленнÑе пÑавила огÑаниÑÐµÐ½Ð¸Ñ Ð´Ð¾ÑÑÑпа. ÐÑли Ð´Ð»Ñ ÐºÐ°Ñалога, из коÑоÑого вклÑÑаеÑÑÑ Ñайл, ÑÑÑановлена опÑÐ¸Ñ IncludesNOEXEC, и вклÑÑение данного докÑменÑа пÑивело Ð±Ñ Ðº запÑÑÐºÑ Ð¿ÑогÑаммÑ, Ñо докÑÐ¼ÐµÐ½Ñ Ð½Ðµ вклÑÑаеÑÑÑ, и вÑводиÑÑÑ ÑообÑение об оÑибке. CGI ÑÑенаÑии вÑзÑваÑÑÑÑ, как обÑÑно Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ URL, коÑоÑÑй Ð¼Ð¾Ð¶ÐµÑ ÑодеÑжаÑÑ ÐºÐ¾Ð´Ð¸ÑованнÑÑ ÑÑÑÐ¾ÐºÑ Ð·Ð°Ð¿ÑоÑа (query string). Ðоложение Ñайла ÑказÑваеÑÑÑ Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ Ð°ÑÑибÑÑов:
- file â ÑказÑÐ²Ð°ÐµÑ Ð¿ÑÑÑ, оÑноÑиÑелÑно ÑканиÑÑемого докÑменÑа; пÑÑÑ Ð½Ðµ Ð¼Ð¾Ð¶ÐµÑ ÑодеÑжаÑÑ ../ и не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð°Ð±ÑолÑÑнÑм пÑÑем; вÑегда пÑедпоÑÑиÑелÑнее иÑполÑзоваÑÑ Ð°ÑÑибÑÑ virtual;
- virtual â ÑодеÑÐ¶Ð¸Ñ ÐºÐ¾Ð´Ð¸ÑованнÑй URL, оÑноÑиÑелÑнÑй или абÑолÑÑнÑй; URL не Ð¼Ð¾Ð¶ÐµÑ ÑодеÑжаÑÑ Ð¸Ð¼Ñ Ð¿ÑоÑокола или Ð¸Ð¼Ñ Ñ Ð¾ÑÑа, и Ð¼Ð¾Ð¶ÐµÑ ÑодеÑжаÑÑ ÑÑÑÐ¾ÐºÑ Ð·Ð°Ð¿ÑоÑа.
[пÑавиÑÑ] УÑловнÑе опеÑаÑоÑÑ
ÐазовÑми ÑлеменÑами конÑÑÐ¾Ð»Ñ ÑвлÑÑÑÑÑ:
<!--#if expr="test_condition" --> <!--#elif expr="test_condition" --> <!--#else --> <!--#endif -->
ÐлеменÑÑ elif и else ÑвлÑÑÑÑÑ Ð½ÐµÐ¾Ð±ÑзаÑелÑнÑми.
ÐÐ»ÐµÐ¼ÐµÐ½Ñ endif заканÑÐ¸Ð²Ð°ÐµÑ ÑÐ»ÐµÐ¼ÐµÐ½Ñ if и ÑвлÑеÑÑÑ Ð¾Ð±ÑзаÑелÑнÑм.
test_condition Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¾Ð´Ð½Ð¸Ð¼ из ÑледÑÑÑÐ¸Ñ :
- string â иÑÑинно, еÑли string не пÑÑÑа;
- string1 = string2
- string1 != string2
- string1 < string2
- string1 <= string2
- string1 > string2
- string1 >= string2
- вÑÑ Ð²ÑÑепеÑеÑиÑленное иÑÑинно, еÑли вÑполнÑеÑÑÑ ÑÑловие ÑÑавнениÑ;
- string1 ~ string2 â иÑÑинно, еÑли string1 ÑодеÑÐ¶Ð¸Ñ Ð² Ñебе string2;
- string1 =~ /string2/ â иÑÑинно, еÑли string1 ÑодеÑÐ¶Ð¸Ñ Ð² Ñебе string2, а string2 â ÑегÑлÑÑное вÑÑажение Unix (Ñм. ниже).
ÐÑли string2 Ð¸Ð¼ÐµÐµÑ ÑоÑÐ¼Ñ /string/, Ñо Ñогда она инÑеÑпÑеÑиÑÑеÑÑÑ, как ÑегÑлÑÑное вÑÑажение. ÐÑ
ÑинÑакÑÐ¸Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¸Ñен ÑинÑакÑиÑÑ ÑегÑлÑÑнÑÑ
вÑÑажений в Unix команде egrep;(Ñм. РегÑлÑÑнÑе вÑÑажениÑ)
(test_condition) â иÑÑинно, еÑли test_condition иÑÑинно;
! test_condition â иÑÑинно, еÑли test_condition ложно;
test_condition1 && test_condition2 â иÑÑинно, еÑли как test_condition1, Ñак и test_condition2 иÑÑиннÑ;
test_condition1 || test_condition2 â иÑÑинно, еÑли Ñ
оÑÑ Ð±Ñ test_condition1 или test_condition2 иÑÑинно.
«=" и "!=" имеÑÑ Ð±Ð¾Ð»ÑÑий пÑиоÑиÑеÑ, Ñем "&&» и «||», а «!» Ð¸Ð¼ÐµÐµÑ Ð½Ð°Ð¸Ð²ÑÑÑий пÑиоÑиÑеÑ.
ÐÑе, ÑÑо не ÑаÑпознаеÑÑÑ, как пеÑеменнаÑ, ÑÑиÑаеÑÑÑ ÑÑÑокой. ÐÑли ÑÑÑока Ð¸Ð¼ÐµÐµÑ Ð¿ÑÐ¾Ð±ÐµÐ»Ñ Ð¸Ð»Ð¸ ÑÐ¸Ð¼Ð²Ð¾Ð»Ñ ÑабÑлÑÑии, Ñо ее надо заклÑÑаÑÑ Ð² кавÑÑки.
Ð ÑÑм ÑÑÐ¾Ð¸Ñ Ð¿Ð¾Ð¼Ð½Ð¸ÑÑ, Ñак ÑÑо о Ñом, ÑÑо лÑÑÑе не иÑполÑзоваÑÑ SSI-ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð¿Ñи Ñоздании ÑÑÑÐ°Ð½Ð¸Ñ Ð² ÑедакÑоÑаÑ
Ñипа Front Page â они иÑ
обÑÑно не понимаÑÑ Ð¸ вÑкидÑваÑÑ, и о Ñом, ÑÑо Ð¾Ð´Ð½Ñ SSI-ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð½ÐµÐ»ÑÐ·Ñ Ð²ÑзваÑÑ Ð¸Ð· дÑÑгой (как нелÑÐ·Ñ Ð²ÑзваÑÑ SSI-ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð¸Ð· ÑкÑипÑа, и ÑкÑÐ¸Ð¿Ñ Ð¸Ð· ÑкÑипÑа).
[пÑавиÑÑ] ÐÑимеÑÑ
[пÑавиÑÑ] Ðадание ÑообÑÐµÐ½Ð¸Ñ Ð¾Ð±ÑабоÑÑика оÑибок
<!--#config errmsg="[ÐÑи оÑкÑÑÑии ÑÑÑаниÑÑ Ð¿ÑоизоÑла оÑибка. ÐожалÑйÑÑа, ÑообÑиÑе об ÑÑом владелÑÑÑ ÑайÑа.]" -->
[пÑавиÑÑ] Ðадание ÑоÑмаÑа вÑвода даÑÑ Ð¸ вÑемени
<!--#config timefmt="%d/%m/%y" --> ÐÑведеÑ: 03/07/06 <!--#config timefmt="%d/%m/%Y, %H:%M:%S" --> ÐÑведеÑ: 03/07/2006, 20:16:33
[пÑавиÑÑ] Ðадание пеÑеменнÑÑ
http://<!--#echo var="HTTP_HOST"--><!--#echo var="DOCUMENT_URI"--> ÐÑведеÑ: http://ru.wikipedia.org/w/index.php?title=SSI&action=edit§ion=5
[пÑавиÑÑ] ÐÑÑавка даÑÑ Ð¼Ð¾Ð´Ð¸ÑикаÑии Ñайла
<!--#flastmod file="file.html" -->
[пÑавиÑÑ] ÐÑÑавка ÑодеÑжимого Ñайла
<!--#include file="footer.html" --> <!--#include virtual="header.asp" --> <!--#include virtual="/right.links.txt" -->
[пÑавиÑÑ] ÐÑовеÑка ÑÑловиÑ
<!--#if expr="test_condition" --> <!--#elif expr="test_condition" --> <!--#else --> <!--#endif -->
| ÐÑо незавеÑÑÑÐ½Ð½Ð°Ñ ÑÑаÑÑÑ Ð¾ компÑÑÑеÑнÑÑ ÑзÑÐºÐ°Ñ . ÐÑ Ð¼Ð¾Ð¶ÐµÑе помоÑÑ Ð¿ÑоекÑÑ, иÑпÑавив и дополнив еÑ. |
