FreeBSD
Как да инсталирате PHP на FreeBSD
И така дойде ред на инсталирането на PHP модула, за това в началото трябва да инсталирате самия php интерпретатор, трябва да изпълните следните стъпки. Ще обмислим инсталирането на php версия 5, ако по някаква причина имате нужда от версия 4, просто ще трябва да адаптирате тези инструкции. По принцип ще се сведе до корекция на php5 към php4 във всички команди. Конфигуриране на php5 опции. % cd /usr/ports/lang/php5 % make config Опцията IPv6 може да бъде деактивирана, но опцията APACHE трябва да бъде активирана.
1 + Опции за php5 5.2.5 1 IS CLI Build CLI версия 1 IS CGI Build CGI версия 1 IS APACHE Build Apache модул 1 [ ] DEBUG Активиране на отстраняване на грешки 1 [X] SUHQSIH Активиране на защитна система Suhosin (не за затвори) 1 [ ] MULTIBYTE Активиране на многобайтова поддръжка на zend 1 [ ] IPV6 Разрешаване на поддръжка за ipv6 1 [ ] MAILHEAD Разрешаване на корекция на заглавка на поща 1 [ ] ПРЕНАПРАВЯНЕ Разрешаване на поддръжка на force-cgi-redirect (само CGI) 1 [ ] DISCARD Разрешаване на поддръжка на отхвърляне на пътя (само CGI) 1 [X] FASTCGI Разрешаване на поддръжка на fastcgi (само CGI) 1 [X] PATHIHFO Разрешаване на path-info-che поддръжка на ck (само CGI) [ OK ] Отказ
След това в същата директория изпълнете командата make install. Той ще изтегли, компилира и инсталира php модула. По-специално, той автоматично ще коригира конфигурацията на сървъра на apache, за да включи този модул от списъка с налични модули.
Как да активирате PHP модул в Apache
След инсталацията php вече е разрешен в конфигурацията на apache като модул, но все още не е възможно да се използва. За да го използвате, трябва да свържете файловите разширения .php с правилния тип данни, така че Apache да знае на кои файлове да стартира php интерпретатора. Отворете файла /usr/local/etc/apache/httpd.conf, намерете в него следните редове с конфигурацията на php4 и php3 идобавете командите, маркирани с курсора. Командите AddType свързват файловото разширение с php интерпретатора - ако имате нужда от php скриптове, които да се изпълняват в .html файлове, добавете още един ред AddType application/x-httpd-php .html. IfModule mod_php4.c AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps /IfModule AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps Directorylndex index.php index.html Опцията DirectoryIndex показва кои файлове трябва да бъдат показани на потребителя, ако поиска директория вместо конкретен файл. Тази настройка ще накара Apache първо да потърси файла index.php, когато поиска директория, ако бъде намерен, ще го стартира и ще покаже резултата от изпълнението на потребителя. Ако няма такъв файл, ще се опита да намери файла index.html. Ако такъв файл не бъде намерен, потребителят ще получи грешка - "Списъкът с директория е забранен".
PHP разширения
Основната сила на php е в неговите разширения, така че за пълноценна работа ще трябва да инсталираме и тях. Ако искате да работите с MySQL от php, тогава трябва да отидете на главата "Как да инсталирате MySQL" и да направите цялата инсталация, която е описана там, и след това просто се върнете тук.
Как да инсталирате PHP разширения
% cd /usr/ports/lang/php5-extensions % make config На първия екран активирайте разширенията CURL, GD, GETTEXT. CURL е библиотека, която ви позволява да изпращате HTTP заявки от php скриптове, много пакети я използват GD е библиотека за работа с графики, генериране на изображения в движение, преоразмеряване и т.н., ако инсталирате някакъв готов софтуер, който работи с графики, най-вероятно щеще ви трябва това разширениеGETTEXT е специална библиотека за многоезична поддръжка в приложенията, ако приложението поддържа многоезичност и ви позволява да превключвате езика на неговия интерфейс, най-вероятно то използва gettext ] + Опции за php5
разширения 1.1 II [ ] BZMATH be style прецизни математически функции II [ ] BZ2 bzip2 поддръжка на библиотека II [ ] CALEIMR поддръжка на преобразуване на календар 1 1 [X] CTYPE ctype функции 1 1 [X] eat CURL поддръжка II [ ] DBA dba поддръжка II [ ] Поддръжка на DBASE dBase библиотека 1 1 [ X] DOM DOM поддръжка II [ ] EXIF EXIF поддръжка II [ ] FILEIHFO fileinfo поддръжка 1 1 [X] FILTER входен филтър поддръжка II [ ] FKIBIDI FriBidi поддръжка II [ ] FTP FTP поддръжка 1 1 [X] GD GD поддръжка на библиотека 1 1 [X] +______ GETTEXT (+)_______ gettext поддръжка на библиотека _______+
На втория екран можете да активирате разширенията ICONV, IMAP, MYSQL. ICONV - това разширение отговаря за конвертирането на текстове от едно кодиране в друго, да речем от cp1251 (кодиране на кирилица на Windows) в UTF-8 - Unicode. IMAP – Тази библиотека прилага протоколите за достъп до поща IMAP и POP3, така че ако пишете или инсталирате интерфейс за уеб поща на php, ще ви трябва. MYSQL е интерфейс към базата данни MySQL, преди да изберете тази опция, уверете се, че вече имате инсталиран MySQL.
+________ ______+ 1 Опции за php5
На третия екран се уверете, че не сте деактивирали разширението SESSION, което осигурява поддръжка за потребителски сесии в php. Без него много приложения гарантирано няма да работят. Също така се уверете, че имате PCRE - разширението ви позволява да използвате Perl съвместими регулярни изрази от php интерпретатора - много скриптове разчитат наналичието на това разширение. Опции за php5
II [] ODBC Unixodbc поддръжка II [] Opehssl Openssl поддръжка II [] PCITL PCNTL поддръжка (само Cli) 1 1 1 [x] PCRE PERPALAR EXPREASSION поддръжка I I [] PDF PDFLIB поддръжка (включва GD) 1 1 [x] pdo Php Data Objects Interface (PDO) 1 [x] драйвер pdq_sqlite pdo sqlite
II [ ] Поддръжка на PGSQL PostgreSQL база данни 1 1 [X] POSIX POSIX-подобни функции II [ ] Поддръжка на PSPELL pspell II [ ] Поддръжка на READLIIE readline (само CLI) II [ ] Поддръжка на RECODE презакодиране 1 1 [X] Поддръжка на SESSIOH сесия II [ ] Поддръжка на SHMOP shmop 1 1 [X] SIMPLEXML simplexml поддръжка [ OK ] Отказ
На четвъртия екран можем да отбележим разширението SOCKETS, което позволява на PHP скриптове да се свързват по мрежата с други услуги. Скриптове, които се свързват с други сървъри, за да получат информация от тях, могат да използват това разширение (обикновено използвайки SOCKETS или CURL, което от двете е налично).
1 Опции за php5
II [] simp SIMP support II [] SOAP SOAP support 1 1 [X] sockets support sockets 1 1 [X] SPL Standard PHP Library 1 1 [X] SQLITE sqlite support II [ ] SYBASE_CT Sybase support database II [ ] STSMSG System message support II [ ] STSSEM System semaphe support II [ ] STSSH M Поддръжка на споделена памет на системата II [ ] Поддръжка на TIDY TIDY 1 1 [X] Поддръжка на TOKEHIZER tokenizer II [ ] Поддръжка на WDDX WDDX (предполага XML) 1 1 [X] Поддръжка на XML XML 1 1 [X] Поддръжка на XMLREADER XMLReader II [ ] Поддръжка на XMLRPC XMLRPC-EPI
[ OK ] Отказ На петия екран можете да маркирате разширението ZLIB, което се използва за компресиране на данни. Скриптовете (особено phpMyAdmin) използват тази библиотека за компресиране на изхода и намаляванеколичеството данни, предавани по мрежата.
1 Опции за php5
II [ ] Поддръжка на SYBASE_CT Sybase база данни II [ ] Поддръжка на SYSMSG системни съобщения II [ ] Поддръжка на SYSSEM системен семафор II [ ] SYSSHM Поддръжка на споделена памет на системата II [ ] Поддръжка на TIDY TIDY 1 1 [X] Поддръжка на TOKEHIZER tokenizer II [ ] Поддръжка на WDDX WDDX (предполага XML) 1 1 [ X ] Поддръжка на XML XML 1 1 [X] Поддръжка на XMLREADER XMLReader II [ ] Поддръжка на XMLRPC XMLRPC^EPI 1 1 [X] Поддръжка на XMLWRITER XMLWriter II [ ] Поддръжка на XSL XSL (включва DOM) II [ ] Поддръжка на YAZ YAZ (ANSI/NISO Z39.50) II [ ] Поддръжка на ZIP ZIP 1 1 [X] Z LIB ZLIB поддръжка
[ OK ] Отказ След като сте избрали списък с разширения, просто изпълнете % make install Тази команда ще изтегли и компилира всички онези разширения, които са били маркирани в конфигурацията. Всъщност самият php5-expressions не знае как да инсталира каквито и да било php разширения :) той просто предизвиква компилирането на подходящите портове. Тези портове всъщност са във формата php5-sig1-номер-на-версия, php5-gd-номер-на-версия, php5-mysql-номер-на-версия и могат да бъдат намерени в колекцията от портове. Можете да ги инсталирате сами по-късно, без да използвате php5-изрази. Например, за да инсталирате разширението VSMATH, трябва да направите % cd /usr/ports/*/php5-bcmath % make install
след което сам ще изтегли необходимите файлове, ще се инсталира и ще се активира в php конфигурацията на интерпретатора. Когато деинсталирате пакет с php разширение, той автоматично се премахва от конфигурацията на php интерпретатора.
След инсталиране на php разширения
Ако сте инсталирали или премахнали разширението php, трябва да рестартирате apache с apachectl restart.