2

我正在使用 SaltStack 来配置我的 Vagrant VM。我已经很好地安装了 php,但我需要启用 intl 扩展。我很确定它已安装,但我不知道如何获得盐来为我启用它。有没有办法让它创建一个 php.ini 或类似的东西?

这是我的 php55.sls 文件:

php55:
    pkg:
        - installed
        - pkgs:
            - php55
            - php55-apcu
            - php55-mod-php
            - libjpeg-turbo8

和我的 top.sls:

base:
  '*':
    - apache2-mpm-prefork
    - php55
    - mysql
4

2 回答 2

3

这是我如何使用 PECL 安装模块并启用它的示例。最后一个状态是你想要的,但我粘贴了完整的例子来澄清。

php-mongo-builddeps:
  pkg.installed:
    - pkgs:
      - php-devel
      - glibc-devel
      - gcc
      - php-phpunit-PHPUnit
      - php-bcmath

mongo-php-reqs:
  pecl.installed:
    - name: mongo
    - require:
      - pkg: php-pkgs
      - pkg: php-mongo-builddeps

php-enable-extension:
  file.managed:
    - name: /etc/php.d/mongo.ini
    - user: root
    - group: root
    - mode: 644
    - contents: 'extension=mongo.so'
    - watch_in:
      - service: httpd
于 2014-03-23T01:42:30.020 回答
1

当我偶然发现您的问题时,我正在寻找更好的解决方案。我不认为它是完美的,但我更喜欢在cli管理文件时启用它,就像 diegows 建议的那样。

php7.0:
  pkg.installed:
    - pkgs:
      - php7.0-cli

install xdebug:
  pecl.installed:
    - name: xdebug
    - require:
      - pkg: php7.0
  cmd.run:
    - name: phpenmod xdebug
    - require:
      - pecl: install xdebug

附言。对于 php 5.x,使用php5enmod, 而不是phpenmod

于 2016-04-08T14:10:00.803 回答