::: PHP.com.ua - учимся вместе. ::: ::: PHP.com.ua - учимся вместе. :::



 
   - Вакансия PHP-программист, Днепропетровск...
  - Проблема с передачей переменной в PHP ск...
  - Как хранить конфигурацию cms'ки?
  - Проблема с сортировкой массива
  - коллизии md5
  - Странный глюк функции date
  - Скроллинг в iframe


Главная
Новости
Статьи
Шпаргалки
Файлы
О проекте
Форум
Футболки


FREEhost.com.ua - купил хостинг 10 у.е. на Begun в подарок.

iName.com.ua - регистрация доменных имен и хороший хостинг.

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

Designclub - Клуб дизайнеров Украины.

Регистрация доменов
Хостинг

 HowtoForge.ORG.UA - Это первый Украинский ресурс развития open source программного обеспечения


Путь: Статьи > Установка и настройка

Установка и настройка

Автор: - BigDaddy
Дата публикации - 21.5.2005
Просмотров: - 6559

Інсталяція PHP+MySQL+Apache


[p] Інсталяція РHР+Апач+МуСКЛ під Linux [/p]


Інсталяція MySql


Інсталювати сервер баз даних MySql найзручніше і найшвидше, звичайно, з бінарного дистрибутива - rpm. Алгоритм інсталяції такий:

Зкачуємо файли MySQL-VERSION.i386.rpm (власне, сам сервер) та MySQL-client-VERSION.i386.rpm (клієнтська частина) для Вашої платформи. Далі все просто:


shell> rpm -i MySQL-VERSION.i386.rpm MySQL-client-VERSION.i386.rpm


Все, сервер і клієнтські програми встановлено, додано відповідний файл до /etc/rc.d/init.d.
[nb]
Для повного щастя, а саме щоб сервер автоматично запускався при перезавантаженні комп"ютера, необхідно переконатися, що в директоріях /etc/rc.d/rc0.d .. /etc/tc.d/rc6.d присутні лінки на файл /etc/rc.d/init.d/mysql. (Назви директорій та шляхи можуть залежати від платформи)
[/nb]
Далі, інсталюємо стандартні бази даних та запускаємо сервер:


shell> cd mysql_installation_directory

shell> ./bin/mysql_install_db

shell> ./bin/safe_mysqld --user=mysql &


Переконуємося, що сервер працює:


shell> /path/to/mysql/BINDIR/mysqladmin version

shell> /path/to/mysql/BINDIR/mysqladmin variables


Ось і все.
[quote]
На цьому етапі доступ до сервера має юзер root без пароля. Змінити його можна через консоль mysql або за допомогою mysqladmin.
[/quote]
Інсталяція з сорсів є більш проблематичною і за певних умов для недосвідченого користувача може взагалі завершитись невдачею. Все ж кілька слів скажемо.


Для проведення інсталяції mysql Вам знадобляться:

Сі-шний компілятор gcc>2.95, egcs>1.0.2,

GNU make версії 3.75

Створюємо юзера та групу для mysql:


shell> groupadd mysql

shell> useradd -g mysql mysql


Далі простий варіант конфігурації:


shell> ./configure --prefix=/path/to/mysql


[quote]
Потім, при компіляції РНР необхідно буде вказати той самий шлях для включення підтримки MySql --with-mysql=/path/to/mysql. Якщо запускали без --prefix=, то mysql проінсталюється в директорію по замовчуванню - як правило, це /usr/local/mysql (див. доку про шляхи для конкретних операційних систем)
[/quote]
Якщо щось пішло не так, можна спробувати:


CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local/mysql --enable-assembler --with-mysqld-ldflags=-all-static


CFLAGS, CXX та CXXFLAGS - змінні оточення (environment). Їх потрібно виставити до запуску configure.


shell> make

shell> make install

shell> scripts/mysql_install_db

shell> chown -R root /usr/local/mysql

shell> chown -R mysql /usr/local/mysql/var

shell> chgrp -R mysql /usr/local/mysql

shell> cp support-files/my-medium.cnf /etc/my.cnf

shell> /usr/local/mysql/bin/safe_mysqld --user=mysql &


Переконуємося, що сервер працює:


shell> /path/to/mysql/BINDIR/mysqladmin version

shell> /path/to/mysql/BINDIR/mysqladmin variables


На цьому інсталяцію можна вважати завершеною.


[nb]
Якщо щось пішло не так - почали сваритися configure або make, Вам дуже не пощастило... Можна пробувати читати Readme, Install і тд. але все одно, робота затягнеться на кілька днів в кращому випадку. Тому моя порада - якщо Вам не потрібні якісь специфічні настройки сервера, які визначаються на етапі конфігурування (а це так у 90% випадків) - краще ставити з бінарного дистрибутива.
[/nb]

[p]Динамічний модуль Апача 1.3.х(нашвидкоруч)[/p]


Для установки РНР як динамічного модуля Апача необхідно, щоб в Вашого httpd був активавним модуль mod_so. Перевірити це можна запустивши з командної стрічки httpd -l
В переліку скомпільованих модулів має з"явитися mod_so. Якщо так, тоді продовжуємо:


$ cd php-4.x.y

$ ./configure --with-mysql --with-apxs

$ make

$ make install


Наведений вище приклад передбачає, що і апач і mysql встановлювалися в директорії по замовчуванню або необхідні шляхи (до хідерів та бібліотек) прописані в шляхах оточення. Інакше доведеться вказувати шляхи явно:


--with-mysql=/path/to/mysql --with-apx=/path/to/apx


При цьому необхідно підставити реальні шляхи інсталяцій.

Далі необхідно зкопіювати файл php.ini-dist у відповідну директорію (напр. /etc) з ім"ям php.ini. Рекомендації щодо конфігурування РНР наведено [url=http://php.ukrwave.com/faq.php?id=17]тут[/url].

Тепер потрібно додати рядок в httpd.conf, який вказує розширення файлів, які будуть оброблятися модулем РНР:


AddType application/x-httpd-php .php


Перевірити, чи все працює, можна переглянувши в браузері файл з розширенням .php, який складається лише з одного рядка:
[code]
<?phpinfo()?>
[/code]


[nb]
Недавно нарвався на наступну засаду: виявляється, що підтримки <b>mod_so</b> недостатньо, щоб усе скомпілювалось та запрацювало. Якщо апач ставився з бінарного дистрибутива rpm, і при цьому ставився лише сервер, наведена вище схема не спрацює через відсутність apxs. Вирішити цю проблему можна скачавши сорси апача (принаймні мені не вдалося знайти apxs окремо).

[/nb]

[p]Статичний модуль Апача 1.3.х (нашвидкоруч)[/p]



Тут буде трохи більше роботи. Починаємо з Апача:


$ cd apache_1.3.x

$ ./configure


Потім переходимо до РНР:


$ cd php-4.x.y

$ ./configure --with-mysql --with-apache=../apache_1.3.x

$ make

$ make install


Тепер знову до Апача:


$ cd ../apache_1.3.x

$ ./configure --prefix=/www --activate-module=src/modules/php4/libphp4.a

Не варто непокоїтися, що файла libphp4.a немає, його буде створено після запуску конфіга

$ make


Тепер беремо бінарний httpd файл і копіюємо куди треба (туде, де знаходиться httpd). Якщо це перша інсталяція Апача, необхідно зробити make install


Тепер копіюємо у відповідне місце php.ini-dist, перейменувавши його в php.ini.
Конфігурування РНР розглянемо далі.

У файл httpd.conf додаємо рядок, що дозволяє РНР обробляти файли з відповідними розширеннями:


AddType application/x-httpd-php .php


Перевірити, чи все працює можна відкривши в браузері все той же файл з одним рядком:


[code]
<?phpinfo()?>
[/code]



[p] Кілька фінальних штрихів [/p]


1. При встановленні РНР динамічним модулем Апача make install робить усе,що треба, модифікує httpd.conf і додасть рядок:


LoadModule php4_module libexec/libphp4.so


Якщо десь в httpd.conf є рядок ClearModuleList, то необхідно додати наступний рядок в httpd.conf:


AddModule mod_php4.c


Крім визначення розширення файлів, які повинні оброблятися РНР директивою
AddType application/x-httpd-php .php)
можна використовувати підсвітку синтаксису РНР коду наступним чином:


AddType application/x-httpd-php-source .phps





Обсудить в ФОРУМе - комментариев ()


Путь: Статьи > Установка и настройка

Если вы заметили орфографическую, стилистическую или другую ошибку на этой странице, просто выделите ошибку мышью и нажмите Ctrl+Enter.
Контакты Design by webFaction Ukrainian PHP Group 2004-2005