(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 Processor License
Oracle Database Personal Edition Named User Plus License
Oracle Database Standard Edition 2 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 "с нуля"
Программирование на Visual С++
Программирование на Visual Basic/Visual Studio и ASP/ASP.NET
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100