Уеб дизайн

Apache, PHP и MySQL

Златно правило в уебразработката е създаването на тестов сайт, който да дублира работещия и да служи като място, на което да се изпробват нововъведенията, преди да се качат в работещия и обслужващ потребители сайт в Интернет. Това помага да се избегнат проблеми, като например появата на съобщения за грешки и временна недостъпност на сайта, което винаги е нежелателно.
Лесно можете да си направите тестова платформа в къщи, като свържете заедно уебсървъра Apache, PHP препроцесора и базата данни MySQL, като използвате приложението XAMPP. То ще ви позволи да избегнете ръчното свързване на отделните приложения така, че да работят заедно. XAMPP представлява лесна за инсталиране дистрибуция за разработчици, които желаят да навлязат по-безпроблемно в света на Apache и искат повечето функции в сървъра да са конфигурирани и включени по подразбиране.
XAMPP можете да свалите от адрес http://www.apachefriends.org/en/xampp.html, като ще го намерите във версии за Windows, Линукс, MacOS X и Solaris. В случая ще разгледам пакета, подходящ за инсталация под Windows, който съдържа Apache, MySQL, PHP + PEAR, Perl, mod_php, mod_perl, mod_ssl, OpenSSL, уебинтерфейса за работа с MySQL – phpMyAdmin, FileZilla FTP и др. Той може да бъде инсталиран на Windows 98, NT, 2000 и XP, инсталаторът е с размер 26 MB. Най-актуалната версия на XAMPP е 1.4.14, Apache е във версия 2.0.54, MySQL е 4.1.12, а PHP – 5.0.4.

Инсталиране и конфигуриране
Инсталацията протича нормално и няма да ви бъдат задавани сложни въпроси, като всички нужни приложни файлове, включително и директориите, където ще се помещава съдържанието на сайта, са в директорията C:apachefriends.
След инсталацията можете да стартирате сървърите, като от програмната група apachefriends на стартовото меню пуснете контролния център. От него имате възможност да стартирате Apache, MySQL, FileZilla FTP и Mercury. При първо стартиране защитната стена на Windows може да ви попита дали искате да разрешите на приложенията достъп до Интернет, като е нужно да натиснете Unblock. Ако сървърът ще работи само локално и нямате намерение да бъде видим от Интернет, забранете достъпа му до Мрежата.
След като стартирате Apache и MySQL, можете да отворите браузъра и в адресната лента да напишете localhost. Ще се отвори първият хостван на вашия компютър сайт, който съдържа линкове към phpMyAdmin, базови пощенски възможности, документация и демонстрации. Ако изберете Security, ще видите, че вашият сървър в момента е незащитен, тъй като администраторът на MySQL още няма акаунт, phpMyAdmin е достъпен от всички без парола, както и че PHP не работи в „Защитен режим“.
За да решите проблема с липсата на парола за MySQL, трябва да създадете администраторски акаунт, като за целта отворите команден промпт, отидете в C:apachefriendsxamppmysqlbin и напишете командата:

mysqladmin -u root -p password нова-парола

След натискане на Enter приложението ще ви попита за съществуваща парола, но тъй като такава досега не е била зададена, просто трябва да натиснете Enter. За да защитите и phpMyAdmin, трябва да отворите с Notepad конфигурационния файл config.inc.php, намиращ се в директорията C:apachefriendsxamppphpmyadmin, да откриете реда $cfg[‘Servers’][$i][‘auth_type’] (89-ти ред) и да промените параметъра „config“ на „cookie“.
Това може да се направи и през уебинтерфейс при посещение на адрес http://localhost/xampp/index.php, където се задава парола за потребител root и може да се избере автентификация чрез cookie.
След това допълнителните настройки на MySQL, като създаване на нови таблици и импортиране на съществуващите, анализ и поправка може да се извършва от phpMyAdmin, който е с интерфейс на български език, което допълнително улеснява работата с него. Разбира се, почитателите на далеч по-практичния команден ред могат да управляват базите и чрез команден ред с помощта на командата mysql -u root -p, написана в директорията C:apachefriendsxamppmysqlbin.


Забележка: Направи ми впечатление, че когато се опитам да задам колацията на базата данни с –default-character-set=cp1251 (кирилица), приложението търси кодови таблици в c:mysql и тъй като не ги намира, дава съобщение за грешка. Възможно решение на проблема е да се копира директорията c:apachefriendsxamppmysql в c:.
Файловете на сайта, които искате да се виждат при посещение на локалния уебсървър, се разполагат по подразбиране в директорията C:apachefriendsxampphtdocs, но имате възможност да създадете и други поддиректории вътре и да ги асоциирате към виртуални сървъри. За тази цел е нужно да създадете псевдоним чрез редактиране на файла windows/system32/drivers/etc/hosts и да добавите свой виртуален локален домейн, например с името test.localhost, като добавите следния ред:
127.0.0.1 test.localhost

След това отворете с Notepad файла c:apachefriendsxamppapacheconfhttpd.conf и добавете следните няколко реда в края му:


    DocumentRoot „d:/apachefriends/xampp/htdocs“
ServerName localhost


    DocumentRoot „c:/apachefriends/xampp/htdocs/test“
ServerName test.localhost


По този начин с втория виртуален хост указвате директорията c:apachefriendsxampphtdocstest, съдържаща сайта test.localhost, а първият служи за това, страницата по подразбиране на XAMPP да продължи да се зарежда при въвеждане на localhost в браузъра. Обърнете внимание, че в конфигурационните файлове на Apache се използват обратно наклонени черти (/) за означаване на пътя, съгласно концепциите на *nix.
Остава само да се създаде директорията c:apachefriendsxampphtdocstest, която ще приюти сайта test.localhost.
Принципът на работа с MySQL, начинът на създаване и поддръжка на таблици, настройката на колациите, импортирането на съществуващи бази данни, както и началните знания по уебдизайн, писане на PHP скриптове и др., не са обект на разглеждане в тази статия, но допълнителна помощна информация за всички сървъри, включени в пакета на XAMPP, можете да намерите в помощните документи на локалния адрес http://localhost/xampp/manuals.php.

Заключение
Ако искате Apache и MySQL да се стартират автоматично с Windows, трябва да ги направите системни процеси, като стартирате файловете apache_installservice.bat в директорията xampp/apache и mysql_installservice.bat в директорията xampp/mysql.
Тъй като XAMPP инсталира пълни уеб, пощенски и MySQL сървъри, бъдете сигурни, че сте защитили компютъра си отвън, в случай че ще ползвате създадения от вас хостинг само за тестови нужди. Защитата може да се осигури с инсталирането на защитна стена и забрана на достъпа към уебсървъра отвън (порт 80).
В случай че решите да ползвате XAMPP за хостване на сайт в Интернет, се убедете, че всичко е настроено както трябва, че phpMyAdmin не пуска никой, дори и вас, без въвеждането на валидна парола (иначе всеки може да модифицира и изтрие базите данни!) и че не е стартиран сървърът за e-mail Mercury, без да ви е необходим.

About the author

Редактор

Leave a Comment