Какие бывают сайты с точки программирования.

сборка сайта руками

Вначале сайты были простые. Сайт в простом варианте представляет из себя набор файлов с расширением html, где указаны инструкции браузеру, как выводить информацию на экран пользователю. Соответственно программист делал файлы для сайта, выкладывал их на сервере – и все, сайт готов.

Если открыть такой сайт www.titovsergei.ru – то можно в адресной строке увидеть, что на экран выводится файл index.htm = http://titovsergei.ru/index.htm

Но при данном подходе есть два минуса:

- для размещения любой информации на сайте нужны услуги программиста

- сделать большой сайт было непросто из-за большого объема работ

Как сохранить сайт локально: нет необходимости, сайт и так изначально находится на локальном ПК (html, картинки)

создать сайт на языке программирования

Нам нужен один из языков, код которых работает через интерпретатор - PHP, Perl, Pyhton. Что означает фраза "создать сайт"? Мы пишем код, сервер (например PHP) делает из него html страницу и отдает браузеру, браузер отображает :)

Вот пример сайта на PHP

<?php
  echo
"Hello World";
?>

Открываем блокнот, заносим туда этот код, сохраняем в файл index.php, выкладываем на хостинг в корневую директорию. Да, для эксперимента был использован хостинг seotable.ru, временно убрали родной файл index.php, перенесли свой вариант. Вводим адрес сайта в браузере - видим Hello World. Вот нас и есть сайт из одной странички, написанной на PHP.



Позвольте, а где тэги <html>, <head>, <body>? Пока нету, изменим код в файле index.php

<html>

<head>
</head>

<body>

<?php
echo "Hello World";
?>

</body>
</html>

Сохраняем, переносим, смотрим. Вывод в браузере остался без изменений

смотрим код страницы



Все тэги на месте, кода php уже нет.

Комментарии:

1. HTML - это браузерный язык, т.е. все написанное красным цветов выполняется в браузере на машине клиента (т.е. на том ПК, который перед Вами). PHP - это серверный язык, т.е. написанное синим выполняется на сервере (на сервере хостинга, т.е. может даже не в Вашем городе и не в Вашей стране)

2. Можно ли все написанное сохранить в файле с расширением .html? Сохранить можно, только (в общем случае) на экран будет выведен сам код PHP, а не результат его работы. Необходимо сделать настройки на сервере, что бы сервер "понимал" необходимость исполнения кода PHP в файлах html.
На хостинге для этих целей Вам придется внести в файл .htaccess изменения. В этом файле укажите следующий код:
AddHandler application/x-httpd-php .php .html .shtml .htm Если не заработало - свяжитесь с сапортом хостинга, они помогут.

3. Если просто кликнуть мышкой по файлу index.php на локальном ПК - то ничего интересного не произойдет, у нас нет локального сервера PHP. Для остальных языков аналогично - на хостинге должна быть поддержка этих языков, должен быть установлен соответствующий сервер. Если сервера нет - то наш код это просто текст.

Как сервер на хостинге "узнал", что надо запускать файл index.php? Ему об этом "сказали" настройки на хостинге, там есть такая волшебная строка вида boot = index.php, index.html, index.htm
Хотите, что бы по умолчанию запускался файл с другим названием - меняйте настройки, например boot = myindex.php, myindex.html, myindex.htm, сервер хостинга будет искать в корневой папке и запускать эти файлы.
Если данной настройки на хостинге не нашли - обращайтесь в техподдержку, пусть они внесут изменения, данная настройка на некоторых хостингах скрыта от пользователей (на всякий случай).

Как запустить код php на локальном компьютере - нужен Denwer

Как сохранить сайт локально: нет необходимости, сайт и так изначально находится на локальном ПК (html, php, картинки)

CMS – система управления сайтом

Поэтому начал активно развиваться следующий этап сайтостроительства. Писать полностью сайт на PHP - задача не конечно по-проще, чем собирать сайт из html. Но все равно большой объем работы. Поэтому стали создаваться системы управления сайтами, уже написанные на PHP. Это сильно упростило задачу создания сайта для конечного пользователя.

На сервере есть:

- интерпретатор языка php, который собирает страницы html по запросу пользователя

- кусочки файлов с информацией, которую через специальную форму вводит пользователь

- система управления сайтом CMS (Joomla, WordPress, HostCms, Bitrix и т.д.), в которой уже есть готовые модули сайта

- инструкции php, как именно надо собраться страницу для показа пользователю

Т.е. теперь сайт – это программный код для сборки программного кода для браузера пользователя (получается матрешка в матрешке). И те страницы, который видит пользователь – они существуют только на его экране монитора, на сервере их в таком виде нет.

Как пример – сайт интернет-магазина www.imory.ru или сайт www.futurebest.ru Для наполнения такого сайта программист уже не нужен – нужен только сотрудник (не программист) внутри компании, у которого есть административный доступ. И у сайта нет физически существующих страниц – страница к показу создается сервером (точнее – создается код страницы для обработки его браузером) после запроса конечного пользователя (или робота поисковой системы, который ее индексирует).

Итого наш сайт представляет из себя:
- файлы от CMS
- файлы с картинками
- собственно текстовый контент, который хранится в базе MySQL

Как сохранить сайт локально:
- переписать все файлы с хостинга себе на ПК (их там порядка 3-4 тысяч, это файлы CMS и картинки от сайта)
- сделать себе так называемый дамп базы MySql в локальный файл (через phpMyAdmin)

Легко сказать "переписать", обычно в составе CMS очень много файлов и просто копирование с хостинга займет много времени. Но у нормальных хостингов обычно есть услуга "архивация", где простым нажатием на сервере хостинга создается архивный файл со всеми фалами и дампом базе, обычное расширение архива .gz

Остается только этот файл переписать себе на локальный ПК. Файл нормально открывается в Windows-системах с помощью WinRAR.

CMS Примерное число файлов
 HostCMS  3500 файлов
 Joomla  3200 файлов
 1C-Bitrix  
 WordPress  

 

Какие бывают сайты с точки зрения серверов.

 

Реально работу сайта поддерживают как минимум 4 сервера, причем этом могут быть разные сервера в разных компаниях.

  1. Сервер, где зарегистрировано доменное имя.
  2. Сервер DNS (Domain Name Server), который знает соответствие между доменным именем и местом, где физически размещается сайт
  3. Хостинг – дисковое пространство для файлов сайта
  4. Почтовый сервер, где находится почта

 

Может быть такой вариант:

  1. Ру-центр
  2. DNS может быть у Яндекса (бесплатно)
  3. Хостинг, например, у компании Мастерхост
  4. Почтовый сервер используется Google (бесплатно)

 

 

Но для пользователя все это выглядит единым целым.

  • CMS - что это (2448)

    Какие бывают сайты с точки программирования. сборка сайта руками Вначале сайты были простые. Сайт в простом варианте представляет из себя набор файлов с расширением html, где указаны инструкции браузеру, как выводить информацию на экран пользователю. Соответственно программист делал файлы для...

  • Подключение MySQL к CMS (1086)

    При установке CMS хостинг процесс происходит автоматически, установщик запрашивает название базы, иногда префикс записей, пользователя и его пароль. Все это куда-то заносится - и потом можно работать с CMS, создавать сайт.  Но вот Вы вошли на хостинг и добрый робот Вам напоминает, что давно не...

  • CMS Joomla (1001)

    Существуют три основные версии Jommla, причем корректный переход на следующую версию невозможен из-за разных платформ. Т.е. обновиться с Joomla 2 на Joomla 3 невозможно. Старые версии Joomla 1 и Joomla 2, текущая основная версия Joomla 3. Можно отметить, что для всех версий сразу не очень понятно, как...

  • База MySQL (699)

  • Denwer (619)