Форум программистов, компьютерный форум, киберфорум
Наши страницы
Apache, htaccess
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.91/44: Рейтинг темы: голосов - 44, средняя оценка - 4.91
rabamaster
3 / 3 / 0
Регистрация: 28.02.2010
Сообщений: 15
1

Как работает связка клиент-сервер (apache-php-mysql)?

11.03.2013, 00:42. Просмотров 8234. Ответов 4
Метки нет (Все метки)

верна ли схема web сервера, php, mysql, apache, noip?
Нарисовал схемку взаимодействия клиента с web-сервером с apache, php, mysql и попробовал ее прокомментировать. Посмотрите, верно ли все?
1. Клиентский компьютер (браузер) обращается по доменному имени к сайту example.noip.
2. Сервер NoIP возвращает динамический IP-адрес сервера.
3. Клиентский компьютер обращается к web-серверу Apache по IP адресу и запрашивает страницу index.php.
4. Apache запускает интерпретатор PHP и выполняет скрипт записанный в файле index.php.
5. Скрипт, записанный в файле index.php, запрашивает несколько записей из базы данных на языке SQL.
6. Данные из базы данных передаются интерпретатору PHP.
7. Интерпретатор PHP формирует динамический html документ.
8. HTML документ передается клиентской машине (браузеру).

здесь рисунок

прошу покритиковать
2
Миниатюры
Как работает связка клиент-сервер (apache-php-mysql)?  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2013, 00:42
Ответы с готовыми решениями:

Настроенный сервер Apache PHP MysQl Phpmyadmin SMTP
Я решил поделится настроенным сервером Apache PHP MysQl Phpmyadmin SMTP.Где то...

Не удаётся связка apache+php
Установил под Windows 10 apache 2.2.18 и php 5.2.16 . Сделал настройку, пытаюсь...

Как создать сервер Apache, на PHP?
Возможно ли создать сервер Apache, на языке серверного программирования PHP?...

Как запустить Apache,PHP,MySQL после переустановки Windows7?
Переустановила Windows7 и понятия не имею как запустить сервер. Ставила всё по...

Apache+PHP+MySQL ? O_0
Всем доброе время суток. Я установил Apache+PHP+MySQL для того что...

4
NEbO
594 / 461 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
Завершенные тесты: 3
11.03.2013, 01:52 2
раз уж вы хотите критики, могу вам ее любезно предоставить
во-первых, немного странная связка. кроме noip вообще очень много подобных сервисов, да и каким боком он (конкретный сервис) вообще лежит в плоскости логики работы сервер-интерпретатор-клиент? рекомендую сменить noip на просто "днс-сервер", это будет правильнее в общем случае, да и к вашему подойдет -- динамический айпи не динамический -- разница-то какая?
во-вторых,
Цитата Сообщение от rabamaster Посмотреть сообщение
Клиентский компьютер обращается к web-серверу Apache по IP адресу и запрашивает страницу index.php.
в корне неверно, при отсуствии входных данных. Вам следует указать, к какой странице вы обращаетесь, или не применять частности, вроде имени файла index.php. Иначе получается, что куда бы клиент не обратился, вне зависимости от настроек серверного ПО, всегда обращение идет к некоему файлу index.php (кстати, а хде этот файл должен находиться? на диске C? в корне ФС? В папке /www?). Другой момент связан также с тем, что раз уж вы начали говорить о частностях, объясните, откуда у сервера берется информация об имени хоста, к которому обращаются (разумеется, не забыв упомянуть про случай с виртуальными серверами на одном айпи), иначе получается, что зачем то мы этот айпи получили, к нему обратились, а сервер, между прочим, настройки которого привязаны к доменному имени, откуда-то понимает, что этот запрос к a.example.org, а другой -- к b.example.org.
в-третьих,
Цитата Сообщение от rabamaster Посмотреть сообщение
5. Скрипт, записанный в файле index.php, запрашивает несколько записей из базы данных на языке SQL.
блин. вот тут придется вас разочаровать конкретно. начну с конца.
1. SQL -- это не язык, на котором пишутся "базы данных". Как формально (DDL-"язык глаголов", а не конкретных сущностей), так и фактически (да, собстенно, что вы вообще понимаете под термином "база данных"? субд -- так они на языках программирования пишутся, а не на DDL-языках. сами данные? ну на полпроцента вы правы, в таком случае: база данных представима в виде INSERT/UPDATE-запросов, но это все равно что нарисовать на бумаге структуру молекулы и говорить, что этот лист бумаги является молекулой). Конечно, странно, что рассказали о сервере, интерпретаторе и бд, и при этом не упомянули субд, однако, вырезав часть "на языке SQL" фраза становится корректной.
2. несколько? хоть я и не филолог, но по-моему, психологически, многие читатели подобной ерунды подумают, что это может означать немного, и даже засунув mysql_query в for ($i=0;$i<10000;$i++), в праве подумать: ну это фигня, запросов-то всего НЕСКОЛЬКО будет. Формально, слово "несколько", пожалуй и к месту, но лично я бы предпочел формулировку "некоторое количество". Она не привязана к каким-либо числам, и может означать хоть 1, хоть 500, хоть 200 000 запросов.
3. ну скажите, с какого перепугу вообще интерпретатор обязан обращаться к базе? даже если говорить о чем-то реальном, по крайней мере более-менее, есть же хитропопое кеширование, какие-то несложные запросы, или если очень быстро нужно отработать и сохранить временные данные. В конце концов, не всегда сервер==сайт, а веб-приложении в общем смысле, может встретиться что угодно. Хотя, собственно, есть проекты, даже cms, которые работают без бд как таковой.
в четвертых,
Цитата Сообщение от rabamaster Посмотреть сообщение
6. Данные из базы данных передаются интерпретатору PHP.
7. Интерпретатор PHP формирует динамический html документ.
то есть скрипт запросил, а вернулось оно интерпретатору? прикольно уже. а по каким правилам интерпретатор формирует html-контент? и почему именно html? может я хочу json-формат, в веб-приложении, или xml-данные (например, читаю rss-ленту или sitemap.xml смотрю). Впрочем, вот уже в данном случае, я бы оставил html, потому что так проще и нагляднее понять новичку, если он видел исходник html-страницы, он представляет, что это. А значит, понятно, что приходит клиенту. Но тогда вопрос: почему динамический html? Вы не упоминаете детали рендеринга на клиенте, так зачем вообще это уточнение? Это только сбивает все с толку: динамический ип, динамический html, динамический скрипт на сервере -- оно все динамическое. Но в каждом случае, с заданным вами уровнем детализации, каждое из этих слов лишнее и мешает.
в-пятых,
Цитата Сообщение от rabamaster Посмотреть сообщение
8. HTML документ передается клиентской машине (браузеру).
клиентская машина !== браузер. впрочем, как и в пункте 1, Клиентский компьютер !== браузер. Просто немного перефразируйте, это мелочи.
В-шестых, остальное верно, если рассматривать только лишь в указанном вами базисе. Зачастую пользуются другими серверами и даже интерпретаторами. Если вы намерены "сделать урок" по пхп, я бы убрал часть с конкретизацией веб-сервера, или наоборот, ибо бесполезная конкретизация.

А в остальном все верно, да!
1
ft4l
Невнимательный
252 / 215 / 91
Регистрация: 08.02.2013
Сообщений: 641
Записей в блоге: 1
11.03.2013, 02:14 3
стрелка 7 идёт обратно к серверу, а стрелка 8 от сервера ноуту.)
1
NEbO
594 / 461 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
Завершенные тесты: 3
11.03.2013, 02:37 4
а как по мне, хорошая картинка. ну noip опять же, не совсем понятно, почему он, а не абстрактный днс, а остальное я бы даже менять не стал. так красивее, с иконками, и лучше запоминается на частном (вроде как), при визуализации (если рассматривать это в качестве учебного пособия).

Добавлено через 4 минуты

Не по теме:

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

0
Илья Федин
11.03.2013, 09:36     Как работает связка клиент-сервер (apache-php-mysql)?
  #5

Не по теме:

rabamaster, Спасибо за схемку, как обои поставлю :)

0
11.03.2013, 09:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.03.2013, 09:36
Привет! Вот еще темы с ответами:

Установка apache php mysql
Здравствуйте. Изучил досконально...

Apache, php, mysql и phpmyadmin
Всем доброго времени суток. Сегодня и вчера (в общем за 2 дня) поставил на свою...

Не удается подключить mysql к связке apache+php
Установелны апач и php, всё работает. Установил Mysql, из коммандной строки...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru