Skip to content

Instantly share code, notes, and snippets.

@Kennyl
Created September 12, 2016 09:49
Show Gist options
  • Save Kennyl/913b8d906de8ff4f772d2d8dfec90235 to your computer and use it in GitHub Desktop.
Save Kennyl/913b8d906de8ff4f772d2d8dfec90235 to your computer and use it in GitHub Desktop.
php memcached with sasl on openshift (notworking)
#openshift instead php mod memcached
#need compile following
#apt-get install libsasl2-2 sasl2-bin libsasl2-2 libsasl2-dev libsasl2-modules libevent-dev
# libsasl2-2 sasl2-bin libsasl2-modules
pushd ${OPENSHIFT_RUNTIME_DIR}/tmp
wget ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-2.1.26.tar.gz
tar -zxf cyrus-sasl-2.1.26.tar.gz
cd cyrus-sasl-2.1.26
./configure \
--prefix=$HOME/app-root/data/
make && make install
#export SASL_PATH=$HOME/app-root/data/lib
cd ..
cd /tmp
wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz
tar -xzvf libevent-2.0.21-stable.tar.gz
cd libevent-2.0.21-stable
./configure --prefix=$HOME/app-root/data/
make
make install
cd ..
wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz
tar -zxvf libmemcached-1.0.18.tar.gz
cp -R cyrus-sasl-2.1.26 libmemcached-1.0.18\sasl
cd libmem*
./configure CPPFLAGS=-I${OPENSHIFT_DATA_DIR}/include LDFLAGS=-L${OPENSHIFT_DATA_DIR}/lib --prefix=$HOME/app-root/data --enable-sasl
make install
#long wait for makeinstall
pecl download memcached
cd memcach*
phpize
#./configure --prefix=$HOME/app-root/data --with-libmemcached-dir=$HOME/app-root/data --enable-memcached-sasl
#./configure --prefix=$OPENSHIFT_DATA_DIR --enable-memcached-sasl --with-libmemcached-dir=$OPENSHIFT_DATA_DIR
./configure CPPFLAGS=-I${OPENSHIFT_DATA_DIR}include LDFLAGS=-L${OPENSHIFT_DATA_DIR}lib --prefix=$OPENSHIFT_DATA_DIR --enable-memcached-sasl -with-libmemcached-dir=${OPENSHIFT_DATA_DIR}libmemcached
make
cp modules/memcached.so /var/lib/openshift/ /php/
#add php.ini extension=/var/lib/openshift/ /php/memcached.so
#php example
#<?php
# $mc = new Memcached();
# $mc->setOption(Memcached::OPT_BINARY_PROTOCOL, true);
# $mc->addServer('hostname.redislabs.com', 11211);
# $mc->setSaslAuthData('username', 'password');
#?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment