MAC Lion 下安裝php擴充 for XAMPP 之Redis

來源:互聯網
上載者:User

      mac lion下內建的apache,擴充很少,另外我自己嘗試用php源碼編譯未通過,因為決定用一個整合的mamp,那就是xampp(一定要安裝那個xampp開發包,不然編譯php擴充的時候會出錯)。在windows和linux 下安裝一些程式或者php的擴充資料很多,而關於mac最新版10.7.4的資料極少。順便提下mac的好用的安裝工具,一個是MacPort,一個是Homebrew.macport可能被牆,安裝時可能會卡住。

     下面進入正題,例如今天先安裝redis和php-redis。關於redis for mac的資料在https://github.com/antirez/redis ,順便說下讓redis開機自動啟動並執行設定:http://naleid.com/blog/2011/03/05/running-redis-as-a-user-daemon-on-osx-with-launchd/ 說的很清楚。我還是引用過來作為參考,注意我加粗加紅的地方。

 

If you’re developing on the mac using redis and want it to start automatically on boot, you’ll want to leverage the OSX launchd system to run it as a User Daemon. A User Daemon is a non-gui program that runs in the background as part of the system. It isn’t associated with your user account. If you only want redis to launch when a particular user logs in, you’ll want to make a User Agent instead.

From the command line, create a plist file as root in the /Library/LaunchDaemons directory with your favorite text editor:

sudo vim /Library/LaunchDaemons/io.redis.redis-server.plist

Paste in the following contents and modify it to point it to wherever you’ve got redis-server installed and optionally pass the location of a config file to it (delete the redis.conf line if you’re not using one):

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"><dict><key>Label</key><string>io.redis.redis-server</string><key>ProgramArguments</key><array><string>/usr/local/bin/redis-server</string><string>/usr/local/etc/redis.conf</string></array><key>RunAtLoad</key><true/></dict></plist>

Make sure that you actually have a redis.conf file at the location above. If you’ve installed it withhomebrew that should be the correct location.

You’ll then need to load the file (one time) into launchd with launchctl:

sudo launchctl load /Library/LaunchDaemons/io.redis.redis-server.plist

Redis will now automatically be started after every boot. You can manually start it without rebooting with:

sudo launchctl start io.redis.redis-server

You can also shut down the server with

sudo launchctl stop io.redis.redis-server

Or you could add these aliases to your bash/zsh rc file:

alias redisstart='sudo launchctl start io.redis.redis-server'alias redisstop='sudo launchctl stop io.redis.redis-server'

If you’re having some sort of error (or just want to watch the logs), you can just fire up Console.app to watch the redis logs to see what’s going on.

說了這麼多,還沒有開始安裝php-redis.下面開始:

首先用git從https://github.com/nicolasff/phpredis下載源碼。然後依次執行以下命令:

sudo /Applications/XAMPP/xamppfiles/bin/phpize
sudo MACOSX_DEPLOYMENT_TARGET=10.7 CFLAGS="-arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch i386 -arch x86_64 -g -Os -pipe" CXXFLAGS="-arch i386 -arch x86_64 -g -Os -pipe" LDFLAGS="-arch i386 -arch x86_64 -bind_at_load" ./configure --enable-redis --with-php-config=/Applications/XAMPP/xamppfiles/bin/php-config
sudo make && sudo make install

然後修改php.ini(增加:extension=redis.so),重啟xampp服務就可以了。

 

範例程式碼

 

<?php

echo 'phpredis sample:<br />';

 

error_reporting(E_ALL);

ini_set('display_errors','ON');

 

$redis = new Redis();

$redis->connect('127.0.0.1',6379);

$redis->set('first_key_phpredis', 'Hello world');

 

);

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.