(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Настройка Apache+PHP+MsSQL+Oracle на Mac OS X Leopard

Источник: habrahabr

В качестве десктопа у меня iMac с Leopard'ом. По умолчанию в комплекте с Леопардом идет апач и PHP с расширением для работы с MySQL. А разрабатываю я приложения, которые подключаются к базам данных MySQL, MsSQL и Oracle. Поэтому "родного" PHP мне не хватает. Помимо этого, мне необходим proxy_http_module для Апачи, которого тоже нет из коробки.Плюс ко всему вышел PHP 5.3, которых хочется поставить.

Что же делать?

Есть несколько вариантов решения данной задачи: использование Fink, MacPorts, src.

Я выбрал такой вариант:

  • Компиляция Apache из исходников.
  • Компиляция PHP из исходников.
  • Установка FreeTDS из портов.
  • Установка Oracle Instantclient из портов.
  • Установка прочих необходимых библиотек (в случае необходимости) из портов. Я например поставил так же freetype, jpeg, libpng, libmcrypt, curl, gettext

Алгоритм установки будет такой:

  1. Установка MacPorts.
  2. Уставнока FreeTDS из портов.
  3. Установка Oracle Instantclient из портов.
  4. Установка MySQL 5 из портов.
  5. Установка прочих необходимых библиотек (в случае необходимости) из портов.
  6. Конфигурирование и компиляция Apache из исходников.
  7. Установка Apache.
  8. Конфигурирование и компиляция PHP из исходников.
  9. Установка PHP.
  10. Настройка Apache/PHP/FreeTDS.

Итакс, приступим.

1. Установка MacPorts.

Качаем dmg-образ последних портов с www.macports.org. Запускаем установщик. Вероятнее всего установщик зависнет примерно на 70%. Ничего страшного, стоит подождать минут 10-15 в надежде, что он все-таки выполнится, да и возможно в следующих релизах этот баг починят.
Порты ставятся в /opt/local. Для работы с портами используется команда port. Кстати для тех, кому не очень близка командная строка, есть GUI-приложение для работы с портами - Porticus.
Первым делом после установки, проапдейтим сами порты:
>sudo port selfupdate

2. Установка FreeTDS.


FreeTDS нам нужна для подключения к Microsoft SQL Server'ам. Ставим FreeTDS следующей командой:
>sudo /opt/local/bin/port -v install freetds

3. Установка Oracle Instantclient.


Oracle Instantclient нам нужен для подключения к Oracle серверам.
Ставится аналогично freetds:
>sudo /opt/local/bin/port -v install oracle-instantclient
Единственное замечание тут, что автоматом дистры не скачаются и надо будет ручками их скачать с сайта Oracle. Впрочем при выполнении данной команды об этом будет сказано и будут даны ссылки, откуда качать. Скачав дистрибутивы с сайта Oracle, их надо будет положить в /opt/local/var/macports/distfiles/oracle-instantclient/. После этого снова запустить установку.

4. Установка MySQL 5.

Нам нужна клиентская часть (библиотеки и заголовки), чтобы подключаться к MySQL-серверам.
Ставим так же из портов:
>sudo /opt/local/bin/port -v install mysql5

5. Установка прочих необходимых библиотек.


Если вы хотите собрать PHP с поддержкой каких-либо дополнительных библиотек, вам может потребоваться установить эти библиотеки.
В моем случае я дополнительно поставил: freetype, jpeg, libpng, libmcrypt, curl, gettext, libiconv.
Вся установка аналогична:
>sudo /opt/local/bin/port -v install freetype
>sudo /opt/local/bin/port -v install libmcrypt
>sudo /opt/local/bin/port -v install libpng
>sudo /opt/local/bin/port -v install curl
>sudo /opt/local/bin/port -v install gettext
>sudo /opt/local/bin/port -v install libiconv

6, 7. Конфигурирование, компиляция и установка Apache.


Качаем исходники Апачи с www.apache.org. Я устанавливал ту же ветку, что и стоит в системе, 2.2.х. На данный момент это 2.2.11. Распаковываем и запускаем конфигурацию:
>./configure --enable-layout=Darwin --enable-mods-shared=all --enable-proxy --enable-speling
Здесь указываем какие дополнительные модули мы хотим собрать.
После этого компилим и устанавливаем:
>make
>sudo make install
Apache ставится на место того, который был в системе.

8, 9. Конфигурирование, компиляция и установка PHP.

Ну что ж, осталось самое главное - собрать и установить PHP. Вроде бы все должно быть просто, но есть некоторые тонкости. Одна из них это то, что например mysql ставит библиотеки в /opt/local/lib/mysql5/ и заголовочные файлы в /opt/local/include/mysql5/ вместо /opt/local/lib/mysql/ и /opt/local/include/mysql/ соответстенно. Но ничего страшного. Поправим это, сделав соответствующие линки:
>sudo ln -s /opt/local/lib/mysql5 /opt/local/lib/mysql
>sudo ln -s /opt/local/include/mysql5 /opt/local/include/mysql
Качаем исходники PHP c www.php.net.
После этого можно запустить конфигурирование PHP:
>./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --mandir=/usr/share/man --with-openssl=shared --with-zlib --with-bz2 --with-curl --enable-ftp --with-gd --with-gettext=/opt/local --enable-mbstring --with-mcrypt=/opt/local --with-mssql=/opt/local --with-mysql=/opt/local --with-oci8=instantclient,/opt/local/lib/oracle --with-png-dir=/opt/local --with-jpeg-dir=/opt/local --with-freetype-dir=/opt/local --with-iconv=/opt/local --with-apxs2=/usr/sbin/apxs --with-config-file-path=/private/etc/ --enable-mod-charset
Здесь следует обратить внимание на следующие моменты:
--with-oci8=instantclient,/opt/local/lib/oracle
--with-apxs2=/usr/sbin/apxs
и то что расширения ссылаются на /opt/local.
После конфигурации запускаем компиляцию и установку:
>sudo make install

10. Настройка Apache/PHP/FreeTDS.


Если все прошло успешно, нам остается только настроить все компоненты.

  • Убеждаемся что в httpd.conf подгружены соответствующие модули. В моем случае это php5_module, proxy_module, proxy_ftp_module, proxy_http_module
  • Настраиваем freetds.conf
  • Настраиваем php.ini

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 02.11.2009 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Oracle Database Personal Edition Named User Plus Software Update License & Support
Oracle Database Standard Edition 2 Named User Plus License
Oracle Database Standard Edition 2 Processor License
Oracle Database Personal Edition Named User Plus License
ABBYY Lingvo x6 Английская Профессиональная версия
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
СУБД Oracle "с нуля"
Все о PHP и даже больше
Утиль - лучший бесплатный софт для Windows
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100