Блог О пользователеneirol

Регистрация

Календарь

  Декабрь 2010  
Пн Вт Ср Чт Пт Сб Вс
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

Шевченко Neirol Борис

 

PHP и Apache


Apache это свободный веб-сервер, самый популярный среди веб-серверов. Он надежен, гибок и прост в установке. Но самое главное это то, что он на нем, мы можем выполнять PHP код.

PHP это скриптовый язык, т.е. скрипт обрабатывается всегда, когда вызывается, а не выполняется при вызове как, например, программа в Windows. Наверное это может показаться недостатком, потому что на это постоянно тратиться больше времени, чем на одну компиляцию при разработке программы и выполнение уже оптимизированного, обработанного кода в будущем, но это не так. Скрипты PHP не требует больших затрат, и за счет того, что весь код PHP находится в текстовых файлах, который вы можете менять всегда, а следовательно и менять работу скрипта, без всяких других действий, он дарит нам море удобства для отладки и избавляет нас от многих проблем. Таким образом, вы просто грузите на сервер текстовые файлы, обратившись к которым через браузер вы получите результат своего скрипта.

PHP устанавливается на компьютер как отдельное ПО и для его использования в Apache вам потребуется модуль, позволяющий работать Apache с PHP. Вы также можете установить PHP через CGI, но работать в таком случае PHP будет медленнее.

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

Давайте рассмотрим установку Apache и PHP на Ubuntu. Если у вас нет Ubuntu, вы можете скачать ее на http://ubuntu.com/ и установить либо вместе со своей текущей ОС (или даже заменить ее на Ubuntu) или установить Ubuntu через VMWare (виртуально).

Переходим в Приложения - > Стандартные - > Терминал и вводим туда следующие команды:

sudo apt-get update
sudo apt-get install apache2
sudo apt-get install php5 libapache2-mod-php5


Первой командой вы обновляете репозиторий приложений apt.
Второй командой вы установите из репозитория Apache.
Последней командой вы установите PHP в качестве модуля для Apache.
О командах в Linux я расскажу в своих следующих постах, по этому пока не заморачивайтесь.

Если вы сейчас зайдете по своему IP адресу через любой браузер (узнать ip можно тут: http://2ip.ru), то вы должны увидеть It works!, если все сделали правильно.
Но Apache говорит только за себя, и поэтому нам еще нужно проверить PHP.

sudo nautilus

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

А нужно нам создать файл index.php в папке /var/www/, поэтому переходим в нее, чистим все, что там внутри и создаем новый документ, который называем index.php. Заходим в него и вставляем следующий код:

 

< ?php

print "Привет, мир!";

phpinfo();

? >


(пробелов около < и > не должно быть, по неизвестной мне причине они добавляются этим сайтом автоматически, уже разбираюсь с этой проблемой с администрацией сайта)

 

Теперь опять заходите в браузере по своему IP, и если вы все сделали правильно, то вы должны увидеть строку Привет, мир! и после нее кучу всяких конфигураций PHP. PHP и Apache работают, и теперь мы можем работать с ними.


 

Почему я начал с веб-программирования


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


На самом деле, сейчас вы уже можете разработать сайт и без навыков веб-программирования, на рынке уже распространены бесплатные и платные CMS. Все, что нужно, чтобы сайт заработал на CMS (а CMS это кстати система администрирования сайтов), это нарисовать дизайн, сверстать его и "натянуть" на CMS. Для того, чтобы сделать это, достаточно начальных навыков работы в Photoshop, знания HTML и знания самой CMS, на которую вы собираетесь натягивать свою верстку. Хотя можно сделать еще проще, найти готовый шаблон под вашу CMS и просто немного поменять его структуру и графические элементы и все, сайт готов.


Все прекрасно, но CMS не спасут вас всегда, и вообще я говорил не о разработке сайтов, а о том, что начинать изучать программирование можно с веб-программирования. Но на самом деле программировать в вебе можно по разному. Можно использовать языки PHP, ASP.NET, а можно с помощью CGI выполнить в вебе вообще скрипт на почти любом языке прикладного программирования. Я же говорю про PHP. Возможно в ASP.NET тоже не сложнее, но с ним я не связывался, и связываться не хочу, даже не знаю почему.


Как я сказал раньше, CMS вас не всегда спасут, и это так. CMS как программный шаблон для сайта, и если все существующие такие шаблоны вам не подойдут, вам придется разрабатывать свой собственный. Более того, крупные проекты, на которые предполагается высокая нагрузка, категорически нельзя разрабатывать на CMS, да и скорей у вас не получится это сделать, ведь для начала разрабатывается своя собственная архитектура, под которую потом и точится код. В случае с CMS: проще утопится в унитазе, чем точить ее под свою архитектуру.


На самом деле, все дело не в простоте языка программирования, а в том, чтобы при как можно меньшей зависимости от языка понять принципы программирования и поняв их, у вас изучения других языков пойдет гладко как по маслу и даже более того, потому что конструкции многих языков программирования схожи. PHP как раз предоставляет такую возможность, его основные конструкции не разрывают мозг, можно поняв азы приступать к решению довольно сложных задач и в результате этого понять эти принципы, конечно же не сразу. И поняв эти принципы, у вас за спиной останутся еще знания в веб-программировании, которые уже не могут не пригодится в мире, когда интернет стал отнимать 30% времени у человека.