0

Thanks to the issue with enabling/disabling of PHP modules with phpdismod I checked out the structure of the PHP config files on my Ubuntu VM and noticed, that there are two folders for the config includes: /etc/php/mods-available/ and /etc/php/7.0/mods-available/. (I'm pretty sure, that I didn't created them or even one of them manually.)

Which is the actually correct folder for the PHP 7 INI config includes? /etc/php/7.0/mods-available?

Additionally: Does it matter in general, where the PHP config includes are stored? Can there be any side effects, if I now merge the both directories (e.g. moving all files from /etc/php/mods-available/ to /etc/php/7.0/mods-available/).


$ ls -l /etc/php/mods-available/ | awk {'print $9" "$10" "$11'}
curl.ini
json.ini
mongodb.ini
mysqli.ini
opcache.ini
pdo_mysql.ini
pdo_sqlite.ini
readline.ini
sqlite3.ini
tideways.ini
xdebug.ini
xsl.ini

$ ls -l /etc/php/7.0/mods-available/ | awk {'print $9" "$10" "$11'}
calendar.ini
ctype.ini
exif.ini
fileinfo.ini
ftp.ini
gettext.ini
iconv.ini
mcrypt.ini
pdo.ini
phar.ini
posix.ini
shmop.ini
sockets.ini
sysvmsg.ini
sysvsem.ini
sysvshm.ini
tokenizer.ini

$ ls -l /etc/php/7.0/fpm/conf.d/ | awk {'print $9" "$10" "$11'}
10-opcache.ini -> /etc/php/mods-available/opcache.ini
10-pdo.ini -> /etc/php/7.0/mods-available/pdo.ini
20-calendar.ini -> /etc/php/7.0/mods-available/calendar.ini
20-ctype.ini -> /etc/php/7.0/mods-available/ctype.ini
20-curl.ini -> /etc/php/mods-available/curl.ini
20-exif.ini -> /etc/php/7.0/mods-available/exif.ini
20-fileinfo.ini -> /etc/php/7.0/mods-available/fileinfo.ini
20-ftp.ini -> /etc/php/7.0/mods-available/ftp.ini
20-gettext.ini -> /etc/php/7.0/mods-available/gettext.ini
20-iconv.ini -> /etc/php/7.0/mods-available/iconv.ini
20-json.ini -> /etc/php/mods-available/json.ini
20-mcrypt.ini -> /etc/php/7.0/mods-available/mcrypt.ini
20-mongodb.ini -> /etc/php/mods-available/mongodb.ini
20-mysqli.ini -> /etc/php/mods-available/mysqli.ini
20-pdo_mysql.ini -> /etc/php/mods-available/pdo_mysql.ini
20-pdo_sqlite.ini -> /etc/php/mods-available/pdo_sqlite.ini
20-phar.ini -> /etc/php/7.0/mods-available/phar.ini
20-posix.ini -> /etc/php/7.0/mods-available/posix.ini
20-readline.ini -> /etc/php/mods-available/readline.ini
20-shmop.ini -> /etc/php/7.0/mods-available/shmop.ini
20-sockets.ini -> /etc/php/7.0/mods-available/sockets.ini
20-sqlite3.ini -> /etc/php/mods-available/sqlite3.ini
20-sysvmsg.ini -> /etc/php/7.0/mods-available/sysvmsg.ini
20-sysvsem.ini -> /etc/php/7.0/mods-available/sysvsem.ini
20-sysvshm.ini -> /etc/php/7.0/mods-available/sysvshm.ini
20-tokenizer.ini -> /etc/php/7.0/mods-available/tokenizer.ini
20-xdebug.ini -> /etc/php/mods-available/xdebug.ini
20-xsl.ini -> /etc/php/mods-available/xsl.ini
40-tideways.ini -> /etc/php/mods-available/tideways.ini

$ ls -l /etc/php/7.0/cli/conf.d/ | awk {'print $9" "$10" "$11'}
10-opcache.ini -> /etc/php/mods-available/opcache.ini
10-pdo.ini -> /etc/php/7.0/mods-available/pdo.ini
20-calendar.ini -> /etc/php/7.0/mods-available/calendar.ini
20-ctype.ini -> /etc/php/7.0/mods-available/ctype.ini
20-curl.ini -> /etc/php/mods-available/curl.ini
20-exif.ini -> /etc/php/7.0/mods-available/exif.ini
20-fileinfo.ini -> /etc/php/7.0/mods-available/fileinfo.ini
20-ftp.ini -> /etc/php/7.0/mods-available/ftp.ini
20-gettext.ini -> /etc/php/7.0/mods-available/gettext.ini
20-iconv.ini -> /etc/php/7.0/mods-available/iconv.ini
20-json.ini -> /etc/php/mods-available/json.ini
20-mcrypt.ini -> /etc/php/7.0/mods-available/mcrypt.ini
20-mongodb.ini -> /etc/php/mods-available/mongodb.ini
20-mysqli.ini -> /etc/php/mods-available/mysqli.ini
20-pdo_mysql.ini -> /etc/php/mods-available/pdo_mysql.ini
20-pdo_sqlite.ini -> /etc/php/mods-available/pdo_sqlite.ini
20-phar.ini -> /etc/php/7.0/mods-available/phar.ini
20-posix.ini -> /etc/php/7.0/mods-available/posix.ini
20-readline.ini -> /etc/php/mods-available/readline.ini
20-shmop.ini -> /etc/php/7.0/mods-available/shmop.ini
20-sockets.ini -> /etc/php/7.0/mods-available/sockets.ini
20-sqlite3.ini -> /etc/php/mods-available/sqlite3.ini
20-sysvmsg.ini -> /etc/php/7.0/mods-available/sysvmsg.ini
20-sysvsem.ini -> /etc/php/7.0/mods-available/sysvsem.ini
20-sysvshm.ini -> /etc/php/7.0/mods-available/sysvshm.ini
20-tokenizer.ini -> /etc/php/7.0/mods-available/tokenizer.ini
20-xdebug.ini -> /etc/php/mods-available/xdebug.ini
20-xsl.ini -> /etc/php/mods-available/xsl.ini
Community
  • 1
  • 1
automatix
  • 14,018
  • 26
  • 105
  • 230
  • It depends on whichever php version you're using. Check 'php --version' and `php -i | grep ini` to see your version and where it's set to check for the ini's. There could be an issue if you copy one to the other if they aren't for the same version of PHP. – aynber Jul 01 '16 at 15:45
  • @aynber Thanks for your comment! I'm using `v7` (it's the only PHP instance on the machine). So, you mean `/etc/php/mods-available/` is the folder for the modules shared by different PHP versions? – automatix Jul 01 '16 at 15:50
  • In some of the systems I've used, that was the folder used by PHP5. You can try moving some of the files, but you might have issues upgrading in the future, since it expects the folders to be in those particular folders. – aynber Jul 01 '16 at 15:57
  • I'm wondering, that the INI includes are created in two folders and in the same time `phpdismod` works only of of them. – automatix Jul 01 '16 at 16:00

0 Answers0