特拉维斯CI与Apache& PHP

时间:2013-11-18 13:16:41

标签: php apache2 travis-ci

如何配置travis-ci在Apache中使用phpenv的php版本?

phpenv的README声明〜/ .phpenv / lib / libphp5.so在调用“phpenv global”时设置,但是当我尝试配置apache将其用作apxs库时,我得到了这个:

特拉维斯产出:

/home/travis/build/OpenBuildings/Clippings/.phpenv/lib/libphp5.so: cannot open shared object file: No such file or directory

我不认为使用“apt-get install libapache2-mod-php5”是正确的调用,因为我宁愿使用travis'config中专门设置的php版本。

到目前为止我的配置是:

before_script:
  - sudo apt-get update
  - sudo apt-get install -y --force-yes apache2
  - echo "extension=memcache.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
  - printf "\n" | pecl install imagick
  - echo "LoadModule php5_module $(pwd)/.phpenv/lib/libphp5.so" | sudo tee /etc/apache2/mods-available/php5.load
  - sudo cp build/travis/etc/apache2/clippings /etc/apache2/sites-available/clippings
  - sudo sed -e "s?%TRAVIS_BUILD_DIR%?$(pwd)?g" --in-place /etc/apache2/sites-available/clippings
  - sudo a2ensite clippings
  - sudo a2enmod rewrite
  - sudo a2enmod php5
  - sudo service apache2 restart

1 个答案:

答案 0 :(得分:3)

显然有2个“phpenv”库,而travis正在使用另一个。 经过一番挖掘后,我设法用php-fpm成功配置了appache(由travis支持)

我已经对travis-ci文档进行了拉取请求以反映我的发现,并且它已经合并到主人:http://about.travis-ci.org/docs/user/languages/php/