<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://miac.volmed.org.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Roduc</id>
	<title>Wiki МИАЦ ВО - Вклад [ru]</title>
	<link rel="self" type="application/atom+xml" href="https://miac.volmed.org.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Roduc"/>
	<link rel="alternate" type="text/html" href="https://miac.volmed.org.ru/wiki/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/Roduc"/>
	<updated>2026-04-09T07:18:26Z</updated>
	<subtitle>Вклад</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://miac.volmed.org.ru/wiki/index.php?title=%D0%9F%D1%80%D0%B8%D0%BD%D1%83%D0%B4%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D0%B2%D0%BE%D1%81%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_InnoDB&amp;diff=3179</id>
		<title>Принудительное восстановление InnoDB</title>
		<link rel="alternate" type="text/html" href="https://miac.volmed.org.ru/wiki/index.php?title=%D0%9F%D1%80%D0%B8%D0%BD%D1%83%D0%B4%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D0%B2%D0%BE%D1%81%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_InnoDB&amp;diff=3179"/>
		<updated>2013-03-04T11:33:53Z</updated>

		<summary type="html">&lt;p&gt;Roduc: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Статья взята [http://dev.mysql.com/doc/refman/4.1/en/forcing-recovery.html Forcing InnoDB Recovery]&lt;br /&gt;
*Попробовал сделать перевод, но что то плохо у меня это получается (плохой их меня переводчик), так что оставил оригинальный текст, если кто то поможет с переводом - буду очень рад.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://downloadranking.com/product_detail.php/pid/15370-3/pa/SiteVault---Backup-FTP---MySQL---5-Sites  Принудительное восстановление InnoDB]&lt;br /&gt;
&lt;br /&gt;
===1 SRV_FORCE_IGNORE_CORRUPT (Игнорировать повреждения)===&lt;br /&gt;
&lt;br /&gt;
Позволяет запустить сервер, даже если обнаружаться повреждения базы. Попытайтесь сделать &#039;&#039;&#039;SELECT * FROM tbl_name&#039;&#039;&#039;, что бы перескочить через поврежденные индексные записи и страницы, что поможет сделать дамп таблиц.&lt;br /&gt;
&lt;br /&gt;
Let the server run even if it detects a corrupt page. Try to make &#039;&#039;&#039;SELECT * FROM tbl_name&#039;&#039;&#039; jump over corrupt index records and pages, which helps in dumping tables.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://downloadranking.com/product_detail.php/pid/15370-3/pa/SiteVault---Backup-FTP---MySQL---5-Sites  Принудительное восстановление InnoDB]&lt;br /&gt;
&lt;br /&gt;
===2 SRV_FORCE_NO_BACKGROUND (Запретить теневые процессы)===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Предотвращает запуск основного подпроцесса. Если сбой произошел во время процесса восстановления, это значение параметра предотвратит это.&lt;br /&gt;
&lt;br /&gt;
Prevent the main thread from running. If a crash would occur during the purge operation, this recovery value prevents it.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://downloadranking.com/product_detail.php/pid/15370-3/pa/SiteVault---Backup-FTP---MySQL---5-Sites  Принудительное восстановление InnoDB]&lt;br /&gt;
&lt;br /&gt;
===3 (SRV_FORCE_NO_TRX_UNDO)===&lt;br /&gt;
&lt;br /&gt;
Не запускать процесс отката транзакций после восстановления&lt;br /&gt;
&lt;br /&gt;
Do not run transaction rollbacks after recovery.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://downloadranking.com/product_detail.php/pid/15370-3/pa/SiteVault---Backup-FTP---MySQL---5-Sites  Принудительное восстановление InnoDB] &lt;br /&gt;
&lt;br /&gt;
===4 (SRV_FORCE_NO_IBUF_MERGE)===&lt;br /&gt;
&lt;br /&gt;
Запретить также выполнение insert buffer merge операций. Если они приведут к разрушению, то не делайте их. Не выполняйте подсчет статистики таблиц. &lt;br /&gt;
&lt;br /&gt;
Prevent also insert buffer merge operations. If they would cause a crash, do not do them. Do not calculate table statistics. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://downloadranking.com/product_detail.php/pid/15370-3/pa/SiteVault---Backup-FTP---MySQL---5-Sites  Принудительное восстановление InnoDB]&lt;br /&gt;
&lt;br /&gt;
===5 (SRV_FORCE_NO_UNDO_LOG_SCAN)===&lt;br /&gt;
Не смотреть на логи восстановления, при старте базы данных: &#039;&#039;&#039;InnoDB&#039;&#039;&#039; считает даже незавершенные до выключения транзакции как завершенные.&lt;br /&gt;
&lt;br /&gt;
Do not look at undo logs when starting the database: &#039;&#039;&#039;InnoDB&#039;&#039;&#039; treats even incomplete transactions as committed.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://downloadranking.com/product_detail.php/pid/15370-3/pa/SiteVault---Backup-FTP---MySQL---5-Sites  Принудительное восстановление InnoDB]&lt;br /&gt;
&lt;br /&gt;
===6 (SRV_FORCE_NO_LOG_REDO)===&lt;br /&gt;
&lt;br /&gt;
Do not do the log roll-forward in connection with recovery. &lt;br /&gt;
&lt;br /&gt;
Starting from MySQL 3.23.53 and 4.0.4, you can &#039;&#039;&#039;SELECT&#039;&#039;&#039; from tables to dump them, or &#039;&#039;&#039;DROP&#039;&#039;&#039; or &#039;&#039;&#039;CREATE&#039;&#039;&#039; a table even if forced recovery is used. If you know that a certain table is causing a crash in rollback, you can drop it. You can use this also to stop a runaway rollback caused by a failing mass import or &#039;&#039;&#039;ALTER TABLE&#039;&#039;&#039;. You can kill the &#039;&#039;&#039;mysqld&#039;&#039;&#039; process and &#039;&#039;&#039;set innodb_force_recovery&#039;&#039;&#039; to &#039;&#039;&#039;3&#039;&#039;&#039; to bring the database up without the rollback, then &#039;&#039;&#039;DROP&#039;&#039;&#039; the table that is causing the runaway rollback. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;В обычных условиях база данных не должна использоваться при параметре &#039;&#039;&#039;innodb_force_recovery&#039;&#039;&#039;, отличном от нуля&#039;&#039;. Как защитная мера, InnoDB не дает пользователям выполнять команды &#039;&#039;&#039;INSERT, UPDATE&#039;&#039;&#039;, или &#039;&#039;&#039;DELETE&#039;&#039;&#039;, когда &#039;&#039;&#039;innodb_force_recovery&#039;&#039;&#039; больше 0.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;The  database must not otherwise be used with any non-zero value of &#039;&#039;&#039;innodb_force_recovery&#039;&#039;&#039;&#039;&#039;. As a safety measure, InnoDB prevents users from performing &#039;&#039;&#039;INSERT, UPDATE&#039;&#039;&#039;, or &#039;&#039;&#039;DELETE&#039;&#039;&#039; operations when &#039;&#039;&#039;innodb_force_recovery&#039;&#039;&#039; is greater than 0.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://downloadranking.com/product_detail.php/pid/15370-3/pa/SiteVault---Backup-FTP---MySQL---5-Sites  Принудительное восстановление InnoDB]&lt;/div&gt;</summary>
		<author><name>Roduc</name></author>
	</entry>
	<entry>
		<id>https://miac.volmed.org.ru/wiki/index.php?title=%D0%9F%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_VDA_%D0%BF%D0%B0%D1%82%D1%87%D0%B0_(%D0%BE%D0%B3%D1%80%D0%B0%D0%BD%D0%B8%D1%87%D0%B5%D0%BD%D0%B8%D1%8F_%D1%80%D0%B0%D0%B7%D0%BC%D0%B5%D1%80%D0%BE%D0%B2_%D0%B2%D0%B8%D1%80%D1%82%D1%83%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D1%85_%D1%8F%D1%89%D0%B8%D0%BA%D0%BE%D0%B2)_%D0%BA_Postfix&amp;diff=3178</id>
		<title>Подключение VDA патча (ограничения размеров виртуальных ящиков) к Postfix</title>
		<link rel="alternate" type="text/html" href="https://miac.volmed.org.ru/wiki/index.php?title=%D0%9F%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_VDA_%D0%BF%D0%B0%D1%82%D1%87%D0%B0_(%D0%BE%D0%B3%D1%80%D0%B0%D0%BD%D0%B8%D1%87%D0%B5%D0%BD%D0%B8%D1%8F_%D1%80%D0%B0%D0%B7%D0%BC%D0%B5%D1%80%D0%BE%D0%B2_%D0%B2%D0%B8%D1%80%D1%82%D1%83%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D1%85_%D1%8F%D1%89%D0%B8%D0%BA%D0%BE%D0%B2)_%D0%BA_Postfix&amp;diff=3178"/>
		<updated>2013-03-04T06:32:27Z</updated>

		<summary type="html">&lt;p&gt;Roduc: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;После долгих попыток настроить ограничение размеров почтовых ящиков, выяснилось, что хоть patch [http://vda.sourceforge.net/ VDA] входит в состав пакета postfix-2.4.5-2mdv2008.0.rpm, но он не подключен в spec файле и поэтому пакет собран без его поддержки.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://www.downloadranking.com  Подключение VDA патча]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Проверка==&lt;br /&gt;
&#039;&#039;&#039;Prefer&#039;&#039;&#039; с форума http://www.postfix.ru предложил (см [http://www.postfix.ru/viewtopic.php?p=10735#10735 тут])&lt;br /&gt;
&lt;br /&gt;
Можно предложить следующий совет тем кто установил Postfix из RPM или других бинарных дистрибутивов и хотел бы      убедится что патч VDA был применен.&amp;lt;br /&amp;gt; &lt;br /&gt;
Надо просто проверить &amp;quot;понимает&amp;quot; ли Postfix дополнительные параметры вводимые патчем. Например параметр virtual_mailbox_limit_maps (его нет в исходной конфигурации).&amp;lt;br /&amp;gt;&lt;br /&gt;
Выполним команду &amp;lt;pre&amp;gt;$ postconf virtual_mailbox_limit_maps.&amp;lt;/pre&amp;gt;&lt;br /&gt;
Или посмотрим текстовые строки в теле postconf:&lt;br /&gt;
&amp;lt;pre&amp;gt;$ strings /usr/sbin/postconf | grep virtual_mailbox_limit_maps&amp;lt;/pre&amp;gt;&lt;br /&gt;
Если результат положительный значит патч был наложен.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://www.downloadranking.com  Подключение VDA патча]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Подготовка==&lt;br /&gt;
#Идем в репозитарий пакетов, например [ftp://ftp.mandriva.ru/mandriva/official сюда], выкачиваем и устанавливаем пакет postfix-*.src.rpm&lt;br /&gt;
#В Manriva 2010.0 этот патч уже входит в исходники, но не установлен, так что у кого Mandriva 2010.0, качать ничего не надо. Идем на сайт [http://vda.sourceforge.net/ VDA] и выкачиваем патч VDA к нашей версии Postfix, в данном случае  postfix-2.4.5-vda-ng.patch.gz и затем копируем в папку /usr/src/rpm/SOURCES (~/rpmbuild/SOURCES). &lt;br /&gt;
#Редактируем файл /usr/src/rpm/SPECS/postfix.spec (~/rpmbuild/SPECS/postfix.spec)&lt;br /&gt;
Находим строку&lt;br /&gt;
&amp;lt;pre&amp;gt;%bcond_with VDA&amp;lt;/pre&amp;gt;&lt;br /&gt;
И заменяем на &lt;br /&gt;
&amp;lt;pre&amp;gt;%bcond_without VDA&amp;lt;/pre&amp;gt;&lt;br /&gt;
Находим строку&lt;br /&gt;
&amp;lt;pre&amp;gt;Patch9: http://web.onda.com.br/nadal/postfix/VDA/postfix-*-vda.patch&amp;lt;/pre&amp;gt;&lt;br /&gt;
И заменяем на &lt;br /&gt;
&amp;lt;pre&amp;gt;Patch9:         postfix-*-vda-ng.patch.gz&amp;lt;/pre&amp;gt;&lt;br /&gt;
Находим строку&lt;br /&gt;
&amp;lt;pre&amp;gt;Virtual Delivery Agent: --%{with_TXT VDA}&amp;lt;/pre&amp;gt;&lt;br /&gt;
И заменяем на &lt;br /&gt;
&amp;lt;pre&amp;gt;Virtual Delivery Agent: --with VDA --%{with_TXT VDA}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://www.downloadranking.com  Подключение VDA патча]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Сборка пакета==&lt;br /&gt;
Идем в папку /usr/src/rpm/SPECS/ (~/rpmbuild/SPECS/postfix.spec) и выполняем&lt;br /&gt;
&amp;lt;pre&amp;gt;# rpm -bb postfix.spec&amp;lt;/pre&amp;gt;&lt;br /&gt;
Если попросит, то доустановить нужные пакеты&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://www.downloadranking.com  Подключение VDA патча]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Проверка==&lt;br /&gt;
#Идем в папку с собранными пакетами /usr/src/rpm/RPMS/i586 (~/rpmbuild/rpms/i386/) и устанавливаем оттуда пакеты postfix-*.rpm, postfix-mysql-*.i586.rpm.&lt;br /&gt;
# Устанавливаем скомпиленый пакет postfix (может быть придется удалить старый пакет) и проверяем, как описано вначале статьи.&lt;/div&gt;</summary>
		<author><name>Roduc</name></author>
	</entry>
	<entry>
		<id>https://miac.volmed.org.ru/wiki/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_Postfix_%D0%B8_%D0%BF%D0%BE%D1%87%D1%82%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BA%D0%BB%D0%B8%D0%B5%D0%BD%D1%82%D0%B0_BAT_%D0%B4%D0%BB%D1%8F_%D0%BE%D1%82%D0%BF%D1%80%D0%B0%D0%B2%D0%BA%D0%B8_%D0%BF%D0%B8%D1%81%D0%B5%D0%BC_%D0%BF%D0%BE_tls_SSL&amp;diff=3177</id>
		<title>Настройка Postfix и почтового клиента BAT для отправки писем по tls SSL</title>
		<link rel="alternate" type="text/html" href="https://miac.volmed.org.ru/wiki/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_Postfix_%D0%B8_%D0%BF%D0%BE%D1%87%D1%82%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BA%D0%BB%D0%B8%D0%B5%D0%BD%D1%82%D0%B0_BAT_%D0%B4%D0%BB%D1%8F_%D0%BE%D1%82%D0%BF%D1%80%D0%B0%D0%B2%D0%BA%D0%B8_%D0%BF%D0%B8%D1%81%D0%B5%D0%BC_%D0%BF%D0%BE_tls_SSL&amp;diff=3177"/>
		<updated>2013-03-04T06:27:30Z</updated>

		<summary type="html">&lt;p&gt;Roduc: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Информация для статьи взята  [http://rostovlinux.ru/content/view/597/56/ Корпоративный почтовый сервер на базе Postfix]&lt;br /&gt;
&lt;br /&gt;
Опишу здесь только то что связано с настройками SSL на сервере и на клиенте.&lt;br /&gt;
==Настройка сервера==&lt;br /&gt;
Все настройки сервера можно посмотреть с статье [[Настройка почтового сервера на базе Postfix + abills + mysql]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://www.downloadranking.com  Настройка Postfix и почтового клиента]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Создание сертификата сервера===&lt;br /&gt;
Сразу скажу, что реализация данной части - дело тяжелое. Потому что будет очень много рутинной возни, если делать все по правилам.&lt;br /&gt;
&lt;br /&gt;
Первым делом нам понадобится доверенный сертификат - Certificate Authority (далее CA), чтобы иметь возможность подписывать и проверять клиентские сертификаты. Если все делать по правилам, то такой сертификат нужно создать, а затем подписать его у одного из корневых доверенных центров сертификации. Но это стоит денег. Если ваша организация заинтересована, ска жем, в развитии своего представительства в Internet, то именно это и стоит сделать. Но если вы всего лишь небольшая фирма, которая нуждается всего-навсего в почтовом сервере, то можно обойтись самоподписанным доверенным сертификатом.&lt;br /&gt;
&lt;br /&gt;
Итак, приступаем. Для начала определимся с местом, где у нас будут лежать наш сертификат и сертификаты пользователей. Поразмыслив, я решил держать их в каталоге /etc/ssl, но вы, возможно, решите, что есть и более подходящее для них место - оставляю это на ваше усмотрение.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://www.downloadranking.com  Настройка Postfix и почтового клиента]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Делаем следующее:&amp;lt;pre&amp;gt;&lt;br /&gt;
# cd /etc/ssl&lt;br /&gt;
# mkdir db&lt;br /&gt;
# mkdir ca&lt;br /&gt;
# mkdir clients&lt;br /&gt;
# touch /etc/ssl/db/index.txt&lt;br /&gt;
# echo &amp;quot;01&amp;quot; &amp;gt; /etc/ssl/db/serial&amp;lt;/pre&amp;gt;&lt;br /&gt;
Создаем скрипт для создания нашего самоподписанного доверенного сертификата (CA) &#039;&#039;&#039;/etc/ssl/make_ca.sh&#039;&#039;&#039; :&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/bin/sh&lt;br /&gt;
openssl req -new -newkey rsa:4096 -nodes -keyout ./ca/ca.key -x509 -days 3650 \&lt;br /&gt;
   -subj /C=RU/ST=Russia/L=Vologda/O=EI/OU=IT/CN=mail.volmed.org.ru/emailAddress=misk@volmed.org.ru -out ./ca/ca.crt&amp;lt;/pre&amp;gt;&lt;br /&gt;
Где mail.volmed.org.ru адрес нашего почтового сервера &lt;br /&gt;
&lt;br /&gt;
Запускаем скрипт make_ca.sh. Какое-то время он будет возиться с генерацией секретного ключа длиной в 4096 бит, на слабой машине это займет время... можете уменьшить длину ключа до 1024 или 2048 бит, если очень не терпится все поскорее попробовать. В итоге мы получим два файла в каталоге /etc/ssl/ca:&amp;lt;br /&amp;gt; &lt;br /&gt;
ca.crt - это наш самоподписанным доверенный сертификат, и &amp;lt;br /&amp;gt;&lt;br /&gt;
ca.key - его секретный ключ.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://www.downloadranking.com  Настройка Postfix и почтового клиента]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Создание клиентских сертификатов===&lt;br /&gt;
Теперь нам необходим скрипт для создания клиентских сертификатов:&lt;br /&gt;
&lt;br /&gt;
Создаем скрипт для создания клиентских сертификатов: /etc/ssl/make_cleint_cert.sh&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/bin/sh&lt;br /&gt;
if [ -n  &amp;quot;$3&amp;quot; ]; then&lt;br /&gt;
    openssl req -new -newkey rsa:4096 -nodes -keyout ./clients/client_$1.key \&lt;br /&gt;
        -subj /C=RU/ST=Russia/L=Samara/O=HOMENET/OU=IT/CN=$1/emailAddress=$2 \&lt;br /&gt;
        -out ./clients/client_$1.csr;&lt;br /&gt;
    openssl ca -config ca.config -in ./clients/client_$1.csr -out ./clients/client_$1.crt -batch;&lt;br /&gt;
    openssl pkcs12 -export -in ./clients/client_$1.crt -inkey ./clients/client_$1.key   -certfile ./ca/ca.crt -out /clients/client_$1.p12 -passout pass:$3&lt;br /&gt;
else echo &amp;quot;usage $0 name_client client_email  client_passwd&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Прежде чем запускать этот скрипт, создадим файл конфигурации для подписывания запросов на сертификацию: /etc/ssl/ca.config&lt;br /&gt;
&amp;lt;pre&amp;gt;[ ca ]&lt;br /&gt;
default_ca                     = CA_CLIENT&lt;br /&gt;
[ CA_CLIENT ]&lt;br /&gt;
dir                            =   /etc/ssl&lt;br /&gt;
certs                          =   $dir/clients&lt;br /&gt;
new_certs_dir                  =   $dir/db&lt;br /&gt;
database                       =   $dir/db/index.txt&lt;br /&gt;
serial                         =   $dir/db/serial&lt;br /&gt;
certificate                    =   $dir/ca/ca.crt&lt;br /&gt;
private_key                    =   $dir/ca/ca.key&lt;br /&gt;
default_days                   =   3650&lt;br /&gt;
default_crl_days               =   3&lt;br /&gt;
default_md                     =   md5&lt;br /&gt;
policy                         =   policy_anything&lt;br /&gt;
[ policy_anything ]&lt;br /&gt;
countryName                    = optional&lt;br /&gt;
stateOrProvinceName            = optional&lt;br /&gt;
localityName             =   optional&lt;br /&gt;
organizationName         =   optional&lt;br /&gt;
organizationalUnitName   =   optional&lt;br /&gt;
commonName               =   supplied&lt;br /&gt;
emailAddress             =   optional&amp;lt;/pre&amp;gt;&lt;br /&gt;
Скрипт &#039;&#039;&#039;make_ca.sh&#039;&#039;&#039; будет использоваться крайне редко - для первого создания нашего СА, и для генерации нового по истечению срока действия текущего СА. Однако, опцией -days мы устанавливаем срок действия сертификата аж на 10 лет, так что часто это делать не придется, разве что в случае компрометации сертификата (тьфу-тьфу-тьфу!).&lt;br /&gt;
&lt;br /&gt;
Скрипт &#039;&#039;&#039;make_cleint_cert.sh&#039;&#039;&#039; будет использоваться нами гораздо чаще, чем хотелось бы - если все делать по правилам. То есть, мы должны выдать уникальный сертификат каждому сотруднику, имеющему почтовый ящик на нашем сервере. Причем выдать его на не слишком дли тельный срок, в идеале - месяца на 3, но во всяком случае не больше, чем на год. А по&lt;br /&gt;
прошествии этого срока выдать всем новые сертификаты. Прибавьте к этому увольняемых и нанимаемых сотрудников... в общем, если у вас много народу - этим лучше заниматься специальной группе security officer&#039;s. Зато при этом у вас будет полноценный шифрованный канал с авторизацией и аутентификацией пользователей.&lt;br /&gt;
&lt;br /&gt;
Но можно поступить и проще. Создать всего лишь один клиентский сертификат, не на персону, а на всю контору, и использовать его. И можно еще дополнительно облегчить себе жизнь, за дав ему срок действия, равный сроку действия СА. Лет эдак на 20. Все это, естественно, будет делаться в ущерб безопасности, так как ни о какой аутентификации&lt;br /&gt;
пользователей речи не идет, да и в случае кражи сертификата вы можете очень нескоро узнать об этом. Но шифрование у вас все равно останется. Какой вариант выбрать - решайте сами.&lt;br /&gt;
&lt;br /&gt;
Теперь создадим клиентский сертификат. Запустим скрипт make_cleint_cert.sh с параметрами имя_клиента e-mail клиента пароль на файл клиентского сертификата:&lt;br /&gt;
&amp;lt;pre&amp;gt;make_cleint_cert.sh Test_User testuser@home.net  q1w2e3&amp;lt;/pre&amp;gt;&lt;br /&gt;
Сначала опять будет генерироваться ключ, затем будет создан и подписан сертификат пользователя. На экран вываливается информация о сертификате, и вот мы получили все необходимое:&lt;br /&gt;
&amp;lt;pre&amp;gt;client_Test_User.crt - файл клиентского сертификата&lt;br /&gt;
client_Test_User.key - файл закрытого ключа&lt;br /&gt;
client_Test_User.csr - запрос на подписание сертификата&lt;br /&gt;
client_Test_User.p12 - клиентский сертификат для передачи клиенту&amp;lt;/pre&amp;gt;&lt;br /&gt;
Остается только передать клиенту файл с расширением p12 - в этот файл записаны и защищены паролем записываются сертификат клиента, СА сертификат и секретный ключ клиента. По сле того, как сертификат передан клиенту, следует удалить на сервере файлы клиентского закрытого ключа, запроса на подписание и конечно самого сертификата в формате PKS#12. Ну и, разумеется, необходимо передать ему также и пароль q1w2e3 - пароль на файл клиентского сертификата. Предположим, что мы это уже проделали, попробуем его установить.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://www.downloadranking.com  Настройка Postfix и почтового клиента]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Настройка почтового клиента BAT для работы с SSL сертификатом==&lt;br /&gt;
Запускаем The Bat!. Выбираем наш почтовый ящик, идем в &#039;&#039;&#039;Свойства почтового ящика - Общие сведения&#039;&#039;&#039;. Видим там кнопочку &#039;&#039;&#039;Сертификаты&#039;&#039;&#039;, и нажимаем ее. В открывшемся окне нажимаем кнопку &#039;&#039;&#039;Импортировать...&#039;&#039;&#039; и открываем&lt;br /&gt;
файл client_Test_User.p12. В окне &#039;&#039;&#039;Пароль PFX&#039;&#039;&#039; - &#039;&#039;&#039;Введите пароль по расшифровке данных, хранимых в client_Test_User.p12&#039;&#039;&#039; вводим пароль на файл клиентского сертификата - q1w2e3. Вылезает окно &#039;&#039;&#039;Пароль PFX - Введите пароль для расшифровки личного ключа, хранимого client_Test_User.p12&#039;&#039;&#039; - еще раз вводим q1w2e3. И далее при запросе &#039;&#039;&#039;Сохранить личный ключ в брелоке&#039;&#039;&#039; отвечаем &#039;&#039;&#039;Да&#039;&#039;&#039;.  И видим, что в окне теперь отображаются два сертификата - наш персональный и доверенный сертификат сервера. Выбрав любой из них, и нажав кнопку &#039;&#039;&#039;Просмотреть&#039;&#039;&#039;, увидим, что &#039;&#039;&#039;This CA root certificate is not trusted because it is not in the Trusted Root CA&#039;&#039;&#039;. То есть The Bat! не желает просто так доверять нашему самоподписанному сертификату. Исправляем ситуацию, переходим на закладку &#039;&#039;&#039;Путь сертификации&#039;&#039;&#039;, выбираем наш СА, и нажимаем кнопку &#039;&#039;&#039;Добавить к доверенным&#039;&#039;&#039;. На запрос подтверждения отвечаем &#039;&#039;&#039;Да&#039;&#039;&#039;. Теперь ви дим, что наши сертификаты The Bat! считает правильными. &lt;br /&gt;
&lt;br /&gt;
Теперь настроим The Bat! на от правку почты через TLS: идем &#039;&#039;&#039;Пользователь - Свойства почтового ящика - Транспорт&#039;&#039;&#039; и в списке Соединение выбираем &#039;&#039;&#039;Безопасное на стандартный порт (STARTTLS)&#039;&#039;&#039;. &lt;br /&gt;
И дальше все должно работать.&lt;br /&gt;
&lt;br /&gt;
Напишем письмо нашему test user&#039;у, отправим отправим его и посмотрим в логи:&lt;br /&gt;
&amp;lt;pre&amp;gt; Nov   18   01:56:40   mail   postfix/smtpd[1490]:   initializing the server-side TLS engine&lt;br /&gt;
    Nov   18   01:56:40   mail   postfix/smtpd[1490]:   connect from unknown[192.168.211.3]&lt;br /&gt;
    Nov   18   01:56:41   mail   postfix/smtpd[1490]:   setting up TLS connection from unknown[192.168.211.3]&lt;br /&gt;
    Nov   18   01:56:41   mail   postfix/smtpd[1490]:   SSL_accept:before/accept initialization&lt;br /&gt;
    Nov   18   01:56:41   mail   postfix/smtpd[1490]:   read from 08096980 [080C0000] (11 bytes =&amp;gt; -1 (0xFFFFFFFF))&lt;br /&gt;
    Nov   18   01:56:41   mail   postfix/smtpd[1490]:   SSL_accept:error in SSLv2/v3 read client hello A&lt;br /&gt;
    Nov   18   01:56:41   mail   postfix/smtpd[1490]:   read from 08096980 [080C0000] (11 bytes =&amp;gt; 11 (0xB))&lt;br /&gt;
    Nov   18   01:56:41   mail   postfix/smtpd[1490]:   0000 16 03 01 00 2f 01 00 00|2b 03 01                 ..../...&lt;br /&gt;
    +..&lt;br /&gt;
    [пропустим этот кошмар...]&lt;br /&gt;
    Nov 18 01:56:41 mail postfix/smtpd[1490]: 0020 fc 2e c5 3a dc d2 b3 23|9b 9c 51 bb 49 2b f9     ...:...#&lt;br /&gt;
    ..Q.I+.&lt;br /&gt;
    Nov 18 01:56:41 mail postfix/smtpd[1490]: SSL_accept:SSLv3 flush data&lt;br /&gt;
    Nov 18 01:56:41 mail postfix/smtpd[1490]: TLS connection established from unknown[192.168.211.3]: TLSv1&lt;br /&gt;
        with cipher RC4-SHA (128/128 bits)&lt;br /&gt;
    Nov 18 01:56:41 mail postfix/smtpd[1490]: 6EF9860DE: client=unknown[192.168.211.3]&lt;br /&gt;
    Nov 18 01:56:41 mail postfix/cleanup[1496]: 6EF9860DE: message-id=&amp;lt;1852745703.20051119205209@home.net.&amp;gt;&lt;br /&gt;
    Nov 18 01:56:41 mail postfix/qmgr[1365]: 6EF9860DE: from=&amp;lt;testuser@home.net.&amp;gt;, size=752, nrcpt=1 (queue active)&lt;br /&gt;
    Nov 18 01:56:41 mail postfix/smtpd[1490]: disconnect from unknown[192.168.211.3]&lt;br /&gt;
    Nov 18 01:56:41 mail postfix/virtual[1498]: 6EF9860DE: to=&amp;lt;testuser@home.net.&amp;gt;, relay=virtual, delay=0,&lt;br /&gt;
        status=sent (delivered to maildir)&lt;br /&gt;
    Nov 18 01:56:41 mail postfix/qmgr[1365]: 6EF9860DE: removed&amp;lt;/pre&amp;gt;&lt;br /&gt;
Боже, какой ужас... надо срочно изменить детализацию логов... вместо &#039;&#039;&#039;smtpd_tls_loglevel = 3&#039;&#039;&#039; поставим &#039;&#039;&#039;smtpd_tls_loglevel = 1&#039;&#039;&#039;. Но главное, мы увидели, что установилось защищенное соеди нение - TLS connection&lt;br /&gt;
established from unknown[192.168.211.3]: TLSv1 with cipher RC4-SHA (128/128 bits), и наше письмо ушло под его защитой. Но это еще не все. Если мы посмотрим в исходный текст письма на стороне получателя, то увидим там:&lt;br /&gt;
&amp;lt;pre&amp;gt;Received: from stationxp01.home.net (unknown [192.168.211.3])&lt;br /&gt;
                (using TLSv1 with cipher RC4-SHA (128/128 bits))&lt;br /&gt;
            (No client certificate requested)&lt;br /&gt;
            by mail.home.net (Postfix) with ESMTP id 6EF9860DE&lt;br /&gt;
            for &amp;lt;testuser@home.net.&amp;gt;; Fri, 18 Nov 2005 01:56:41 +0000 (UTC)&amp;lt;/pre&amp;gt;&lt;br /&gt;
То есть, на данный момент имеем защищенное соединение, но не имеем аутентификации. &lt;br /&gt;
===Настройка аутентификации через TLS===&lt;br /&gt;
Исправляемся. Добавим в /etc/postfix/main.cf строчки:&lt;br /&gt;
&amp;lt;pre&amp;gt;# требовать сертификаты от клиентов&lt;br /&gt;
    smtpd_tls_ask_ccert = yes&lt;br /&gt;
    # место расположения отпечатков клиентских сертификатов&lt;br /&gt;
    relay_clientcerts = hash:/etc/postfix/fingerprints&amp;lt;/pre&amp;gt;&lt;br /&gt;
Снимем отпечаток с пользовательского сертификата:&lt;br /&gt;
&amp;lt;pre&amp;gt;openssl x509 -fingerprint -in client_Test_User.crt&amp;lt;/pre&amp;gt;&lt;br /&gt;
и скопируем последовательность разделенных двоеточиями цифр из строки MD5 Finger print в файл usr/local/etc/postfix/fingerprints. После этой числовой последовательности можно (и нужно) для собственной информации и для того, чтобы отработала команда postmap дописать туда имя клиента.&amp;lt;br /&amp;gt;&lt;br /&gt;
Делаем:&lt;br /&gt;
&amp;lt;pre&amp;gt;postmap fingerprints&lt;br /&gt;
     postfix reload&amp;lt;/pre&amp;gt;&lt;br /&gt;
И снова отправим письмо многострадальному ТестЮзеру. Оп-ля. Опять не то, потому что получаем:&lt;br /&gt;
&amp;lt;pre&amp;gt;Received: from stationxp01.home.net (unknown [192.168.211.3])&lt;br /&gt;
        (using TLSv1 with cipher RC4-SHA (128/128 bits))&lt;br /&gt;
        (Client did not present a certificate)&lt;br /&gt;
        by mail.home.net (Postfix) with ESMTP id CE91E60DA&lt;br /&gt;
        for &amp;lt;testuser@home.net.&amp;gt;; Sat, 19 Nov 2005 21:25:48 +0000 (UTC)&amp;lt;/pre&amp;gt;&lt;br /&gt;
То есть я при отправке письма для testuser сертификат серверу почему-то не представил. Защищенное соединение установилось, но аутентификация не прошла. Очень долго я бился с этим вопросом,но ничего не выходило. Но вот я наткнулся на это:&amp;lt;br /&amp;gt;&lt;br /&gt;
http://www.opennet.ru/openforum/vsluhforumID14/414.html Процитирую оттуда:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;gt;как заставить the bat (3.5 у меня) предоставлять клиентские сертификаты при отправке &lt;br /&gt;
&amp;gt;почты с использованием технологии TLS? Т.е. в настройках аккаунта я сертификат&lt;br /&gt;
&amp;gt;импортировал, однако в заголовке письма (Client did not present a certificate),&lt;br /&gt;
&amp;gt;через почтового клиента мозиллы все работает.&amp;lt;/pre&amp;gt;&lt;br /&gt;
Продолжение будет после проверки&lt;/div&gt;</summary>
		<author><name>Roduc</name></author>
	</entry>
	<entry>
		<id>https://miac.volmed.org.ru/wiki/index.php?title=HTML_%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5&amp;diff=3176</id>
		<title>HTML редактирование</title>
		<link rel="alternate" type="text/html" href="https://miac.volmed.org.ru/wiki/index.php?title=HTML_%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5&amp;diff=3176"/>
		<updated>2013-03-04T01:57:42Z</updated>

		<summary type="html">&lt;p&gt;Roduc: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Информация взята с http://dikarka.ru. Вообще мне эти уроки очень понравились - просто инепринужденно о довольно сложных вещах. Читайте - очень советую, особенно для начинающих.&lt;br /&gt;
&lt;br /&gt;
Статья еще не окончена. Просто решил вытащить оттуда таблички, что бы удобнее было искать потом.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://www.downloadranking.com  HTML редактирование]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Ссылки==&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;A href = &amp;quot;fotoalbom/catslide.html&amp;quot;&amp;gt;Мои кошки&amp;lt;/A&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| border=1&lt;br /&gt;
 |&amp;lt;A&amp;gt; и &amp;lt;/A&amp;gt;&lt;br /&gt;
 |Теги ссылки&lt;br /&gt;
 |-&lt;br /&gt;
 |href = &amp;quot;fotoalbom/catslide.html&amp;quot;&amp;lt;br \&amp;gt;&lt;br /&gt;
href = http://www.dikarka.ru&lt;br /&gt;
&lt;br /&gt;
 |Адрес, куда надо перейти по ссылке&lt;br /&gt;
 |-&lt;br /&gt;
 |Мои кошки&lt;br /&gt;
 |Текст, который будет отображаться ссылкой&lt;br /&gt;
 |}&lt;br /&gt;
Cылка на электронный адрес&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;A href = &amp;quot;mailto:your@address.com&amp;quot;&amp;gt;Напишите мне письмо!&amp;lt;/A&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
Если вы хотите, чтобы открытый по ссылке документ не вытеснял собой предыдущий, можете дать указание открыть его в новом окне, добавив в конце ссылки атрибут target=blank, например:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;A href = &amp;quot;http://www.yandex.com&amp;quot; target=blank&amp;gt;Поисковая система Яндекс&amp;lt;/A&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
Если мы хотим, что бы ссылкой была картинка (home.gif), то&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;A href=&amp;quot;../index.html&amp;quot; title=&amp;quot;возврат на Домашнюю страничку&amp;quot; &amp;gt;&amp;lt;img src=&amp;quot;home.gif&amp;quot;&amp;gt;&amp;lt;/A&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source(s):&#039;&#039;&#039;  [http://www.downloadranking.com  HTML редактирование]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Списки==&lt;br /&gt;
{| border=1&lt;br /&gt;
 | width=30% | &amp;lt;center&amp;gt;&amp;lt;b&amp;gt;Пояснение&amp;lt;/b&amp;gt;&amp;lt;/center&amp;gt;	&lt;br /&gt;
 | width=40% | &amp;lt;center&amp;gt;&amp;lt;b&amp;gt;Код в HTML&amp;lt;/b&amp;gt;&amp;lt;/center&amp;gt;	&lt;br /&gt;
 | width=40% | &amp;lt;center&amp;gt;&amp;lt;b&amp;gt;В окне браузера&amp;lt;/b&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
 |-&lt;br /&gt;
 |Для создания нумерованного списка существует дескриптор &#039;&#039;&#039;&amp;amp;lt;OL&amp;amp;gt;&#039;&#039;&#039; (&#039;&#039;Ordered List&#039;&#039; - Нумерованный Список). Он имеет закрывающийся тег &#039;&#039;&#039;&amp;amp;lt;/OL&amp;amp;gt;&#039;&#039;&#039;&lt;br /&gt;
 |&amp;lt;pre&amp;gt;&amp;lt;OL&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;Козленок &lt;br /&gt;
&amp;lt;LI&amp;gt;Теленок &lt;br /&gt;
&amp;lt;LI&amp;gt;Корова &lt;br /&gt;
&amp;lt;LI&amp;gt;Бык &lt;br /&gt;
&amp;lt;LI&amp;gt;Конь &lt;br /&gt;
&amp;lt;/OL&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
 |&amp;lt;OL&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;Козленок &lt;br /&gt;
&amp;lt;LI&amp;gt;Теленок &lt;br /&gt;
&amp;lt;LI&amp;gt;Корова &lt;br /&gt;
&amp;lt;LI&amp;gt;Бык &lt;br /&gt;
&amp;lt;LI&amp;gt;Конь &lt;br /&gt;
&amp;lt;/OL&amp;gt;&lt;br /&gt;
 |-&lt;br /&gt;
 |Мы можем изменить арабские цифры на римские, и даже на строчные и прописные буквы с помощью атрибута &#039;&#039;&#039;&amp;amp;lt;TYPE&amp;amp;gt;&#039;&#039;&#039;: &lt;br /&gt;
TYPE=1 - Числа&amp;lt;br/&amp;gt;&lt;br /&gt;
TYPE=A - Прописные буквы&amp;lt;br/&amp;gt;&lt;br /&gt;
TYPE=a - Cтрочные буквы&amp;lt;br/&amp;gt;&lt;br /&gt;
TYPE=I - Прописные римские буквы&amp;lt;br/&amp;gt;&lt;br /&gt;
TYPE=i- Строчные римские буквы&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;OL&amp;gt; &lt;br /&gt;
&amp;lt;LI TYPE=1&amp;gt;Козленок &lt;br /&gt;
&amp;lt;LI TYPE=1&amp;gt;Теленок &lt;br /&gt;
&amp;lt;LI TYPE=A&amp;gt;Корова &lt;br /&gt;
&amp;lt;LI TYPE=A&amp;gt;Бык &lt;br /&gt;
&amp;lt;LI TYPE=a&amp;gt;Конь &lt;br /&gt;
&amp;lt;LI TYPE=a&amp;gt;Свинья &lt;br /&gt;
&amp;lt;LI TYPE=I&amp;gt;Кот &lt;br /&gt;
&amp;lt;LI TYPE=I&amp;gt;Пес &lt;br /&gt;
&amp;lt;LI TYPE=i&amp;gt;Баран &lt;br /&gt;
&amp;lt;LI TYPE=i&amp;gt;Петух &lt;br /&gt;
&amp;lt;/OL&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&amp;lt;OL&amp;gt; &lt;br /&gt;
&amp;lt;LI TYPE=1&amp;gt;Козленок &lt;br /&gt;
&amp;lt;LI TYPE=1&amp;gt;Теленок &lt;br /&gt;
&amp;lt;LI TYPE=A&amp;gt;Корова &lt;br /&gt;
&amp;lt;LI TYPE=A&amp;gt;Бык &lt;br /&gt;
&amp;lt;LI TYPE=a&amp;gt;Конь &lt;br /&gt;
&amp;lt;LI TYPE=a&amp;gt;Свинья &lt;br /&gt;
&amp;lt;LI TYPE=I&amp;gt;Кот &lt;br /&gt;
&amp;lt;LI TYPE=I&amp;gt;Пес &lt;br /&gt;
&amp;lt;LI TYPE=i&amp;gt;Баран &lt;br /&gt;
&amp;lt;LI TYPE=i&amp;gt;Петух &lt;br /&gt;
&amp;lt;/OL&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Для создания закрашенных кружочков (&amp;lt;b&amp;gt;маркеров&amp;lt;/b&amp;gt;), вместо цифр, нужно заменить &amp;lt;b&amp;gt;&amp;amp;lt;OL&amp;amp;gt;&amp;lt;/b&amp;gt; на &amp;lt;b&amp;gt;&amp;amp;lt;UL&amp;amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;UL&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;Козленок &lt;br /&gt;
&amp;lt;LI&amp;gt;Теленок &lt;br /&gt;
&amp;lt;LI&amp;gt;Корова &lt;br /&gt;
&amp;lt;LI&amp;gt;Бык &lt;br /&gt;
&amp;lt;LI&amp;gt;Конь &lt;br /&gt;
&amp;lt;/UL&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&amp;lt;UL&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;Козленок &lt;br /&gt;
&amp;lt;LI&amp;gt;Теленок &lt;br /&gt;
&amp;lt;LI&amp;gt;Корова &lt;br /&gt;
&amp;lt;LI&amp;gt;Бык &lt;br /&gt;
&amp;lt;LI&amp;gt;Конь &lt;br /&gt;
&amp;lt;/UL&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Мы можем изменить форму &amp;lt;b&amp;gt;маркера&amp;lt;/b&amp;gt; на круг, квадрат или диск с помощью атрибута &amp;lt;b&amp;gt;TYPE&amp;lt;/b&amp;gt;:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&lt;br /&gt;
TYPE=circle&amp;lt;br&amp;gt;&lt;br /&gt;
TYPE=square&amp;lt;br&amp;gt;&lt;br /&gt;
TYPE=disc&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/b&amp;gt; В wiki почемуто не работает, а в браузере нормально&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;UL&amp;gt; &lt;br /&gt;
&amp;lt;LI TYPE=circle &amp;gt;Козленок&lt;br /&gt;
&amp;lt;LI TYPE=circle &amp;gt;Теленок&lt;br /&gt;
&amp;lt;LI TYPE=square &amp;gt;Корова&lt;br /&gt;
&amp;lt;LI TYPE=square &amp;gt;Бык&lt;br /&gt;
&amp;lt;LI TYPE=disc &amp;gt;Конь&lt;br /&gt;
&amp;lt;LI TYPE=disc &amp;gt;Свинья&lt;br /&gt;
&amp;lt;/UL&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&amp;lt;UL&amp;gt; &lt;br /&gt;
&amp;lt;LI TYPE=circle &amp;gt;Козленок&lt;br /&gt;
&amp;lt;LI TYPE=circle &amp;gt;Теленок&lt;br /&gt;
&amp;lt;LI TYPE=square &amp;gt;Корова&lt;br /&gt;
&amp;lt;LI TYPE=square &amp;gt;Бык&lt;br /&gt;
&amp;lt;LI TYPE=disc &amp;gt;Конь&lt;br /&gt;
&amp;lt;LI TYPE=disc &amp;gt;Свинья&lt;br /&gt;
&amp;lt;/UL&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;i&amp;gt;Списки&amp;lt;/i&amp;gt; могут быть &amp;lt;b&amp;gt;вложенными&amp;lt;/b&amp;gt; один в другой по принципу матрешки&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;UL&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;Первый урок &lt;br /&gt;
&amp;lt;LI&amp;gt;Второй урок &lt;br /&gt;
&amp;lt;LI&amp;gt;Третий урок &lt;br /&gt;
&amp;lt;UL&amp;gt;&lt;br /&gt;
&amp;lt;LI&amp;gt;Знакомство с графикой &lt;br /&gt;
&amp;lt;LI&amp;gt;Обрезка изображения &lt;br /&gt;
&amp;lt;LI&amp;gt;Оптимизация для web &lt;br /&gt;
&amp;lt;/UL&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;Четвертый урок &lt;br /&gt;
&amp;lt;LI&amp;gt;Пятый урок &lt;br /&gt;
&amp;lt;/UL&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&amp;lt;UL&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;Первый урок &lt;br /&gt;
&amp;lt;LI&amp;gt;Второй урок &lt;br /&gt;
&amp;lt;LI&amp;gt;Третий урок &lt;br /&gt;
&amp;lt;UL&amp;gt;&lt;br /&gt;
&amp;lt;LI&amp;gt;Знакомство с графикой &lt;br /&gt;
&amp;lt;LI&amp;gt;Обрезка изображения &lt;br /&gt;
&amp;lt;LI&amp;gt;Оптимизация для web &lt;br /&gt;
&amp;lt;/UL&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;Четвертый урок &lt;br /&gt;
&amp;lt;LI&amp;gt;Пятый урок &lt;br /&gt;
&amp;lt;/UL&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Также, если пустить наших героев &amp;quot;под нож&amp;quot;, получится замечательное меню. Этим ножом будет у нас тег &amp;lt;b&amp;gt;&amp;amp;lt;MENU&amp;amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
|colspan=2  | &amp;lt;pre&amp;gt;&amp;lt;MENU&amp;gt; &lt;br /&gt;
&amp;lt;LH&amp;gt;Меню друзей: &lt;br /&gt;
&amp;lt;LI&amp;gt;Козлятина &lt;br /&gt;
&amp;lt;LI&amp;gt;Телятина &lt;br /&gt;
&amp;lt;LI&amp;gt;Говядина &lt;br /&gt;
&amp;lt;LI&amp;gt;Конина &lt;br /&gt;
&amp;lt;LI&amp;gt;Свинина &lt;br /&gt;
&amp;lt;LI&amp;gt;Кошатина &lt;br /&gt;
&amp;lt;LI&amp;gt;Собачатина &lt;br /&gt;
&amp;lt;LI&amp;gt;Баранина &lt;br /&gt;
&amp;lt;LI&amp;gt;Курятина &lt;br /&gt;
&amp;lt;/MENU&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Вместо маркеров можно подставить любое изображение. Помните, в 10 уроке я нарисовала симпатичный домик и назвала его &amp;lt;i&amp;gt;home.gif&amp;lt;/i&amp;gt;? . Так вот я могу спокойно пустить его вместо маркера!&lt;br /&gt;
|colspan=2 |&amp;lt;pre&amp;gt;&amp;lt;UL&amp;gt; &lt;br /&gt;
&amp;lt;IMG src=&amp;quot;home.gif&amp;quot;&amp;gt;Козленок&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;IMG src=&amp;quot;home.gif&amp;quot;&amp;gt;Теленок&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;IMG src=&amp;quot;home.gif&amp;quot;&amp;gt;Корова&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;IMG src=&amp;quot;home.gif&amp;quot;&amp;gt;Конь&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;IMG src=&amp;quot;home.gif&amp;quot;&amp;gt;Свинья&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;/UL&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Ну, и конечно, можно сделать элементы списка - &amp;lt;b&amp;gt;ссылками&amp;lt;/b&amp;gt;, если представить, что все эти друзья имеют свои странички в интернете.&lt;br /&gt;
|colspan=2 |&amp;lt;pre&amp;gt;&amp;lt;UL&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;&amp;lt;A href=&amp;quot;Kozel.html&amp;quot;&amp;gt;Козленок&amp;lt;/A&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;&amp;lt;A href=&amp;quot;Telenok.html&amp;quot;&amp;gt;Теленок&amp;lt;/A&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;&amp;lt;A href=&amp;quot;Korova.html&amp;quot;&amp;gt;Корова&amp;lt;/A&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;&amp;lt;A href=&amp;quot;Byk.html&amp;quot;&amp;gt;Бык&amp;lt;/A&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;&amp;lt;A href=&amp;quot;Kon.html&amp;quot;&amp;gt;Конь&amp;lt;/A&amp;gt; &lt;br /&gt;
&amp;lt;/UL&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Но иногда бывает необходимо начать нумерацию не с единицы, а с другого значения, вот скажем нам нужен такой список:&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;ol start=&amp;quot;3&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Третий нумер нашей программы&lt;br /&gt;
&amp;lt;li&amp;gt;Четвертый нумер&lt;br /&gt;
&amp;lt;li&amp;gt;Пятый, есссесна!&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&amp;lt;ol start=&amp;quot;3&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Третий нумер нашей программы&lt;br /&gt;
&amp;lt;li&amp;gt;Четвертый нумер&lt;br /&gt;
&amp;lt;li&amp;gt;Пятый, есссесна!&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Ну, а если мы захотим в каком-то длинном списке где-то в центре поменять нумерацию, стартера недостаточно, но зато достаточно волшебного слова value И тогда, если мы напишем такой код:&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Первый участник&lt;br /&gt;
&amp;lt;li&amp;gt;Второй участник&lt;br /&gt;
&amp;lt;li&amp;gt;Третий участник&lt;br /&gt;
&amp;lt;li&amp;gt;Четвертый участник&lt;br /&gt;
&amp;lt;li&amp;gt;Пятый участник&lt;br /&gt;
&amp;lt;li&amp;gt;Шестой участник&lt;br /&gt;
&amp;lt;li&amp;gt;Седьмой участник&lt;br /&gt;
&amp;lt;li value=28&amp;gt;А тут двадцать восьмой участник&lt;br /&gt;
&amp;lt;li&amp;gt;Двадцать девятый&lt;br /&gt;
&amp;lt;li&amp;gt;Тридцатый участник&lt;br /&gt;
&amp;lt;li&amp;gt;Тридцать первый&lt;br /&gt;
&amp;lt;li&amp;gt;Тридцать второй&lt;br /&gt;
&amp;lt;li value=47&amp;gt;А тут опять замена на сорок седьмого&lt;br /&gt;
&amp;lt;li&amp;gt;Сорок восьмой&lt;br /&gt;
&amp;lt;li&amp;gt;Сорок девятый&lt;br /&gt;
&amp;lt;li&amp;gt;Пятидесятый!&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Первый участник&lt;br /&gt;
&amp;lt;li&amp;gt;Второй участник&lt;br /&gt;
&amp;lt;li&amp;gt;Третий участник&lt;br /&gt;
&amp;lt;li&amp;gt;Четвертый участник&lt;br /&gt;
&amp;lt;li&amp;gt;Пятый участник&lt;br /&gt;
&amp;lt;li&amp;gt;Шестой участник&lt;br /&gt;
&amp;lt;li&amp;gt;Седьмой участник&lt;br /&gt;
&amp;lt;li value=28&amp;gt;А тут двадцать восьмой участник&lt;br /&gt;
&amp;lt;li&amp;gt;Двадцать девятый&lt;br /&gt;
&amp;lt;li&amp;gt;Тридцатый участник&lt;br /&gt;
&amp;lt;li&amp;gt;Тридцать первый&lt;br /&gt;
&amp;lt;li&amp;gt;Тридцать второй&lt;br /&gt;
&amp;lt;li value=47&amp;gt;А тут опять замена на сорок седьмого&lt;br /&gt;
&amp;lt;li&amp;gt;Сорок восьмой&lt;br /&gt;
&amp;lt;li&amp;gt;Сорок девятый&lt;br /&gt;
&amp;lt;li&amp;gt;Пятидесятый!&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Вот такие бывают списки. Есть еще и другие, не столь важные. Например, для того, чтобы сделать списки более компактными можно добавить к тегу &amp;lt;b&amp;gt;UL&amp;lt;/b&amp;gt; или &amp;lt;b&amp;gt;OL&amp;lt;/b&amp;gt; атрибут &amp;lt;b&amp;gt;compact&amp;lt;/b&amp;gt;. Вот так: &amp;lt;b&amp;gt;&amp;amp;lt;UL=compact&amp;amp;gt;&amp;lt;/b&amp;gt; или так: &amp;lt;b&amp;gt;&amp;amp;lt;OL=compact&amp;amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;OL=compact&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;Козленок &lt;br /&gt;
&amp;lt;LI&amp;gt;Теленок &lt;br /&gt;
&amp;lt;LI&amp;gt;Корова &lt;br /&gt;
&amp;lt;LI&amp;gt;Бык &lt;br /&gt;
&amp;lt;LI&amp;gt;Конь &lt;br /&gt;
&amp;lt;/OL&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&amp;lt;OL=compact&amp;gt; &lt;br /&gt;
&amp;lt;LI&amp;gt;Козленок &lt;br /&gt;
&amp;lt;LI&amp;gt;Теленок &lt;br /&gt;
&amp;lt;LI&amp;gt;Корова &lt;br /&gt;
&amp;lt;LI&amp;gt;Бык &lt;br /&gt;
&amp;lt;LI&amp;gt;Конь &lt;br /&gt;
&amp;lt;/OL&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Свойства шрифтов==&lt;br /&gt;
&lt;br /&gt;
==Сводная таблица свойств текста==&lt;br /&gt;
{| border=1 &lt;br /&gt;
 |width=55% |&amp;lt;center&amp;gt;&amp;lt;b&amp;gt;НАЗВАНИЕ&amp;lt;/b&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
 |width=20%|&amp;lt;center&amp;gt;&amp;lt;b&amp;gt;ПРИМЕР&amp;lt;/b&amp;gt;&amp;lt;/center&amp;gt;||&amp;lt;center&amp;gt;&amp;lt;b&amp;gt;ЧТО ПОЛУЧИЛОСЬ&amp;lt;/b&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
 |-&lt;br /&gt;
 |без изменений||-||ДИКАЯ ПРАВДА&lt;br /&gt;
 |-&lt;br /&gt;
 |rowspan=2 |&amp;lt;center&amp;gt;&#039;&#039;&#039;letter-spacing&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Устанавливает расстояние (дополнительные промежутки) между буквами. Можно указывать расстояние в любых абсолютных единицах (in, cm, mm, pt, pc, px). Может задавать и отрицательные значения. Только смотрите, чтобы буквы не слиплись, и вместо одного слова не получилось бы одна буква.&lt;br /&gt;
 |&#039;&#039;&#039;letter-spacing&#039;&#039;&#039;:10pt&lt;br /&gt;
 |style=&amp;quot;letter-spacing:10pt&amp;quot;|ДИКАЯ ПРАВДА&lt;br /&gt;
 |-&lt;br /&gt;
 |&#039;&#039;&#039;letter-spacing&#039;&#039;&#039;:&amp;quot;-2pt&amp;quot;&lt;br /&gt;
 |style=&amp;quot;letter-spacing:-2pt&amp;quot;|ДИКАЯ ПРАВДА&lt;br /&gt;
 |-&lt;br /&gt;
 |rowspan=2 |&amp;lt;center&amp;gt;&#039;&#039;&#039;word-spacing&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
А это просто расстояние между словами. Указывается также в любых размерностях &lt;br /&gt;
 |&#039;&#039;&#039;word-spacing&#039;&#039;&#039;:7pt&lt;br /&gt;
 |style=&amp;quot;word-spacing:7pt&amp;quot;| ДИКАЯ ПРАВДА&lt;br /&gt;
 |-&lt;br /&gt;
 |&#039;&#039;&#039;word-spacing&#039;&#039;&#039;:10mm&lt;br /&gt;
 |style=&amp;quot;word-spacing:10mm&amp;quot;| ДИКАЯ ПРАВДА&lt;br /&gt;
 |-&lt;br /&gt;
 |rowspan=2 |&amp;lt;center&amp;gt;&#039;&#039;&#039;text-decoration&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Очень хорошая штука. Например, может использоваться для убирания (none) подчеркивания ссылок или, наоборот, для подчеркивания текста (underline), перечеркивания (line-through) или надчеркивания (overline) текста. А еще для вывода мерцающего текста (blink).&lt;br /&gt;
 |&#039;&#039;&#039;text-decoration&#039;&#039;&#039;:overline&lt;br /&gt;
 |style=&amp;quot;text-decoration:overline&amp;quot;|ДИКАЯ ПРАВДА&lt;br /&gt;
 |-&lt;br /&gt;
 |&#039;&#039;&#039;text-decoration&#039;&#039;&#039;:line-through&lt;br /&gt;
 |style=&amp;quot;text-decoration:line-through&amp;quot;|ДИКАЯ ПРАВДА&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;center&amp;gt;&#039;&#039;&#039;text-indent&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
С его помощью можно установить &amp;quot;красную строку&amp;quot; (отступ). Указывается как в абсолютных единицах, так и в процентах от абзаца. Если дать отрицательное значение - получится выступ (висячая строка).&lt;br /&gt;
 |&#039;&#039;&#039;text-indent:&amp;quot;10mm&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
 |style=&amp;quot;text-indent:10mm&amp;quot;|ДИКАЯ ПРАВДА&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;center&amp;gt;&#039;&#039;&#039;text-align&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Здесь нам знакомые left, center и right, то есть выравнивание текста по левому, правому краю, либо по центру. Есть еще justify, которое выравнивает текст по ширине.&lt;br /&gt;
 |&#039;&#039;&#039;text-align&#039;&#039;&#039;:right&lt;br /&gt;
 |style=&amp;quot;text-align:right&amp;quot;|ДИКАЯ ПРАВДА&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;center&amp;gt;&#039;&#039;&#039;vertical-align&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Устанавливает расположение текста по базовой линии (по умолчанию), либо по верхнему (super), либо по нижнему (sub) индексу относительно родительского элемента. Незаменим, например, при формулах.&lt;br /&gt;
 |&#039;&#039;&#039;vertical-align&#039;&#039;&#039;:super &lt;br /&gt;
&lt;br /&gt;
(для &amp;quot;ДИКАЯ&amp;quot; - без изменений)&lt;br /&gt;
 |ДИКАЯ&amp;lt;SPAN style=&amp;quot;vertical-align:super&amp;quot;&amp;gt;ПРАВДА&amp;lt;/SPAN&amp;gt;&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;center&amp;gt;&#039;&#039;&#039;line-height&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяет расстояние между строчками. Задается как в абсолютных единицах, так и в относительных. А можно и просто указывать число строк, не обязательно в целых числах.&lt;br /&gt;
 |&#039;&#039;&#039;line-height&#039;&#039;&#039;:2.5&lt;br /&gt;
 |&amp;lt;p style=&amp;quot;line-height:2.5&amp;quot;&amp;gt;дикая правда на www.dikarka.ru дикая правда на www.dikarka.ru дикая правда на www.dikarka.ru&amp;lt;/p&amp;gt;&lt;br /&gt;
 |}&lt;br /&gt;
==Вставка изображений==&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;img src=&amp;quot;ris.01.gif&amp;quot; height=300 width=400 alt=&amp;quot;это я в новом пиджаке&amp;quot; align=right hspace=20 vspace=20&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| border=1&lt;br /&gt;
 |width=25% | img src=&amp;quot;ris.01.gif&amp;quot;&lt;br /&gt;
 |width=75% | Название файла картинки, которую мы хотим вставить&lt;br /&gt;
 |-&lt;br /&gt;
 |height=300&lt;br /&gt;
 |Размер по вертикали в px (очень желательно указывать его, что говорит об уважении читателя)&lt;br /&gt;
 |-&lt;br /&gt;
 |width=400&lt;br /&gt;
 |Размер по горизонтали в px (очень желательно указывать его, что говорит об уважении читателя)&lt;br /&gt;
 |-&lt;br /&gt;
 |alt=&amp;quot;это я в новом пиджаке&amp;quot; &lt;br /&gt;
 | Текст, который будет в прямоугольнике, вместо рисунка, если его не загружать.&lt;br /&gt;
 |-&lt;br /&gt;
 |align=right&lt;br /&gt;
 |Выравнивание картинки, мб left, right и center&lt;br /&gt;
 |-&lt;br /&gt;
 |hspace=20&lt;br /&gt;
 |Расстояние от картинки до текста по горизонтали (px)&lt;br /&gt;
 |-&lt;br /&gt;
 |vspace=20&lt;br /&gt;
 |Расстояние от картинки до текста по вертикали (px)&lt;br /&gt;
 |}&lt;br /&gt;
==Атрибуты таблиц==&lt;br /&gt;
Сейчас я перечислю все, что можно делать с таблицами! Я перечислю атрибуты, которые можно поместить в тег &amp;lt;b&amp;gt;&amp;amp;lt;TABLE...&amp;amp;gt;&amp;lt;/b&amp;gt;. Но нужно иметь в виду,  что некоторые атрибуты срабатывают не во всех браузерах. Такие атрибуты я помечу звездочкой.&lt;br /&gt;
{|border=1&lt;br /&gt;
|width=25% rowspan=2 |&amp;lt;b&amp;gt;align&amp;lt;/b&amp;gt;&lt;br /&gt;
выравнивает таблицу по левому &amp;lt;b&amp;gt;(left)&amp;lt;/b&amp;gt; или правому &amp;lt;b&amp;gt;(right)&amp;lt;/b&amp;gt; краю&lt;br /&gt;
|width=30% |&amp;lt;pre&amp;gt;&amp;lt;TABLE align=left border=1&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|border=1 align=left&lt;br /&gt;
|Таблица выровнена по левому краю&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE align=right border=1&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|align=right border=1&lt;br /&gt;
|Таблица выровнена по правому краю&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|(*) &amp;lt;b&amp;gt;background&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
указывает изображение, которым заполнится фон таблицы&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE background=&amp;quot;fon.jpg&amp;quot;&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|background=&amp;quot;fon.jpg&amp;quot;&lt;br /&gt;
|Таблица с фоновым изображением&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;b&amp;gt;bgcolor&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;цвет фона таблицы&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE bgcolor=blue&amp;gt; &lt;br /&gt;
&amp;lt;TABLE bgcolor=#3300CC&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|&lt;br /&gt;
|bgcolor=#6699FF |А это просто голубой фон&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;b&amp;gt;border&amp;lt;/b&amp;gt;ширина рамки в пикселах&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE border=3&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|border=3&lt;br /&gt;
|рамка равна 3 пикселам&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|(*)&amp;lt;b&amp;gt;bordercolor&amp;lt;/b&amp;gt;цвет рамки для всей таблицы&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE bordercolor=blue&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|bordercolor=blue&lt;br /&gt;
|Рамка - голубая. Работает не во всех браузерах. Я вот в експлорере ее в упор не вижу!&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;b&amp;gt;cellpadding&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;свободное пространство вокруг содержимого каждой ячейки&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE cellpadding=10 border=1&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=10 border=1&lt;br /&gt;
|вокруг текста свободное пространство на 10 пикселов, видите?&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;b&amp;gt;cellspacing&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;свободное пространство между ячейками&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE cellspacing=10&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|cellspacing=10 border=1&lt;br /&gt;
|первая ячейка&lt;br /&gt;
|вторая ячейка&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|(*)&amp;lt;b&amp;gt;height&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;устанавливает высоту таблицы в пикселах&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE height=100 bgcolor=yellow&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|height=100 border=1&lt;br /&gt;
|bgcolor=yellow|Высота таблицы - 100 пикселов. Работает не во всех браузерах&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|(*)&amp;lt;b&amp;gt;hspace&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;промежуток в пикселах от таблицы слева и справа&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE hspace=15 border=5&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|hspace=15 border=5&lt;br /&gt;
|Таблица&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|(*) &amp;lt;b&amp;gt;nowrap&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;Запрещает перенос слов в ячейке&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE nowrap&amp;gt; &lt;br /&gt;
&amp;lt;TABLE&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|class=&amp;quot;small&amp;quot; hspace=15 border=5 nowrap&lt;br /&gt;
|эти слова ни за что не перенесутся&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;b&amp;gt;vspace&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;оставляет промежуток сверху и снизу от таблицы в пикселах&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE vspace=10 border=1 bgcolor=aqua&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{| vspace=10 border=1 &lt;br /&gt;
| bgcolor=aqua  vspace=10 | Сверху и снизу свободное &amp;lt;br /&amp;gt; пространство на 10 пикселов&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;b&amp;gt;width&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;ширина таблицы в пикселах или в процентах&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE width=200 bgcolor=red border=1&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|width=200 border=1&lt;br /&gt;
| bgcolor=red|Эта таблица шириной в 200 пикселей. Если сомневаетесь, можете проверить.&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
===Построение сложных таблиц===&lt;br /&gt;
{|border=1&lt;br /&gt;
|width=25%|&amp;lt;center&amp;gt;&amp;lt;b&amp;gt;Атрибут&amp;lt;/b&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
|width=40%|&amp;lt;center&amp;gt;&amp;lt;b&amp;gt;Код&amp;lt;/b&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
|&amp;lt;center&amp;gt;&amp;lt;b&amp;gt;Браузер&amp;lt;/b&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;colspan&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Показывает сколько ячеек по вертикали (колонок) нужно объеденить в одну&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE border=5&amp;gt; &lt;br /&gt;
&amp;lt;TR&amp;gt; &lt;br /&gt;
&amp;lt;TD&amp;gt;1ячейка&amp;lt;/TD&amp;gt; &lt;br /&gt;
&amp;lt;TD&amp;gt;2ячейка&amp;lt;/TD&amp;gt; &lt;br /&gt;
&amp;lt;/TR&amp;gt; &lt;br /&gt;
&amp;lt;TR&amp;gt; &lt;br /&gt;
&amp;lt;TD colspan=2&amp;gt;3 ячейка, занимающая два столбца&amp;lt;/TD&amp;gt; &lt;br /&gt;
&amp;lt;/TR&amp;gt; &lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|border=5&lt;br /&gt;
|1ячейка&lt;br /&gt;
|2ячейка&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|3 ячейка, занимающая два столбца&lt;br /&gt;
|}&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;rowspan&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Показывает сколько ячеек по горизонтали (рядов) нужно объеденить в один&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;lt;TABLE border=5&amp;gt; &lt;br /&gt;
&amp;lt;TR&amp;gt; &lt;br /&gt;
&amp;lt;TD rowspan=4&amp;gt;1 ячейка, объединяющая 4 ячейки&amp;lt;/td&amp;gt; &lt;br /&gt;
&amp;lt;TD&amp;gt;2 ячейка&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;3 ячейка&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;4 ячейка&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;5 ячейка&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
{|border=5&lt;br /&gt;
|rowspan=5 | 1 ячейка, объединяющая 4 ячейки&lt;br /&gt;
|-&lt;br /&gt;
|2 ячейка&lt;br /&gt;
|-&lt;br /&gt;
|3 ячейка&lt;br /&gt;
|-&lt;br /&gt;
|4 ячейка&lt;br /&gt;
|-&lt;br /&gt;
|5 ячейка&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
Допустим мы хотим сделать такую таблицу, где объединенны и столбцы и строки&lt;br /&gt;
[[Изображение:Ris95.gif|thumb|400px|left|Вот такая таблица]]&lt;br /&gt;
На этом рисунке  не указаны теги TD, чтобы не загромождать рисунок, но вы уже кое в чем разбираетесь, поэтому и сами догадаетесь, что каждую ячеечку нужно обложить тегом TD &lt;br /&gt;
&lt;br /&gt;
Обратите внимание, что десятая ячейка занимает столько места, сколько занимают четыре ячейки (1+5+6+7), то есть rowspan=4. Восьмая ячейка занимает место по ширине трех ячеек (2+3+4), а по высоте - двух ячеек (5+6), поэтому в теге TD у нее будет стоять colspan=3, а rowspan=2. Девятая же ячейка занимает по ширине столько же места, сколько и восьмая, то есть место трех ячеек (2+3+4), поэтому мы для нее запишем colspan=3. &lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot; /&amp;gt;&lt;br /&gt;
Вот полный код этой таблицы: &lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;TABLE border=3&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;1 ячейка&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;2 ячейка&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;3 ячейка&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;4 ячейка&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD rowspan=4&amp;gt;10 ячейка&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;5 ячейка&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD colspan=3 rowspan=2&amp;gt;8 ячейка&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;6 ячейка&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;7 ячейка&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD colspan=3&amp;gt;9 ячейка&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
И вот наша очень даже непростая таблица:&lt;br /&gt;
{|border=3&lt;br /&gt;
|1 ячейка&lt;br /&gt;
|2 ячейка&lt;br /&gt;
|3 ячейка&lt;br /&gt;
|4 ячейка&lt;br /&gt;
|rowspan=4|10 ячейка&lt;br /&gt;
|-&lt;br /&gt;
|5 ячейка&lt;br /&gt;
|colspan=3 rowspan=2|8 ячейка&lt;br /&gt;
|-&lt;br /&gt;
|6 ячейка&lt;br /&gt;
|-&lt;br /&gt;
|7 ячейка&lt;br /&gt;
|colspan=3|9 ячейка&lt;br /&gt;
|}&lt;br /&gt;
==Переадресация на другой сайт==&lt;br /&gt;
===Переадресация средствами HTML===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta http-equiv=&amp;quot;refresh&amp;quot; cоntent=&amp;quot;10; url=http://mail.ru/&amp;quot;&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Тег &amp;lt;meta&amp;gt; должен размещаться между тегами &amp;lt;head&amp;gt;&amp;lt;/head&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
В качестве значений атрибута &#039;&#039;&#039;cоntent&#039;&#039;&#039; выступают число секунд, через которое должна произойти переадресация, и адрес страницы, на которую необходимо перенаправить посетителя. Установив значение задержки в 0 секунд, получим моментальную переадресацию.&lt;br /&gt;
===Переадресация средствами JavaScript:===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;script language=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
setTimeout(&amp;quot;location.href=&#039;http://mail.ru/&#039;&amp;quot;, 10000);&lt;br /&gt;
&amp;lt;/script&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
Данный код JavaScript может находиться между тегами &amp;lt;head&amp;gt;&amp;lt;/head&amp;gt; и &amp;lt;body&amp;gt;&amp;lt;/body&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Период задержки указывается в миллисекундах.&amp;lt;/br /&amp;gt;&lt;br /&gt;
Переадресация JavaScript может не работать, если в обозревателе пользователя JavaScript выключен.&lt;br /&gt;
===Переадресация средствами PHP:===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
header(&amp;quot;location: http://mail.ru/&amp;quot;);&lt;br /&gt;
?&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
Рекомендуется всегда указывать в заголовке &#039;&#039;&#039;Location&#039;&#039;&#039; абсолютный путь вместе с именем хоста.&lt;/div&gt;</summary>
		<author><name>Roduc</name></author>
	</entry>
</feed>