Назад в дневник


Пишет Белый Сталкер  @!
WAP-Строителям
Информация взята с сайта h2m.ru. Этот сайт предостовляет хостинг на 300 и более Мб, а также инструменты по разработке сайта. Может кому то эта инфа окажется полезной.
1.Как установить скрипт?
Первым делом необходимо скачать скрипт. Для этого нажмите ссылку "Скачать файл или страницу" из аккаунта, выберите папку куда будет скачан скрипт и укажите адрес скрипта. После того как файл скачан (а чаще всего это ZIP-архив), нужно его распаковать. Для этого нажмите в Файловом менеждере на архив, затем, в меню выберите пункт "распаковать". ВАЖНО: все Ваши скрипты должны лежать в папке htdocs, на все Ваши папки и файлы рекомендуем поставить права доступа 770. В комплекте с архивом зачастую идет файл readme.txt (или readme.html), в нем находятся инструкции по установке и настройке скрипта от его создателей. Следуйте им. Если Вы не можете прочитать данный файл из-за неверной кодировки, попробуйте сконвертировать ее, выбрав в Файловом Менеджере пункт изменить кодировку (в меню файла). Если Вы используете Opera Mini, Вам будет предпочтительнее заходить на сайт набирая в строке адреса www.h2m.ru. Так Вы сможете избежать проблем с редактированием файлов.
2.Описание Файлового менеджера.
Начало. Итак: после регистрации на Вашем месте на сервере автоматически создаются 3 папки: htdocs, log и tmp. Все они являются системными. Мы НАСТОЯТЕЛЬНО НЕ РЕКОМЕНДУЕМ удалять эти папки, т.к. в них хранятся файлы, отвечающие за работоспособность ВАШЕГО сайта. Папка htdocs. Эта папка создаётся автоматически при регистрации и она является Вашей основной рабочей папкой. В ней создан файл index.wml, он и будет открываться при обращении к http://nokia-smart.h2m.ru. Файловый менеджер. При открытии файлового менеджера, который находится в аккаунте, перед Вами открываются папки, описанные выше. У Вас есть несколько вариантов действий: 1) Создать новый файл или новую папку, щелкнув на ссылку "Меню". 2) Войти в папку, щелкнув на название папки. 3) Вызвать меню папки, щелкнув на изображение папки рядом с её названием. В меню папки Вы можете её копировать, переместить, переименовать, удалить или прочитать права доступа или свойства. Примеры. Задача. Надо создать файл test.php в папке htdocs. Решение. Открываем файловый менеджер из аккаунта, перед Вами открывается список папок, Выбираем ссылку, которая соответствует нужной папке, в нашем случае это htdocs. Нажимаем на ссылку. Вы попали в папку htdocs. Перед Вами открылось её содержимое в виде списка папок и файлов. Нажимаем "Меню" и выбираем "создать файл". В открывшемся окне Вам предлагается ввести имя файла: вводим test.php и нажимаем создать. Перед вами открылось окно, в котором предлагается выбрать дальнейшее действие. Вы можете перейти в меню файла, в котором можно редактировать, копировать, переместить, переименовать, удалить файл или просмотреть права доступа и свойства файла. Или вернуться в меню папки htdocs. Задача 2. Создать папку scripts в папке htdocs и переместить в неё файл test.php. Решение. Открываем файловый менеджер из аккаунта, перед Вами открывается список папок, Выбираем ссылку, которая соответствует нужной папке, в нашем случае это htdocs. Нажимаем на ссылку. Вы попали в папку htdocs. Перед Вами открылось её содержимое в виде списка папок и файлов. Нажимаем "Меню" и выбираем "создать папку". В открывшемся окне Вам предлагается ввести имя папки: вводим scripts и нажимаем создать папку. Перед вами открылось окно, в котором предлагается выбрать дальнейшее действие. Выбираем "ссылку назад". Вы перешли в папку htdocs. В ней теперь есть папка scripts. Выбираем файл, который нужно переместить, в нашем случае это test.php. Нажимаем на ссылку, соответствующую имени файла. Перед Вами открывается меню, в котором нужно выбрать "переместить". Далее Вам предлагается выбрать папку для перемещения. Перед Вами открывается список папок от корня. Выбираем htdocs, и нажимаем на одноимённую ссылку. Открылся список папок в папке htdocs, выбираем папку scripts и нажимаем на ссылку. Вы вошли в папку scripts, сверху страницы написан путь, куда будет перемещён файл. Нажимем "Выбрать". Перед вами открылось окно, в котором предлагается выбрать дальнейшее действие. Вы можете перейти в меню файла, в котором можно редактировать, копировать, переместить, переименовать, удалить файл или просмотреть права доступа и свойства файла. Или вернуться в меню папки htdocs.
3.Что такое WML?
WML - сокращение от Wireless Markup Language, что в переводе на русский означает "язык [гипертекстовой] разметки [документов] для беспроводной связи". Изначально WML был создан для написания Интернет-страниц предназначеных к просмотру на сотовых телефонах, поддерживающих WAP. WAP (Wireless Application Protocol) буквально означает - протокол беспроводных приложений. Язык WML имеет много отличий от языка HTML , привычного нам по WEB-страницам. WML значительно проще, но и страницы получаются не столь красочные и яркие. Страницы, написанные на WML, должны быть сохранены в файлы с расширением *wml. Следует помнить, что WML (в отличии от HTML) очень "придирчив" к ошибкам. Проверить страницу на наличие ошибок можно на сайте validator.w3.org.
4.В языке wml, как и в других языках есть своя специфика. Все страницы должны начинаться с указания версии, кодировки и типа документа. Ниже приведём пример простейшей страницы. <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN" "http://www.wapforum.org/DTD/wml12.dtd"> <wml> <card> <p> Моя первая страница!!! </p> </card> </wml> На данной странице использованы следующие элементы. Заголовки: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN" "http://www.wapforum.org/DTD/wml12.dtd"> Теги:<wml><card><p>. Более подробно остановимся на тегах, ведь заголовки на всех страницах должны быть одинаковыми, а вот тегов может быть много. На странице, приведённой выше, используется 3 ОСНОВНЫХ вида тегов и их использование ОБЯЗАТЕЛЬНО. Остановимся на них более подробно: <wml></wml> Это обязательные атрибуты страницы. Всё содержимое должно находиться строго между открывающим <wml> тегом и закрывающим </wml>. <card></card> Открывает и закрывает wml карту. Атрибуты: id - атрибут, позволяющий сослаться на эту карточку из других элементов; title - значение этого атрибута может быть использовано для озаглавливания экрана, в котором отображается карточка. Пример: <card id="main" title="nokia-smart.h2m.ru"> Всё содержимое карты должно находиться строго между открывающим <card> тегом и закрывающим </card> <p></p> Открывает параграф. Атрибуты: align - атрибут, позволяющий расположить содержание параграфа на странице. Например: <p align="center"> При таком значении атрибута align, всё содержимое страницы будет выровнено по центру. Без этого атрибута, страница будет выровнена по левому краю, при значении "right" по правому краю. Всё содержимое параграфа должно находиться строго между открывающим <p> тегом и закрывающим </p>
5.Здесь мы рассмотрим создание ссылок, кнопок, вставку картинок и форматирование текста. Ссылки. Создаёт ссылку тег <a> с атрибутом href. Пример: <a href="http://nokia-smart.h2m.ru">Мой сайт</a> Название ссылки, которое будет отображаться на странице (в данном случае "Мой сайт") должно находиться между открывающим тегом <a> и закрывающим </a>. Кнопки. Самая используемая кнопка на телефоне - это "Назад". Язык WML позволяет назначить этой кнопке определённый адрес перехода, т.е. при нажатии кнопки "Назад" на телефоне, пользователь попадает на заданную страницу. Пример: <do type="prev"><go href="http://nokia-smart.h2m.ru"></go></do> Эту строку можно писать в любом месте параграфа. Картинки. Вставляет картинку на страницу тег <img>. У него есть несколько атрибутов, опишем самые распространённые: src - указывает на адрес картинки; alt - указывает "название" картинки. Пример: <img src="http://h2m.ru/img/h2m_new1.gif" alt="Картинка"/> Эта строка вставит на страницу картинку с адресом http://h2m.ru/img/h2m_new1.gif Форматирование. Существует несколько тегов, которые позволяют изменить текст: <em></em> На текст внутри этих тегов "падает" акцент. <strong></strong> Текст внутри этих тегов становится выделенным. <i></i> Текст внутри этих тегов становится курсивом. <b></b>Текст внутри этих тегов становится жирным. <u></u> Текст внутри этих тегов становится подчёркнутым. <big></big> Увеличивает текст. <small></small> Уменьшает текст. Следует помнить, что специфика телефонов разных производителей различна и форматы текста могут отображаться по-разному или некорректно. Полная документация по wml содержится на сайте www.wapforum.org <br/> Этот тег вставляет принудительный перенос строки. Теперь мы можем создавать сложные страницы. Пример: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN" "http://www.wapforum.org/DTD/wml12.dtd"> <wml> <card id="main" title="Тестовая страница"> <p align="center"> Тут будет ссылка<br/> <a href="http://nokia-smart.h2m.ru">Пример ссылки</a> </p> <p align="right"> Картинка и форматированный текст<br/> <img src="http://h2m.ru/img/h2m_new1.gif" alt="картинка"/><br/> <u>Подчёркнутый текст</u><br/> <i>Наклонный текст</i> </p> <p> Наклонный текст в ссылке:<br/> <i> <a href="http://nokia-smart.h2m.ru">Пример наклонной ссылки</a><br/> </i>
6.Описание WML-редактора. WML-редактор создан для упрощения редактирования WML страниц. Примеры использования. Задача: Создать файл content.wml и отредактировать его в WML-редакторе. Решение: открываем файловый менеджер из аккаунта и создаём в нужной папке файл contentwml После появления файла нажимаем на меню и выбираем "редактировать в WML-редакторе". Перед Вами открывается меню карт. Карта #1 уже создана и можно приступать к её редактированию. Нажимаем "свойства". Здесь можно изменить id карты, её заголовок и установить переадресацию (редирект). Вписываем в поле "заголовок" желаемое название карты, например "мелодии" и нажимаем "Сохранить". После изменения карты появляется меню различных действий. Выбираем пункт "содержимое карты". Перед Вами открывается содержимое карты. Т.к. карта пустая, откроется только пустой параграф. Нажимаем на ссылку <p> и переходим в меню параграфа. Здесь можно задать выравнивание, перенос строк, довабить элемент и выделить текст. Выбираем Выравнивание: "по центру" и нажимаем сохранить. Теперь параграф выровнен. Добавим ссылку. Опять нажимаем на ссылку "<p>" и переходим в свойство параграфа, выбираем ссылку "вставить" затем, в открывшемся меню выбираем "ссылку". Преде Вами открылась страница с полями ввода параметров ссылки. Пишем нужный адрес и нужное название. например в поле "Адрес ссылки" пишем http://h2m.ru, а в поле "Заголовок" пишем "Хороший сайт" и нажимаем "сохранить". Перед Вами открывается содержимое карты с открывающим и закрывающим тегом <a></a>. Эта ссылка уже имеет адрес http://h2m.ru. Теперь надо вписать её название. Нажимаем на открывающий тег <a> и на открывшейся странице выбираем пункт "вставить". На следующей странице предлагается вставить текст, перенос или рисунок. Если хотим сделать простую текстовую ссылку - выбираем "текст", если хотим сделать картинку как ссылку, выбираем "рисунок". Допустим Вы выбрали "текст", в открывшемся окне вводим нужный текст, например, Hosting tomobile и нажимаем "сохранить". Снова открывается содержимое карты,но уже в тегах <a></a> появился введённый текст. При нажатии ссылки "просмотр", Вы увидите получившуюся страницу. Для форматирования текста в языке WML используют определённые теги, они представлены в конструкторе. Для того, что бы сделать созданный текст или ссылку, например, курсивной нужно нажать на предыдущий элемент и выбрать пункт "выделить", затем выбрать "курсив". Снова откроется содержимое карты, но уже в формате выделения. Нажмте на элемент, который находится после вылеляемого текста, и форматирование произойдёт. Что бы добавить элемент, например картинку или текст, надо щёлкнуть на последний элемент и выбрать "добавить".
7.MySQL
Одной базы вполне достаточно для всех скриптов,тк скрипты используют таблицы из базы, которых может быть много. Создать таблицу можно скриптом, например $sql = mysql_query("CREATE TABLE test (name TEXT NOT NULL ,pas TEXT NOT NULL )") or die("Ошибка"); Уничтожить таблицу: $sql = mysql_query("DROP TABLE test") or die("Ошибка"); Изменить таблицу: $sql = mysql_query("ALTER TABLE test CHANGE pas pass INT(11) DEFAULT 0 NOT NULL") or die("Ошибка"); Вставить данные в таблицу: $sql = mysql_query("INSERT INTO test (name,pas) VALUES ('Vasya','pass')") or die("Ошибка"); Как правило, разработчики скриптов пишут руководство по созданию таблиц в базе в файл readme или base.txt.
8.Описание онлайнового редактора (блокнота).
Этот сервис предназначен для редактирования любых файлов на Вашем сайте. Онлайн редактор (далее блокнот), открывает файл в виде строк так, как он представлен на сервере. Если в файле много строк, блокнот разобьёт вывод на страницы. Количество строк на странице можно изменить в аккаунте в разделе "Настройки". Каждая строка является ссылкой, при нажатии на которую, открывается содержимое строки. Так же можно добавлять и удалять строки нажатием ссылок и соответственно.
9.Пользователям о безопасности
В последнее время участились кражи пользовательских сайтов. В связи с чем, среди пользователей стало «модным» винить наш хостинг. Однако, хотелось бы заметить, что ничего конкретного обвиняющая сторона до сих пор сформулировать не смогла. Более того, некоторые из них даже не могут правильно написать слово «хакер», не говоря уже о том, чтобы закрыть откровенную уязвимость скрипта. В связи с этим, попытаемся развееть все мифы и разъяснить все термины. 1) Что такое «дыра» в скрипте? Ответ: «Дыра» в скрипте – это уязвимое место, используя которое, взломщик получает доступ к каким-либо закрытым данным или получает возможность сделать что-то, что позволяет ему расширить свои полномочия. Например, на сервер пользователя можно загрузить свой PHP-скрипт: чаще всего это дает полный доступ к управлению сервером. Другой пример: зная место, где хранятся пароли в открытом или слабозащищенном виде, и не обладая огромными знаниями в программировании, злоумышленник может получить этот пароль. Так произошло в Моторе (с). Там пароль хранится в файле, который доступен через HTTP. Мы приняли меры и своими силами запретили отдачу этого файла, тем самым устранив эту явную недоработку разработчиков данного программного продукта. 2) Во всём виноват файл .htaccess? Ответ: Этот файл предназначен для конфигурирования сервера и никак не предназначен для того, чтобы закрывать «дыры» PHP-скриптов. 3) Вы не можете нас защитить! Ответ: безопасность сайта целиком и полностью зависит от Вас. Более того, ни один хостер не будет бесплатно проверять Ваши скрипты на наличие уязвимостей. Ответственность за «дыры» в скриптах лежит полностью на плечах разработчиков этих скриптов и автоматически перекладывается на плечи людей, которые начинают их использовать. Наши рекомендации: - Всегда пишите скрипты сами. Во-первых, Ваши исходные коды не будут известны злоумышленникам (а это очень сильно усложняет взлом). Во-вторых, Вы хотя бы будете знать, где может быть уязвимость. - Не доверяйте псевдоразработчикам. Сейчас все больше людей начинают писать PHP-скрипты. К сожалению, далеко не всегда они защищены. Более правильным было бы сказать так: как правило, они не защищены совсем, равно как и не отлажены. Это просто увидеть, включив вывод ошибок и предупреждений в этом скрипте. - Не используйте одинаковые логин и пароль на доступ к аккаунту сайта и Мотору; используйте на всех сайтах РАЗНЫЕ пароли; не ставьте простых паролей. Только при соблюдении всех мер предосторожности, Ваш сайт может претендовать на статус защищенного. С уважением Администрация H2M.Ru
10.Добавление субдоменов и псевдонимов
Добавление субдоменов и псевдонимов. Субдомен - это домен 4 уровня, который пренадлежит Вашему основному домену 3 уровня. Субдомен имеет свою папку и свои лог-файлы. Пример субдомена: wap.nokia-smart.h2m.ru. К субдомену можно прикрепить один или несколько псевдонимов, которые являются просто адресами, по которым открывается заданный субдомен. Например, при создании субдомена wap, Вы указали псевдонимы top.nokia-smart.h2m.ru и xxx.nokia-smart.h2m.ru. Это значит, что сайт wap.nokia-smart.h2m.ru будет открываться ещё и по адресам top.nokia-smart.h2m.ru и xxx.nokia-smart.h2m.ru. Так же можно создать псевдоним для Вашего основного домена, например, Вы указали псевдонимы для основного домена xxx.nokia-smart.h2m.ru и wap.nokia-smart.h2m.ru. Это значит, что сайт nokia-smart.h2m.ru будет доступен по адресам wap.nokia-smart.h2m.ru и xxx.nokia-smart.h2m.ru. Следует помнить, что все изменения вступят в силу не позднее 3 часов с момента активации.
11.О запуске скриптов по расписанию
О запуске скриптов по расписанию: Файл, описывающий регулярные действия, состоит из строк, каждая из которых содержит 6 полей. Эти поля разделены пробелами или символами табуляции. Первые 5 полей представляют собой шаблоны, специфицирующие следующие целые числа: минуты (0-59), часы (0-23), день месяца (1-31), месяц в году (1-12), день недели (0-6 где 0=воскресенье). Каждый из этих шаблонов может быть или символом *, который обозначает все корректные значения, или списком, элементы которого разделены запятыми. Каждый элемент должен быть либо числом, либо двумя числами, разделенными символом - (таким способом задается интервал). Заметим, что день может быть указан двумя полями (день месяца и день недели). Если в обоих этих полях указаны списки, то считаются заданными те дни, которые заданы или как день месяца, или как день недели. В 6 поле должен быть указан путь к исполняемому скрипту. Он должен быть абсолютный, например (/home/nokia-smart/htdocs/test.php), на файл должны стоять права, позволяющие его запуск (770) и в файле должен быть прописан путь к интерпретатору. Для php скрипта это выглядит так: #!/usr/local/bin/php
12.Примеры запуска скриптов по расписанию (cron)
Примеры запуска cron: 1)Если Вы хотите, чтобы скрипт test.php из папки htdocs запускался каждые 2 часа, заполните поля следующим образом: 0 */2 * * * /home/nokia-smart/htdocs/test.php 2)Если Вы хотите, чтобы скрипт test.php из папки htdocs запускался каждый час с 13 часов до 17 часов, заполните поля следующим образом: 0 13-17 * * * /home/nokia-smart/htdocs/test.php 3)Если Вы хотите, чтобы скрипт test.php из папки htdocs запускался в 5 минут каждого часа, заполните поля следующим образом: 5 * * * * /home/nokia-smart/htdocs/test.php 4)Если Вы хотите, чтобы скрипт test.php из папки htdocs запускался каждые 5 минут, заполните поля следующим образом: */5 * * * * /home/nokia-smart/htdocs/test.php 5)Если Вы хотите, чтобы скрипт test.php из папки htdocs запускался каждый день в 0.00, заполните поля следующим образом: 0 0 * * * /home/nokia-smart/htdocs/test.php 6)Если Вы хотите, чтобы скрипт test.php из папки htdocs запускался 1 и 15 числа каждого месяца и, кроме того, каждый понедельник, заполните поля следующим образом: 0 0 1,15 * 1 /home/nokia-smart/htdocs/test.php 7)Если Вы хотите, чтобы скрипт test.php из папки htdocs запускался только по понедельникам, заполните поля следующим образом: 0 0 * * 1 /home/nokia-smart/htdocs/test.php
13.Что такое FTP доступ
Для доступа используйте следующие параметры: сервер - h2m.ru ,Логин и пароль те же, что Вы указали при регистрации. FTP - это сокращение от английских слов File Transfer Protocol, что в переводе на русский язык означает протокол передачи файлов. С помощью этого протокола Вы сможете загружать скрипты и файлы прямо на сервер в Вашу папку. Так же Вы можете создавать и удалять папки, загружать, удалять и заменять сразу несколько файлов и папок. Через FTP доступ Вы сможете загружать свои скрипты и проставлять на них права. Для доступа на сервер Вам необходима программа FTP-клиент. Для смартфонов, кпк, коммуникаторов существуют программы, которые совместимы с их операционной системой. Например, для коммуникаторов и смартфонов на Windows подойдёт программа Total Commander, которую можно скачать на сайте http://www.ghislercom Для смартфонов Nokia или других смартфонов на Symbian можно скачать с сайта www.yellowcomputing.de. Для доступа к серверу с компьютера Вам необходимо установить FTP-клиент или воспользоваться встроенным в Windows. Пример доступа через встроенный клиент Windows : Открываете локальный диск C: , в поле адрес (где написано C:\ ) пишите: ftp://ваш_логин:Ваш_пароль@h2m.ru.Именно для Вас это будет выглядеть так: ftp://nokia-smart:Ваш_пароль@h2m.ru. Откроется список файлов и папок Вашего сайта и Вы можете добавлять и удалять ресурсы, как из обычной папки. Пример использования установленного FTP-клиента: например установим SmartFTP с сайта SmartFTPcom После установки в открывшемся окне в поле address введите адрес Вашего сайта, в поле login - Ваш логин, в поле password - Ваш пароль, поля Port и Anonymous оставьте без изменений. Нажмите кнопку connect. Перед Вами откроется список файлов и папок Вашего сайта. Желаем Вам приятной работы
14.Прва доступа
Права доступа. Многопользовательская среда предполагает наличие механизма регулирования прав доступа к любому ресурсу в системе. Потому у любого файла или папки есть свой владелец, группа и права доступа. Владелец - это чаще всего пользователь создавший этот файл или папку. Группа - обычно это группа пользователей к которой принадлежит владелец. Существует три типа прав доступа: на чтение, запись и исполнение. Права сгруппированы три по три, соответственно чтение/запись/выполнение для владельца/группы/всех остальных. Численное представление: Значение 0: Ничего не разрешено. Значение 1: Нельзя читать и писать, разрешено исполнять. Значение 2: Нельзя читать и исполнять, разрешено писать. Значение 3: Нельзя читать, разрешено писать и исполнять. Значение 4: Разрешено читать, нельзя писать и исполнять. Значение 5: Разрешено читать и исполнять, нельзя писать. Значение 6: Разрешено читать и писать, нельзя исполнять. Значение 7: Разрешено все. Например, если права на файл 764 - это значит, что владелец только может делать с этим файлом все что угодно, группа может читать и записывать, а все остальные - только читать данный файл. То есть, если Вы поставите права доступа 755 на PHP-файл, то скрипт сможет запускаться, но не сможет записывать данные в файл (скрипты запускаются из-под пользователя www). А если поставить права на файл 555, то Вы уже не сможете проставить права на более высокие.
15.Что такое PHP
Что такое PHP? PHP - это широко распространённый Открытый ресурс - язык скриптинга, который создан специально для Web и Wap и который можно внедрять в HTML, WML и другие языки разметки. Наилучшим качеством PHP является то, что он предельно прост для новичка в программировании. Чтобы написать скрипт, Вам необходимо создать файл с расширением .php, открыть его любым текстовым редактором и обозначить открытие и закрытие скрипта знаками <? и ?> соответственно. Все записи внутри этих тегов будут обработаны как PHP-код. Самый простой пример PHP-скрипта: <? echo('Привет мир!'); ?> Например, с помощью PHP можно написать скрипт, который будет выводить ссылки на все файлы из заданной папки, это позволяет добавлять контент в папку без изменения страницы. Так же с помощью PHP можно написать регистрацию, пользователь вводит свой логин и пароль и далее по сайту ему доступны страницы, которые недоступны неавторизованным пользователям. Это лишь малая часть возможностей PHP. Пример скриптов, различную документацию, синтаксис и прочее можно найти на сайте php.net.
16.Что такое HTML
Что такое HTML? HTML - HyperText Markup Language, что переводится на русский язык как "гипертекстовый язык разметки". Изначально он был создан для WEB(World Wide Web), но с развитием прогресса, этот язык стали использовать и под WAP(Wireless Application Protocol). У этого языка есть много преимуществ перед WML , например поддержка цветных страниц, отлаженная работа с таблицами и меньшая "придирчивость" к ошибкам. Но есть и недостатки - это больший размер страниц и поддержка только современными телефонами. Страницы, написанные на HTML, должны быть сохранены в файлы с расширением *.html. Проверить страницу на наличие ошибок можно на сайте validator.w3.org.
Настроение: в норме
Музыка: рок
Таги: Статья


Яндекс.Метрика
Вы не авторизованы!
Авторизация
Обновить
Глав

Добавить в избранное (только для авторизированных)