Edit report at https://bugs.php.net/bug.php?id=53611&edit=1
ID: 53611 Updated by: f...@php.net Reported by: jraxis at gmail dot com Summary: fastcgi_param PHP_VALUE pollutes other sites -Status: Feedback +Status: Closed Type: Bug Package: FPM related Operating System: Linux PHP Version: 5.3.4 Assigned To: fat Block user comment: N Private report: N Previous Comments: ------------------------------------------------------------------------ [2011-01-04 20:30:21] f...@php.net Not enough information was provided for us to be able to handle this bug. Please re-read the instructions at http://bugs.php.net/how-to-report.php If you can provide more information, feel free to add it to this bug and change the status back to "Open". Thank you for your interest in PHP. Can you please post your FPM conf ? ------------------------------------------------------------------------ [2010-12-26 00:37:17] jraxis at gmail dot com Description: ------------ In nginx+FPM, if I set a PHP_VALUE using fastcgi_param in one server, sometimes other virtual hosts are seeing those settings. An nginx.conf fragment like this:--- server { server_name foo.example; root /srv/www/foo.example; ... location ~ \.php$ { ... # usual PHP stuff } } server { server_name bar.example; root /srv/www/bar.example; ... location ~ \.php$ { ... fastcgi_param PHP_VALUE "auto_prepend_file=\"/etc/nginx/bar.php\"" } } ---will occasionally result in foo.example's pages having bar.php prepended to it. The php-fpm processes are most likely retaining the PHP_VALUE settings as they are re-used by nginx for requests for other virtual hosts. This is with PHP/5.3.4 and nginx/0.8.53 on a Gentoo Linux box. ./configure line:--- './configure' '--prefix=/usr' '--build=i686-pc-linux-gnu' '--host=i686-pc-linux-gnu' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--datadir=/usr/share' '--sysconfdir=/etc' '--localstatedir=/var/lib' '--prefix=/usr/lib/php5.3' '--mandir=/usr/lib/php5.3/man' '--infodir=/usr/lib/php5.3/info' '--libdir=/usr/lib/php5.3/lib' '--with-libdir=lib' '--without-pear' '--disable-maintainer-zts' '--enable-bcmath=shared' '--with-bz2=shared' '--enable-calendar=shared' '--with-curl=shared' '--with-curlwrappers' '--without-enchant' '--enable-exif=shared' '--enable-ftp=shared' '--with-gettext=shared' '--with-gmp=shared' '--disable-intl' '--without-kerberos' '--enable-mbstring=shared' '--with-mcrypt=shared' '--without-mssql' '--with-onig=/usr' '--with-openssl' '--with-openssl-dir=/usr' '--enable-pcntl=shared' '--without-pgsql' '--without-pspell' '--without-recode' '--enable-shmop' '--with-snmp=shared' '--enable-soap=shared' '--enable-sockets=shared' '--without-sybase-ct' '--enable-sysvmsg=shared' '--enable-sysvsem=shared' '--enable-sysvshm=shared' '--with-tidy=shared' '--enable-wddx=shared' '--with-xmlrpc=shared' '--with-xsl=shared' '--enable-zip=shared' '--with-zlib=shared' '--disable-debug' '--enable-dba=shared' '--without-cdb' '--with-db4' '--enable-flatfile' '--with-gdbm' '--enable-inifile' '--without-qdbm' '--with-freetype-dir=/usr' '--with-t1lib=/usr' '--enable-gd-jis-conv' '--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--with-xpm-dir=/usr' '--with-gd' '--with-imap=shared' '--with-imap-ssl' '--without-interbase' '--with-ldap=shared' '--with-ldap-sasl' '--with-mysql=shared,/usr' '--with-mysql-sock=/var/run/mysqld/mysqld.sock' '--with-mysqli=shared,/usr/bin/mysql_config' '--with-unixODBC=shared,/usr' '--without-adabas' '--without-birdstep' '--without-dbmaker' '--without-empress' '--without-esoob' '--without-ibm-db2' '--without-sapdb' '--without-solid' '--without-oci8' '--without-pdo-dblib' '--with-pdo-mysql=shared,/usr' '--without-pdo-pgsql' '--with-pdo-sqlite=shared,/usr' '--with-pdo-odbc=shared,unixODBC,/usr' '--with-readline' '--without-libedit' '--with-mm' '--with-sqlite=/usr' '--enable-sqlite-utf8' '--with-pcre-regex=/usr' '--with-pcre-dir=/usr' '--with-config-file-path=/etc/php/fpm-php5.3' '--with-config-file-scan-dir=/etc/php/fpm-php5.3/ext-active' '--disable-cli' '--disable-cgi' '--enable-fpm' '--disable-embed' '--without-apxs2' Test script: --------------- # /srv/www/foo.example/index.php <?php print "Foo index"; ?> # /srv/www/bar.example/index.php <?php print "Bar index"; ?> # /etc/nginx/bar.php <?php print "Bar prepend<br/>"; ?> Expected result: ---------------- # foo.example Foo index # bar.example Bar prepend Bar index Actual result: -------------- # foo.example Bar prepend Foo index # bar.example Bar prepend Bar index ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=53611&edit=1