Как известно, в Mac OS X уже есть и apache и PHP, но что делать если требуется добавить какое-либо расширение в PHP? Можно, конечно, воспользоваться brew и получить еще одну параллельную версию PHP, а потом мучиться с ее настройкой, ради одного расширения. Я же опишу более правильный путь - собрать расширение для уже имеющегося в системе PHP.
В продолжение темы про установку Oracle Client на Windows расскажу про свой опыт установки аналогичной связки для Mac OS.
На старте имеем Mac OS X 10.10 Yosemite в которой уже работает штатный web сервер apache и php 5.4. Цель первая - получить рабочий Oracle Client, иметь возможность работать с Oracle через Toad (да да, для мака есть тоад, и он бесплатный). Цель вторая - иметь возможность работать с Oracle из PHP.
Для начала качаем Oracle Instant Client для Mac OS с сайта oracle.com (там нужно регистрироваться):
* я для себя выбрал 11-ю версию для того чтоб иметь возможность работы со старыми БД, например 9-й версии.
Распаковываем содержимое архивов в удобное место, для меня это /Library/Oracle. Возможны и другие варианты, но для меня более логично показалось так, далее все описания будут производиться относительно этого пути.
В результате получаем вот такую структуру папок:
/Library/Oracle/instantclient_11_2
/Library/Oracle/instantclient_11_2/sdk (если решили с SDK)
Далее создаем линки:
cd /Library/Oracle/instantclient_11_2
ln -s libclntsh.dylib.11.1 libclntsh.dylib
ln -s libocci.dylib.11.1 libocci.dylib.dylib
Это, наверное, единственный осмысленный и более-менее полезный пост из моего ЖЖ, попытка вести который когда-то, привела к созданию собственного блога. Оригинал датирован 2011 годом и был написан в качестве комментария на пост про использование PHP-фреймворков.
Суть новомодной тенденции, которая сейчас набирает обороты такова: вы заходите на сайт и авторизуетесь на нем, потом переходите на другой из тойже сети, но на другом домене, и там вы автоматически являетесь авторизованными. Примером такой схемы сейчас успешно служат Яндекс, Мейл.ру и другие.
А вот что касается реализации, то тут есть масса мнений и способов, достаточно спросить гугля по фразе "кроссдоменная авторизация" и почитать длинные дискуссии. Для себя я вижу 2 варианта реализации этой моды: одно простое и красивое, но с ограничениями, другое более сложное и не такое изящное, но более свободное.
О спецификации Cross-Origin Resource Sharing речь пока не идет, поскольку она еще нигде не поддерживается.
Начнем с простого и красивого решения.
С началом октября появилась проблема 6-го дня в php (наблюдается на php-4.4.8 win32 и 4.x на linux, на других платформах эксперименты не проводились). Ее можно назвать реинкарнацией проблемы 2000 года.
Суть проблемы заключается в косяке в php-шных функциях работы со временем, результатом которой является неверное исчисление времени для октября 2008. Сентябрь, ноябрь и декабрь (дальше не проверялось) без проблем.
Более подробно видно из примера: