|
|
|
|||||||||||||||||
|
|
Мобильные устройства Миникомпьютеры Цифровые фотокамеры Портативные MP3 проигрыватели Аксессуары для сотовой связи Системы навигации Карты памяти Flash Drive Цифровые видеокамерыПортативные компьютеры Портативные компьютеры Pentium Портативные компьютеры Celeron Портативные компьютеры Pentium-II Портативные компьютеры Pentium-III Панельные компьютеры Аксессуары для портативных компьютеров Портативные компьютеры Athlon Портативные компьютеры Pentium-IV Портативные компьютеры Intel Pentium M (Centrino) Портативные компьютеры на базе процессора Athlon 64 Портативные компьютеры на базе процессора Sempron Портативные компьютеры на базе процессора Turion 64 Портативные компьютеры на базе процессора Intel Core Duo (Centrino) Портативные компьютеры на базе процессора Intel Core Solo (Centrino) Ультра-мобильные персональные компьютеры (UMPC)Оборудование для домашних кинотеатров и презентаций Оборудование для презентаций Плазменные панели LCD телевизорыКомпьютеры Компьютеры Low-класс. Intel Pentium Компьютеры Low-класс. AMD K6-2 Компьютеры Middle-класс. AMD Duron Компьютеры TOP-класс. AMD Athlon XP Компьютеры Middle-класс. Intel Celeron Компьютеры Low-класс. Intel Pentium-II Компьютеры Low-класс. Intel Pentium-III Рабочие станции Серверы и сетевые рабочие станции Компьютеры TOP-класс. AMD Athlon 64 Компьютеры Middle-класс. AMD Sempron Компьютеры TOP-класс. Intel Pentium-4 Компьютеры Low-класс. Intel Celeron Компьютеры TOP-класс. Intel Pentium D Компьютеры TOP-класс. AMD Athlon 64 X2 Компьютеры TOP-класс. Intel Core 2 Duo Компьютеры TOP-класс. Intel Pentium Компьютеры TOP-класс. AMD Phenom X4
|
|
Linux, PHP, MySQL, Apache -> Формула успеха!Владимир Царьков Уверен, что каждый интернет-программист в свое время начинал с изучения HTML (Hypertext Markup Language). Но этот язык, так сказать, первая ступень, а что же дальше?
PHP (PHP: Hypertext Preprocessor) - один из языков более высокого уровня. Его превосходство над HTML в том, что, исполняясь на стороне сервера, PHP может взаимодействовать с базами данных, почтовыми программами, файлами и делать многое другое, создавая для программиста возможность реализовывать проекты любой сложности. Альтернативой PHP служат Perl и ASP (Active Server Pages), но о них мы сегодня говорить не будем. При всем вышеперечисленном, даже такой продвинутый язык без комбинирования с HTML будет совершенно не эффективен (ни форму создать, ни текст отформатировать). Так что чаще всего php-скрипт встраивается в HTML-код, и путем комбинирования достигается желаемый результат. В принципе, само название PHP говорит о том, что язык этот создан для организации движка сайта, а не для реализации его внешнего вида. PHP.net - официальный сайт данного языка web-программирования. SQL (Structured Query Language) - структурированный язык запросов, используется для взаимодействия с реляционными базами данных. Причем, каждая СУБД (Система Управления Базами Данных), будь то Oracle, SQL Server, DB2, Informix, SyBase или MySQL, имеет свой собственный диалект, и, несмотря на то что существуют стандарты SQL1 и SQL2, проблемы с переносимостью на другие платформы БД (баз данных), написанных на разных диалектах, остаются. При реализации интернет-проектов средней и даже высокой сложности чаще всего используется СУБД MySQL. Это бесплатно распространяемая СУБД, ее можно скачать с того же sourceforge.net и использовать совершенно свободно. Однако корпоративный рынок прочно захвачен такими коммерческими монстрами, как Oracle, DB2, SQL Server и Informix.
Допустим, что у нас есть дистрибутивы PHP и СУБД MySQL. Что теперь? Теперь надо заставить их работать вместе. Что делать? Без использования домашнего web-сервера у нас ничего толкового не получится. Можно, конечно, тестировать все online, но то, насколько это будет убыточно относительно времени и особенно денег, я думаю, объяснять не надо. В домашних условиях я бы посоветовал использовать Apache. Это один из самых популярных и распространенных web-серверов, поддерживающийся как Unix, так и Windows, впрочем, вам никто не запрещает работать, например, с TUX, но про него, опять же, не в этой статье. Взять Apache можно с apache.org или apache.lexa.ru. Итак, рассматривать проблему мы будем с точки зрения пользователя Linux, поэтому, похоже, что "Формула успеха" уже определилась и выглядит следующим образом: ((HTML+PHP+SQLMySQL)*Apache))Linux. Чтобы вышеуказанная формула давала желаемые результаты, надо толком настроить все переменные. В случае с Windows настройка вышеописанного программного обеспечения не составила бы труда: запускаем *.exe или *.msi файлы - и поехали, потом редактируем пару строк в httpd.conf, и все готово. Но мы говорим про Linux, здесь все гораздо более интересно и весело. Приступим. Для начала введу несколько соглашений: 1. Все действия проводятся с правами root. 2. Знак "%" не является частью представленных ниже команд, а лишь указывает на начало строки с командой. 3. Установку я предлагаю провести в несколько этапов: I. MySQL II. Apache + PHP После установки и настройки программного обеспечения мы проведем комплексное тестирование. Несколько слов про версии программ: желательно, чтобы Apache был версии 1.3.x и старше, PHP версии 4.3.3 и старше, MySQL версии 4.0.16 и старше.
I. MySQLОткровенно говоря, на большинстве ОС семейства Linux MySQL уже установлена, и если вы везучий человек, то и ваша система не исключение. Ну а для тех, кому повезло меньше, я приведу список необходимых для установки СУБД действий. Установку MySQL в этой статье мы будем проводить с помощью *.rpm файлов. И хоть я их не очень люблю за иногда появляющуюся у них жадность до отсутствующих на моем компьютере библиотек, все же установка *.rpm пакета проходит гораздо быстрее и проще инсталляции той же программы с использованием бинарных файлов (*.tar.gz). Итак, качаем *.rpm архив с нужной вам версией СУБД с sourceforge.net. Запускаем терминал и выполняем следующие команды: % cd /папка_где_лежит_rpm_пакет Опция -qpl выводит список содержащихся в пакете файлов. % rpm -qpi имя пакета.rpm Опция -qpi поможет вам получить данные об имени и версии пакета, а также краткую дополнительную информацию. Если все нормально и пакет подходит для вашей системы - достаточно выполнить команду % rpm -i имя_пакета.rpm и MySQL будет установлена. Если же возникнут ошибки из-за нехватки каких-нибудь библиотек, найдите их через Интернет - и все будет в порядке.
II. Apache + PHPApache и PHP можно инсталлировать вместе по причине того, что для установки языка потребуется переконфигурировать сервер, так зачем же нам попусту тратить время? Переходим в папку, в которой лежат наши tar.gz или tar-архивы программ, она может быть названа по вашему усмотрению. 1. % cd /путь_к_папке Распаковываем архивы: 2. % tar zxvf apache_1.3.x.tar.gz % tar zxvf php_4.x.x.tar.gz или % gunzip apache_1.3.x.tar % gunzip php_4.x.x.tarВо всех статьях, затрагивающих установку *.tar.gz архивов в Unix, используется команда "tar", но очень редко где говорится про ее опции. Мне бы хотелось восполнить этот пробел. В нашем случае опциями являются символы "zxvf". Для чего же они нужны? Объясняю: z - разархивировать, используя утилиту ungzip; И это только один из вариантов команды на распаковку архива. Можно, например, пользоваться такой командой: % tar --ungzip --get --verbose -f имя_файла.tar.gz
Правда, сравнив длину данной строки с предыдущей, вы поймете, почему чаще используют именно первый вариант. Надеюсь, что эта информация поможет вам в будущем. Но вернемся к процессу установки. Перейдем в папку, куда только что распаковали сервер: 3. % cd apache_1.3.x Конфигурируем сервер: 4. % ./configure --prefix=/www Вот здесь необходимо быть особенно внимательным! Даже в некоторых книгах встречаются ошибки в синтаксисе команд конфигурации. Команда "./" запускает файл на исполнение, в нашем случае это файл конфигурации "configure". Затем идут опции конфигурации, в нашем случае сервера. Иными словами, поддержку каких технологий включить, а какую выключить или в какую папку программу ставить. В общем случае синтаксис опций таков: --опция=значение (перед опцией обязательно должны находиться два тире!) или --опция-значение (перед опцией обязательно должны находиться два тире!) или --опция-значение=дополнительные_параметры (перед опцией обязательно должны находиться два тире!)
В нашем случае, строка: % ./configure --/prefix=/www означает, что надо сконфигурировать Apache так, чтобы он установился не в папку по умолчанию (это папка /usr/local), а в папку /www. Имя директории может быть любым, только советую давать ей название на английском языке, покороче (3-6 символов) и без пробелов. Теперь переходим в каталог с распакованным PHP: 5. % cd ../php-4.x.x и конфигурируем его для работы с Apache, при этом не забывая и про MySQL: 6. % ./configure --with-mysql --with-apache=../apache_1.3.x --enable-track-vars --with-config-file-path=/usr/local/lib/php4.ini Значение для опции --with-apache зависит от того, в какой папке находится разархивированный дистрибутив Apache, а значение опции --with-config-file-path отвечает за то, куда будет размещен файл настройки PHP. Вы можете создать свой собственный путь, но, в принципе, в большинстве случаев лучше оставить по умолчанию. Далее запускаем процесс установки: 7. % make Команда "make" создает необходимые для окончательной инсталляции make-файлы, основываясь при этом на тех файлах конфигурации, которые были инициализированы после выполнения команды "./configure". Далее для завершения установки PHP на компьютер под управлением Linux нам остается лишь ввести следующую команду: 8. % make install Эта команда окончательно инсталлирует PHP на ваш компьютер, основываясь на ранее созданных make-файлах. По сути дела, до исполнения данной команды все действия проводились только с данными распакованных архивов, при этом на систему в целом это не оказывало никакого воздействия. Далее переходим в папку, куда был распакован Apache: 9. % cd ../apache_1.3.x Теперь конфигурируем наш сервер, активируя PHP-модуль. Цифра 4 в команде означает версию вашего PHP. Так, к примеру, если у вас PHP-3.4.0, версия на данный момент старая, конечно, но все же вместо 4 вы должны прописать цифру 3. 10. % . /configure --prefix=/www --activate-module=src/modules/php4/libphp4.a Отлично. Ниже представлены уже знакомые вам команды, которые надо прописать для окончательной установки Apache на компьютер под управлением Linux. 11. % make 12. % make install Все, теперь нам остается добавить одну строку в файл httpd.conf, в некоторых версиях Apache он может называться srm.conf. Этот документ должен лежать в папке путь_куда_установлен_сервер_apache/config, например, /usr/local/apache/config. 13. % AddType application/x-httpd-php .php Вместо *.php можно выбрать любое другое расширение (рис. 1).
ТестированиеВсе элементы нашей "Формулы успеха" установлены, и теперь надо удостовериться в их готовности к совместной работе. Для этого я предлагаю написать маленькое тестовое приложение, использующее возможности компонентов, установленных нами ранее. Ниже приведен план необходимых действий: 1. Для начала откроем блокнот или какой-нибудь HTML-редактор и пропишем там следующие строки: <?php Эта статья не претендует на звание PHP/MySQL tutorial, поэтому я только скажу, что с помощью этих строк мы подключаемся к СУБД и достаем из базы данных нужную информацию. В этом коде вы должны подставить свои имя пользователя и пароль для MySQL-сервера, а также указать имя базы данных, к которой надо подключиться, и таблицу, строки которой будут выбраны. 2. Сохраним получившийся документ в формате, который вы избрали в качестве формата для файлов PHP, при этом помещая его в директорию htdocs папки apache. 3. Далее запустим командную строку MySQL. % cd /etc/rc.d/init.d После выполнения данных команд перед вами должно появиться что-то вроде приглашения mysql>_ (рис. 2). 4. Теперь надо создать БД, к таблицам которой мы обращаемся в скрипте, приведенном в первом пункте плана. % create database DATABASE_NAME; Готово, данные занесены в БД. 5. Теперь запускаем наш web-сервер. Хочу заметить, что команда, необходимая для этого, будет указана после окончания процесса установки Apache. Она должна выглядеть примерно так: % /www/bin/apachectl start 6. Открываем любой обозреватель и прописываем в адресной строке 127.0.0.1. Если сервер запущен и все настроено корректно, то перед вами должна предстать страница с приветственным текстом от разработчиков Apache (рис. 4). 7. Далее переходим на страницу, созданную и сохраненную в пунктах 1 и 2: 127.0.0.1/filename.php. Если вы видите что-нибудь вроде "parse error", то смотрите пункт 1 и ищите ошибку в своем коде, это не так сложно, поскольку интерпретатор любезно указывает строку, где существует некорректная запись. Ну а в том случае, если какой-нибудь Mozilla выводит что-то похожее на: name: First message content: Hello world! - мне остается вас поздравить с успешным окончанием тестирования (рис. 5).
Пара советов напоследокОчень важно отметить, что по умолчанию Apache использует кодировку iso-8859-1, поэтому, если вы захотите вывести на странице русский текст, - увидите ахинею. Для решения проблемы надо найти в httpd.conf строку "Default charset" и переправить ее содержимое на windows-1251 (рис. 6). Для написания баз данных на SQL очень советую использовать текстовые файлы. Хорошо, что терминал в Linux помнит введенные ранее команды, и если вдруг в запросе возникнет ошибка, можно, используя кнопочки "вверх" и "вниз", вернуть злосчастную строку и переправить ее содержимое, в Windows придется все переписывать заново! А теперь представьте, что вы пропустили жалкую запятую, а когда придется переписать символов так на 300, в лучшем случае, сколько еще ошибок может появиться? Для работы с текстовыми файлами очень удобно использовать программу PHP-admin. Как видно из названия, она реализована на PHP. На момент написания статьи я рекомендовал бы версию 2.5.3. Скачать прогу можно на том же sourceforge.net (рис. 7). ЗаключениеВот и все. Надеюсь, приведенная в статье "Формула успеха" принесет вам желаемые результаты. Удачи! |
Сетевое оборудование Оборудование для тестирования компьютерных сетей Маршрутизаторы, брандмауэры Концентраторы, коммутаторы Мосты, повторители, трансиверы Сетевые карты Сетевые аксессуары Оборудование для беспроводных сетей Комплексные сетевые решения 19 и 10 Решения Модемы для выделенных линий Кроссовое оборудованиеКомплектующие принадлежности Процессоры Материнские платы Модули памяти Видеокарты Платы видеозахвата, TV- и FM-тюнеры Звуковые карты Модемы, факс-модемы HDD IDE RAID-контроллеры RAID-системы Флоппи-дисководы Устройства для чтения CD Устройства для чтения и записи CD Дискеты, компакт-диски Корпуса Сопутствующие аксессуары Блоки питания для корпусов Устройства для чтения и записи DVDПериферийные устройства Акустические системы Системы ввода Мониторы электронно-лучевые Мониторы жидкокристаллические Сенсорные ЖК мониторы Принтеры матричные Принтеры струйные Принтеры лазерные Специализированные принтеры Плоттеры Дигитайзеры Сканеры Сетевые фильтры и стабилизаторы Источники бесперебойного питания Web-камеры и принадлежности для видеоконференций Промышленные сканеры Устройства для печати и сканирования штрих-кода Цветные лазерные принтеры KVM-переключатели и аксессуарыОргтехника и системы безопастности Ризографы Копировальные аппараты Послепечатное оборудование Офисная техника Многофункциональные центры Банковская техника Пластиковые карты Бумага, пленка Расходные материалы для оргтехники Компьютерная телефония Телефоны Телефонные станции, мини-АТС Телефаксы Системы видеонаблюдения Запасные части для оргтехникиInternet Internet-пакеты Web-hosting и другие услуги Информационные ресурсы интернет Интернет-магазиныПрограммное обеспечение Операционные системы Офисные пакеты Бухгалтерские программы и программы делопроизводства Среды программирования, графические и инженерные пакетыРазное Обучение Компьютерная и офисная мебель Ремонт, upgrade, услуги |
|||||||||||||||||
|
||||||||||||||||||||