Примечание куратора: содержание этой статьи первоначально было написано Джасдипом Джайтлой в блоге Couchbase.
Настройка PHP может быть немного болезненной как для Windows, так и для Mac OS X. Есть много разных способов сделать это, но многие из них приходят с различными неприятностями или путаницей. Кроме того, на Mac у вас уже есть Apache и PHP 5.3 в вашей системе, но его изменение также может быть не интуитивно понятным.
Использование Bitnami было безусловно самой простой и простой установкой, с которой я когда-либо сталкивался.
Начало установки на Mac OS X с помощью Bitnami
Мой друг @AseDeliri в Твиттере указал мне на Битнами несколько недель назад, и я очень счастлив, что он это сделал. Это сделало настройку PHP легким и хранит все вместе в одном месте, как Python virtualenv и RVM обрабатывают различные версии Ruby и наборы гемов.
Во-первых, выберите стек Bitnami с Apache и PHP
Я выбрал стек Bitnami MAPP (Mac Apache PHP Postgres). Скачайте и установите его! (Если вы выберете MAMP вместо этого, пути могут немного отличаться, но легко следовать.)
Стек поставляется с Apache, настроенным должным образом, с закомментированными настройками для включаемых фреймворков и так далее, а также со всеми популярными фреймворками, готовыми к работе: cakePHP, laravel, symphony, zend, ignizer кода и smarty. Он также включает в себя другие зависимости, такие как Varnish, ImageMagick, PEAR, PECL и многое другое! Круто, верно?
Рекомендуемое обновление PATH до ~ / .bash_profile
В папке /Applications/mappstack-5.4.10-0/ (ваша версия может немного отличаться) есть файл use_mapstack, откройте его в текстовом редакторе, и вы увидите инструкцию PATH, которая помещает весь apache, php / Папки bin, [framework] / bin и т. д. стоят первыми в PATH, это важно, чтобы другие версии на вашем компьютере не мешали.
Чтобы упростить мою жизнь, я скопировал весь этот набор путей в новую переменную в ~ / .bash_profile и добавил корневую папку стека в ее начале:
export PHP_PATHS="/Applications/mappstack-5.4.10-0:/Applications/mappstack-5.4.10-0/frameworks..."
Затем сделали хороший простой путь экспорта:
export PATH="$PHP_PATHS:$PATH"
Поэтому я не использую файл «use_mappstack», поскольку он мне не нужен. Я думаю, если у вас есть несколько mappstacks, то это имеет больше смысла. Если вы решите использовать его, вы все равно можете закомментировать: #exec / bin / bash —noprofile —norc, чтобы остаться в той же оболочке.
Во-вторых, установка библиотеки libcouchbase C (Mac)
Если вы не установили Xcode и инструменты командной строки через Xcode, у вас есть два варианта здесь. Один из них очевиден: получите XCode (4,4 ГБ) из Mac App Store, после установки перейдите в «Настройки»> «Загрузки» и «Установить инструменты командной строки» (175 МБ). Или, если вы не хотите Xcode, вы можете перейти к Apple Developer Connection . Вставьте свой идентификатор Apple, загрузите только инструменты командной строки и установите его (около 175 МБ).
На Mac Homebrew — твой друг. Если вы еще не настроили его, посмотрите Homebrew (прокрутите вниз).
Если у вас есть предыдущая версия libcouchbase, просто:
$ brew uninstall libcouchbase
Теперь установите libcouchbase:
$ brew update && brew install libcouchbase
Если вы получаете какие-либо сообщения о невозможности установить ссылку, вы можете принудительно установить повторную ссылку:
$ brew link --overwrite libcouchbase
В-третьих, установите PHP-Couchbase SDK
Я думаю, что сборка из исходных текстов является самой простой и просто делать это со всеми версиями PHP, но, конечно, стек Bitnami MAPP — это версия PHP 5.4.10, и на момент написания этой статьи php sdk необходимо собирать из исходного кода для 5.4. Икс
1. Загрузите PHP Source PHP 1.1.2 SDK или последнюю версию Source Archive на странице PHP SDK
2. Разархивируйте / tar, перейдите в папку cd и сделайте следующее:
$ phpize $ ./configure $ make
Вам не нужно делать make install, также, если вам что-то не хватает (например, autoconf), phpize сообщит вам об этом, и вы можете установить brew.
1. Вы можете скопировать файл couchbase.so, который вы только что встроили в /Applications/mappstack-5.4.10-0/php/lib/php/extensions , или просто оставить его там, где он есть, или поместить в ~ / Documents, или где вы хотите (я поместил его в общую папку Dropbox, чтобы поделиться с другими компьютерами, работающими в том же стеке).
2. Какой бы вариант вы не выбрали (переместите или оставьте его там, где он есть), добавьте расширение = full / path / to / couchbase.so в файле php.ini, расположенном здесь: /Applications/mappstack-5.4.10-0/php/etc /php.ini
Запуск и перезапуск Apache
Если вы добавили этот материал в ваш ~ / .bash_profile ранее, вы можете использовать ctlscript.sh из любого места, чтобы контролировать запуск / остановку Apache и т. Д.
Запустите / перезапустите Apache:
$ ctlscript.sh start apache
ИЛИ ЖЕ
$ ctlscript.sh restart apache
Запустив / перезапустив командную строку, вы можете увидеть, были ли какие-либо ошибки в вашем php.ini или с расширением .so.
Теперь вы настроены!
Запустите Couchbase Server, если он не запущен, и протестируйте ваше соединение с помощью простого сценария php:
phptest.php
<?php echo "--------------------------------------\n"; echo "\tCouchbase Connection\n"; echo "--------------------------------------\n"; // Connect to default bucket on localhost $cb = new Couchbase("127.0.0.1:8091", "", "", "default"); // Another quick way to connect to default bucket on localhost $cb = new Couchbase(); // Create a key $cb->set("phptest", 1); // Retrieve the key and output it echo("$" . "cb->get(\"phptest\") = " . $cb->get("phptest") . "\n"); // Delete the key $result = $cb->delete("phptest"); if ($result) { echo("Delete succeeded"); } else { echo("Delete failed : key does not exist"); } echo "--------------------------------------\n"; ?>
Сохраните это в файл и запустите. Если вы настроили PATHS, как я рекомендовал, вы можете просто сделать:
$ php phptest.php