Domanda

Sembra che la riga di comando php utilizza un file php.ini diverso da quello dell'interprete php principale. Sto usando Ubuntu 10.4. Il mio problema è che nel php.ini principale ho inserito un percorso in più per una libreria esterna, ma nella versione CLI questo non è presente, e quindi ho un errore di percorso di inclusione.

grazie

È stato utile?

Soluzione

Basta chiedere PHP:

$ php -i |grep php\.ini

Altri suggerimenti

Meglio ancora: $ php --ini

Questo mostrerà anche tutto extra * file .ini caricati (di solito in giro in qualche dir conf.d in Debian):

  

file di configurazione (php.ini) Path: / etc / php5 / cli
  Loaded file di configurazione:
/etc/php5/cli/php.ini   Scansione per ulteriori file ini in: /etc/php5/cli/conf.d
  Ulteriori file .ini analizzati: /etc/php5/cli/conf.d/apc.ini,
  /etc/php5/cli/conf.d/curl.ini,
  /etc/php5/cli/conf.d/gd.ini,
  /etc/php5/cli/conf.d/geoip.ini,
  /etc/php5/cli/conf.d/imagick.ini,
  /etc/php5/cli/conf.d/imap.ini,
  /etc/php5/cli/conf.d/ldap.ini,
  /etc/php5/cli/conf.d/memcache.ini,
  /etc/php5/cli/conf.d/memcached.ini,
  /etc/php5/cli/conf.d/ming.ini,
  /etc/php5/cli/conf.d/mysql.ini,
  /etc/php5/cli/conf.d/mysqli.ini,
  /etc/php5/cli/conf.d/pdo.ini,
  /etc/php5/cli/conf.d/pdo_mysql.ini,
  /etc/php5/cli/conf.d/pdo_sqlite.ini,
  /etc/php5/cli/conf.d/snmp.ini,
  /etc/php5/cli/conf.d/sqlite.ini,
  /etc/php5/cli/conf.d/sqlite3.ini,
  /etc/php5/cli/conf.d/suhosin.ini,
  /etc/php5/cli/conf.d/tidy.ini,
  /etc/php5/cli/conf.d/xdebug.ini,
  /etc/php5/cli/conf.d/xsl.ini

Si noti che questo era circa php-cli, php-cgi non ha questo afaik.

Al mio ultimo lavoro, ho preso l'abitudine di specificare il mio file ini su ogni esecuzione ...

C:\php\cli\php.exe -c C:\php\php.ini myscript.php

Potete trovare php.ini utilizzando il sotto comando. In Linux

find / -name php.ini

o

locate php.ini

/etc/php5/cli/php.ini

Interessante in finestre è che in entrambi i test (su Apache con phpinfo () e in cli con PHP --ini), il percorso del file di configurazione è c: \ windows. Maggiori informazioni qui

Ho avuto lo stesso problema. Basta controllare proprietario e le autorizzazioni da tutti i file in /etc/php5/conf.d/. Deve essere di proprietà di root e readeable da anymone.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top