|
| |||||||||||||||||||||||||
| |||||||||||||||||||||||||
Конфигурирование сервера HTTPD и формат языка HTML
Разобраться стоит с этими характеристиками: Alias - где то должна лежать расшифровка. а сервер будет ее подставлять. Вот только где ? Нужно задавать так:
& - &
" - "
> - >
< - <
>> - >>
<< - <<
(C) - © или ©
(R) - ®
- -
- -
<= - <=
>= - >=
Extra space -
<title> Заголовок всего документа </title>Заголовок 2-го уровня<A HREF="Dokument.html#A1.4.1.1">Ссылка на подраздел в документе</A> <A HREF="#2" taget=newwindow>Ссылка открываемая в другом окне</A> <A NAME = "A1.4.1.1">Так это место должно быть помечено в Документе</A>
Пример
Преформатированный фрагмент текста
Источник
<pre>
Преформатированный фрагмент текста
</pre>
Пример
Преформатированный фрагмент текста в ширину 80
Источник
<pre width="80">
Преформатированный фрагмент текста в ширину 80
</pre>
Пример Устанавливает общий отступ вправо. Вынесенный вправо фрагмент текста Источник Горизонтальная черта <hr> Окончание параграфа <p> Жесткий конец строки <br>
<i></i> Itallic курсив текст <u></u> Underline подчеркнутый Работает только в Netscape 3 <tt></tt> Typewriter текст с фонтом фиксированной ширины <blink></blink> <strike></strike> <em></em> Emphasis. Ударение italic <cite></cite> Titles of books. Цитата italic <code></code> Programm. Программный текст fixed<kbd></kbd> User keyboard entry. bold fixed <samp></samp> Status message fixed <var></var> Variable. italic <strong></strong> Strong emphasis. bold <address></address> Выделяется адрес italic _BODY_ таги срабатывают только если расположены в самом начале документа
<body bgcolor="#000000" text="#ffffff" link="#FFFF00" vlink="#0000ff">
<BODY bgcolor="#000000" LINK="#ff0000" text="#ffddbb" vlink="#aaaaaa"> Пример Источник <basefont size=3> Дальше пойдет текст с фонтом заданного размера <bgsound src=soundfile.au loop=10> а так же background звук <A HREF="Lightweight.html">Low impact<img src="kartinka.xbm"> <img src="kartinka.gif" align=top align=middle> Если нужен текст сбоку от картинки (text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text)<img src="kartinka.jpg" align=left hspace=100> Отступ текста от картинки (text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text, text)
<img src="kartinka.gif" LOWSRC=kartinka_bw.gif АLT="Вверх" height=102 width=50>
Так подкладывают BACKGROUND Пример
Источник Пример
Источник
<IMG SRC="/images/navigation_bar.gif" WIDTH=468 HEIGHT=32 BORDER=0 USEMAP="#navmap" ISMAP> <MAP NAME="navmap"> <AREA COORDS="0,0,63,31" HREF="/index.html"> <AREA COORDS="63,0,136,31" HREF="/comprod/mirror/index.html"> <AREA COORDS="136,0,203,31" HREF="/assist/customer_service"> <AREA COORDS="203,0,267,31" HREF="/toc.html"> <AREA COORDS="267,0,329,31" HREF="/search/index.html"> <AREA COORDS="329,0,415,31" HREF="/ads/index.html"> <AREA COORDS="415,0,466,31" HREF="http://cgi.netscape.com/cgi-bin/showframes.cgi"> <AREA COORDS="0,0,467,31" HREF="/index.html"> </MAP> Клиент открывает tcp соединение с хостом www.host.com на порт (обычно 80) и говорит туда GET /local/url/file/name.html HTTP/1.0
. . . ^M^J - пустая строка - конец заголовков - конец запроса Обратно вываливается ответ сервера:
$ telnet www 80 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. GET /index.html HTTP/1.0И потом два раза нажмите на Enter Полная спецификация лежит, например на www.apache.org
Примеры: The value will often be enclosed in double quotes; many commands only allow a single attribute-value pair. The allowed ELEMENTS are:
The date is: <!--#echo var="DATE_LOCAL"--> The current version of the server <!--#echo var="SERVER_SOFTWARE"--> The CGI gateway version <!--#echo var="GATEWAY_INTERFACE"--> The server name <!--#echo var="SERVER_NAME"--> This file is called: <!--#echo var="DOCUMENT_NAME"--> This file's URI <!--#echo var="DOCUMENT_URI"--> The query string <!--#echo var="QUERY_STRING_UNESCAPED"--> This file was last modified: <!--#echo var="LAST_MODIFIED" --> The size of the unprocessed file <!--#fsize virtual="httpd.txt"--> sample.html was last modified <!--#flastmod virtual="httpd.txt"--> You are using <!--#echo var="HTTP_USER_AGENT"--> You came from <!--#echo var="HTTP_REFERER"--> и внешними, вызываемыми программами - gateeway'ями. Сам CGI-script должен лежать в /home/httpd/cgi-bin тогда его находят (или в других каталогах, описанных в acces.conf Данные передаются в командной строке, через переменные окружения, и через стандартный ввод. Возвращаются на стандартный вывод, в начале должна стоять "волшебная строка" Если добавить в конфигурационный файл /etc/httpd/conf/srm.conf :------------------------ AddType application/x-httpd-cgi .cgi То CGI-скрипты можно будет клась в любой подкаталог дерева документов - с расширением .cgi
Вызывается одна и та же программа, но ей передается 0,1,1 или 2 аргумента: extra path - "добавочный маршрут", идущий вслед за именем экзешника query - длинная строка после знака "?" на extra path работает image map - им передается имя описателя картинки query передается заполненным ISINDEX Параметры передаются в переменных окружения. REMOTE_ADDR=127.0.0.1 REMOTE_HOST=localhost HTTP_REFERER=http://www.ac.msk.su:80/cgi-bin/html-KOI?KSP/bachurin.txt REQUEST_METHOD=GET QUERY_STRING=query PATH_INFO=/marshrut PATH_TRANSLATED=/home/httpd/docs/marshrut SCRIPT_NAME=/cgi-bin/proba HTTP_USER_AGENT=NCSA Mosaic for the X Window System/2.4 libwww/2.12 modifiedА теперь вот как оформляются формы с checkbox'ами: Пример Источник # ISINDEX - параметр запроса передается программе CGI в $1 # В форме METHOD=GET - там вызывается команда которой передается # аргумент в переменной окружения QUERY_STRING # http://hoohoo.ncsa.uiuc.edu/cgi-bin/test-cgi?button1=on&button2=off # А вот как работает POST, и PUT. Дополнительная информация проталкивается клиентом на сервер. Сервер подает ее cgi-программе на стандартный ввод. длина посылаемого файла устанавливается в переменной окружения CONTENT_LENGTH а тип данных - в CONTENT_TYPE FORM ACTION="http://hoohoo.ncsa.uiuc.edu/cgi-bin/test-cgi" METHOD="POST" Пример Источник
<FORM ACTION="/cgi-bin/proba" METHOD="GET">
<INPUT TYPE=hidden NAME="pg" size=0 VALUE="hidden from user information">
^^^^^ поле полезно чтоб хранить информацию о "сеансе"
<INPUT TYPE=checkbox NAME="button" VALUE="on">Press me.<p>
<INPUT TYPE=submit VALUE="Submit">
<INPUT TYPE=reset VALUE="Clear form">
<INPUT TYPE=text NAME=d0 VALUE="" SIZE=12 MAXLENGTH=32>
<INPUT TYPE=password NAME=passwd>
<TEXTAREA NAME="comments" ROWS=2 COLS=60>Текст внутри формы</TEXTAREA>
<SELECT NAME=what MULTIPLE>
<OPTION VALUE=web SELECTED>the Web
<OPTION VALUE=news >Usenet
</SELECT>
</FORM>
Content-type: text/html Если я генерю не содержимое, а только ссылку, то: Location: /path/doc.txt Генерим текст в чистом серверном виде - он поедет клиенту сразу, без дополнительной фильтрации: --- start of output --- HTTP/1.0 200 OK Date: Tuesday, 26-Dec-95 15:17:10 GMT Server: NCSA/1.3 MIME-version: 1.0 Content-type: text/html Last-modified: Tuesday, 24-Dec-95 15:15:41 GMT Content-length: 3132 This is a plaintext document generated on the fly just for you. --- end of output ---Подставляйте туда соответствующие значения переменных $SERVER_PROTOCOL $SERVER_SOFTWARE Автоподстановка URL с timeout'ом. Подставить в начало документа: <META HTTP-EQUIV="Refresh" CONTENT="12; URL=http://www.ras.ru/~moshkow/"> Дальше идет местный HTML-документ - который через 12 секунд будет автоматически заменен на вышеуказанный URL Пример Источник Content-type: text/html Set-Cookie: cookiename=valueofcookie; expires=Saturday, 28-Feb-96 23:59:59 GMT; path=/cgi-bin/mycgiprogram Эта штучка будет автоматом отсылаться в наш сервер клиентом, как только он ее получил
Если сказать так, то клиент останется на старом мест, и не
будет переходить по ссылке order allow,deny allow from all deny from polimos.ras.ru |
|
CITForum © 1997–2025