Custom php.ini changes are saved but not loaded

Discussion in 'Installation/Configuration' started by craigrose, Jan 21, 2014.

  1. craigrose

    craigrose New Member

    Hi

    Apache 2.2.22
    Ubuntu 12.04.3 LTS
    PHP Version 5.3.10-1ubuntu3.8 (CGI/FastCGI)
    ISPConfig Version: 3.0.5.2

    I am trying to get Xdebug going on a sub-domain. We have a base domain tictictic.org and a sub-domain dev.tictictic.org. As it's our development site dev.tictictic.org required Xdebug whereas the production site tictictic.org does not.

    I can directly edit /etc/php5/cgi/php.ini with the line
    zend_extension="/usr/lib/php5/20090626/xdebug.so"
    and the phpinfo() reports this ini file being loaded and the required message
    with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans

    But this is enabling Xdebug on all websites. To try to enable it on the sub-domain only I place the zend_extension line in sub-domain for website, options, Custom php.ini settings. Save, then wait for the job queue to clear and restart Apache. Xdebug fails to load as /var/www/conf/web2/php.ini does not exist. web2 is the Linux user for the domain.

    If I put the setting in Web Domain, Options, Custom php.ini settings the /var/www/conf/web2/php.ini file is created with the Xdebug setting in it but the site still loads /etc/php5/cgi/php.ini.

    How can I make just the sub-domain use Xdebug or any other PHP setting for that matter?

    Thanks
    Craig
     
  2. till

    till Super Moderator Staff Member ISPConfig Developer

    Which php mode do you use in that website?
     
  3. craigrose

    craigrose New Member

    fast-cgi :)
     
  4. craigrose

    craigrose New Member

    OK after much reading and learning I have managed to get things working. Here's what I did:

    1. Gave up on using ISPConfig custom php.ini settings in the domain/sub-domain screens. I just have no idea how to get PHP to load the settings which appear in the /var/www/conf/web2/php.ini file.
    2. Read this page http://www.php.net/manual/en/configuration.file.per-user.php
    3. Created a .user.ini in the root folder of my dev website and put in:
    xdebug.remote_enable=1
    error_reporting = E_ALL | E_STRICT
    4. Put this in /etc/php5/cgi/php.ini:
    zend_extension="/usr/lib/php5/20090626/xdebug.so"
    This page (http://www.php.net/manual/en/ini.list.php) says we can't have the zend_extension value in .user.ini. xdebug.remote_enable is used to actually turn on xdebug for the dev site

    This works, and it all makes sense to me but I have no idea if it is the best way to do the job.

    Anyone have any comments?
     
  5. mazenovi

    mazenovi New Member

Share This Page