Control: reassign -1 apache2 Control: affects -1 libapache2-mod-php5 Rudy,
this needs to be fixed in apache2. Generally speaking a2enmod honors when administrator disables the module and it doesn't re-enable it in maintainer scripts, I have no idea why this is not the case with apache2_switch_mpm. Maybe apache2 maintainers can shed some light on it. Cheers, -- Ondřej Surý <ond...@sury.org> Knot DNS (https://www.knot-dns.cz/) – a high-performance DNS server Knot Resolver (https://www.knot-resolver.cz/) – secure, privacy-aware, fast DNS(SEC) resolver Vše pro chleba (https://vseprochleba.cz) – Potřeby pro pečení chleba všeho druhu On Thu, Jun 16, 2016, at 10:31, Rudy Broersma wrote: > Package: libapache2-mod-php5 > Version: 5.6.22+dfsg-0+deb8u1 > Severity: minor > > Dear Maintainer, > > We have noticed that when a Debian package update is released for > libapache2-mod-php5, > that the dpkg/apt postinst script changes the Apache2 MPM back to > prefork. This > is done in /var/lib/dpkg/info/libapache2-mod-php5.postinst line 15 to 21: > > mpm=$(a2query -M) > case "$(a2query -M)" in > prefork|itk) return 0;; > *) if apache2_switch_mpm prefork; then return 0; fi;; > esac > apache2_msg err "Could not switch to prefork MPM, not enabling > php5" > return 1 > > In our situation, we have software that depends on libapache2-mod-php5 > (Plesk), but > do not actually use php5 as an Apache module. We are also running the > event MPM. > > Now, with an update to this package, the MPM on production machines is > changed back > to the prefork MPM causing configuration to get lost, settings like > MaxClients to fallback > to tiny defaults, etc, etc. > > I can understand that when installing libapache2-mod-php5 changing the > MPM is justified, > but I dont feel this is justified when installing updates. For example, > in our > case we dont use the PHP5 module, but we need it due to dependencies by > Plesk. > > Usually, when installing Debian updates, and the package comes with a > modified configuration > file dpkg will ask the administrator if he wants to ignore, view or > implement the new configuration > file. I believe this is the way to go when changing the MPM as well, as > it means a pretty > heafty change to the Apache webserver. > > The postinst script currently just changes the MPM without asking any > questions. I feel this > is a too big of a change to perform without asking for confirmation. > > So in short I would like to propose a change to the postinst script for > this package: > > 1. Require user input for changing the MPM. This will also ensure the > package is not > updated using unattended-upgrades (which is what happend in our case). > > or > > 2. Stop changing the MPM, atleast when updating the package. > > > -- Package-specific info: > ==== Additional PHP 5 information ==== > > ++++ PHP 5 SAPI (php5query -S): ++++ > apache2 > cgi > fpm > embed > cli > > ++++ PHP 5 Extensions (php5query -M -v): ++++ > pdo_sqlite (Enabled for apache2 by maintainer script) > pdo_sqlite (Enabled for cgi by maintainer script) > pdo_sqlite (Enabled for fpm by maintainer script) > pdo_sqlite (Enabled for embed by maintainer script) > pdo_sqlite (Enabled for cli by maintainer script) > imap (Enabled for apache2 by maintainer script) > imap (Enabled for cgi by maintainer script) > imap (Enabled for fpm by maintainer script) > imap (Enabled for embed by maintainer script) > imap (Enabled for cli by maintainer script) > intl (Enabled for apache2 by maintainer script) > intl (Enabled for cgi by maintainer script) > intl (Enabled for fpm by maintainer script) > intl (Enabled for embed by maintainer script) > intl (Enabled for cli by maintainer script) > curl (Enabled for apache2 by maintainer script) > curl (Enabled for cgi by maintainer script) > curl (Enabled for fpm by maintainer script) > curl (Enabled for embed by maintainer script) > curl (Enabled for cli by maintainer script) > pdo (Enabled for apache2 by maintainer script) > pdo (Enabled for cgi by maintainer script) > pdo (Enabled for fpm by maintainer script) > pdo (Enabled for embed by maintainer script) > pdo (Enabled for cli by maintainer script) > sqlite3 (Enabled for apache2 by maintainer script) > sqlite3 (Enabled for cgi by maintainer script) > sqlite3 (Enabled for fpm by maintainer script) > sqlite3 (Enabled for embed by maintainer script) > sqlite3 (Enabled for cli by maintainer script) > mysql (Enabled for apache2 by maintainer script) > mysql (Enabled for cgi by maintainer script) > mysql (Enabled for fpm by maintainer script) > mysql (Enabled for embed by maintainer script) > mysql (Enabled for cli by maintainer script) > json (Enabled for apache2 by maintainer script) > json (Enabled for cgi by maintainer script) > json (Enabled for fpm by maintainer script) > json (Enabled for embed by maintainer script) > json (Enabled for cli by maintainer script) > puppet (Enabled for apache2 by local administrator) > puppet (Enabled for cgi by local administrator) > puppet (Enabled for fpm by local administrator) > puppet (Enabled for embed by local administrator) > puppet (Enabled for cli by local administrator) > imagick (Enabled for apache2 by maintainer script) > imagick (Enabled for cgi by maintainer script) > imagick (Enabled for fpm by maintainer script) > imagick (Enabled for embed by maintainer script) > imagick (Enabled for cli by maintainer script) > readline (Enabled for apache2 by maintainer script) > readline (Enabled for cgi by maintainer script) > readline (Enabled for fpm by maintainer script) > readline (Enabled for embed by maintainer script) > readline (Enabled for cli by maintainer script) > gd (Enabled for apache2 by maintainer script) > gd (Enabled for cgi by maintainer script) > gd (Enabled for fpm by maintainer script) > gd (Enabled for embed by maintainer script) > gd (Enabled for cli by maintainer script) > xmlrpc (Enabled for apache2 by maintainer script) > xmlrpc (Enabled for cgi by maintainer script) > xmlrpc (Enabled for fpm by maintainer script) > xmlrpc (Enabled for embed by maintainer script) > xmlrpc (Enabled for cli by maintainer script) > mysqli (Enabled for apache2 by maintainer script) > mysqli (Enabled for cgi by maintainer script) > mysqli (Enabled for fpm by maintainer script) > mysqli (Enabled for embed by maintainer script) > mysqli (Enabled for cli by maintainer script) > pdo_mysql (Enabled for apache2 by maintainer script) > pdo_mysql (Enabled for cgi by maintainer script) > pdo_mysql (Enabled for fpm by maintainer script) > pdo_mysql (Enabled for embed by maintainer script) > pdo_mysql (Enabled for cli by maintainer script) > opcache (Enabled for apache2 by maintainer script) > opcache (Enabled for cgi by maintainer script) > opcache (Enabled for fpm by maintainer script) > opcache (Enabled for embed by maintainer script) > opcache (Enabled for cli by maintainer script) > mcrypt (Enabled for apache2 by maintainer script) > mcrypt (Enabled for cgi by maintainer script) > mcrypt (Enabled for fpm by maintainer script) > mcrypt (Enabled for embed by maintainer script) > mcrypt (Enabled for cli by maintainer script) > mysqlnd (Enabled for apache2 by maintainer script) > mysqlnd (Enabled for cgi by maintainer script) > mysqlnd (Enabled for fpm by maintainer script) > mysqlnd (Enabled for embed by maintainer script) > mysqlnd (Enabled for cli by maintainer script) > xsl (Enabled for apache2 by maintainer script) > xsl (Enabled for cgi by maintainer script) > xsl (Enabled for fpm by maintainer script) > xsl (Enabled for embed by maintainer script) > xsl (Enabled for cli by maintainer script) > > ++++ Configuration files: ++++ > [PHP] > engine = On > short_open_tag = on > asp_tags = Off > precision = 14 > output_buffering = 4096 > zlib.output_compression = Off > implicit_flush = Off > unserialize_callback_func = > serialize_precision = 17 > disable_functions = > pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, > disable_classes = > zend.enable_gc = On > expose_php = off > max_execution_time = 60 > max_input_time = 60 > memory_limit = 128M > error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT > display_errors = Off > display_startup_errors = Off > log_errors = On > log_errors_max_len = 1024 > ignore_repeated_errors = Off > ignore_repeated_source = Off > report_memleaks = On > track_errors = Off > html_errors = On > variables_order = "GPCS" > request_order = "GP" > register_argc_argv = Off > auto_globals_jit = On > post_max_size = 8M > auto_prepend_file = > auto_append_file = > default_mimetype = "text/html" > include_path = ".:" > doc_root = > user_dir = > enable_dl = Off > file_uploads = on > upload_max_filesize = 128M > max_file_uploads = 20 > allow_url_fopen = On > allow_url_include = Off > default_socket_timeout = 60 > [CLI Server] > cli_server.color = On > [Date] > [filter] > [iconv] > [intl] > [sqlite] > [sqlite3] > [Pcre] > [Pdo] > [Pdo_mysql] > pdo_mysql.cache_size = 2000 > pdo_mysql.default_socket= > [Phar] > [mail function] > SMTP = localhost > smtp_port = 25 > mail.add_x_header = On > [SQL] > sql.safe_mode = Off > [ODBC] > odbc.allow_persistent = On > odbc.check_persistent = On > odbc.max_persistent = -1 > odbc.max_links = -1 > odbc.defaultlrl = 4096 > odbc.defaultbinmode = 1 > [Interbase] > ibase.allow_persistent = 1 > ibase.max_persistent = -1 > ibase.max_links = -1 > ibase.timestampformat = "%Y-%m-%d %H:%M:%S" > ibase.dateformat = "%Y-%m-%d" > ibase.timeformat = "%H:%M:%S" > [MySQL] > mysql.allow_local_infile = On > mysql.allow_persistent = On > mysql.cache_size = 2000 > mysql.max_persistent = -1 > mysql.max_links = -1 > mysql.default_port = > mysql.default_socket = > mysql.default_host = > mysql.default_user = > mysql.default_password = > mysql.connect_timeout = 60 > mysql.trace_mode = Off > [MySQLi] > mysqli.max_persistent = -1 > mysqli.allow_persistent = On > mysqli.max_links = -1 > mysqli.cache_size = 2000 > mysqli.default_port = 3306 > mysqli.default_socket = > mysqli.default_host = > mysqli.default_user = > mysqli.default_pw = > mysqli.reconnect = Off > [mysqlnd] > mysqlnd.collect_statistics = On > mysqlnd.collect_memory_statistics = Off > [OCI8] > [PostgreSQL] > pgsql.allow_persistent = On > pgsql.auto_reset_persistent = Off > pgsql.max_persistent = -1 > pgsql.max_links = -1 > pgsql.ignore_notice = 0 > pgsql.log_notice = 0 > [Sybase-CT] > sybct.allow_persistent = On > sybct.max_persistent = -1 > sybct.max_links = -1 > sybct.min_server_severity = 10 > sybct.min_client_severity = 10 > [bcmath] > bcmath.scale = 0 > [browscap] > [Session] > session.save_handler = files > session.use_cookies = 1 > session.use_only_cookies = 1 > session.name = PHPSESSID > session.auto_start = 0 > session.cookie_lifetime = 0 > session.cookie_path = / > session.cookie_domain = > session.cookie_httponly = > session.serialize_handler = php > session.gc_probability = 0 > session.gc_divisor = 1000 > session.gc_maxlifetime = 1440 > session.bug_compat_42 = Off > session.bug_compat_warn = Off > session.referer_check = > session.cache_limiter = nocache > session.cache_expire = 180 > session.use_trans_sid = 0 > session.hash_function = 0 > session.hash_bits_per_character = 5 > url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry" > [MSSQL] > mssql.allow_persistent = On > mssql.max_persistent = -1 > mssql.max_links = -1 > mssql.min_error_severity = 10 > mssql.min_message_severity = 10 > mssql.compatability_mode = Off > mssql.secure_connection = Off > [Assertion] > [COM] > [mbstring] > [gd] > [exif] > [Tidy] > tidy.clean_output = Off > [soap] > soap.wsdl_cache_enabled=1 > soap.wsdl_cache_dir="/tmp" > soap.wsdl_cache_ttl=86400 > soap.wsdl_cache_limit = 5 > [sysvshm] > [ldap] > ldap.max_links = -1 > [mcrypt] > [dba] > > **** /etc/php5/apache2/conf.d/10-mysqlnd.ini **** > extension=mysqlnd.so > > **** /etc/php5/apache2/conf.d/20-mcrypt.ini **** > extension=mcrypt.so > > **** /etc/php5/apache2/conf.d/20-readline.ini **** > extension=readline.so > > **** /etc/php5/apache2/conf.d/20-gd.ini **** > extension=gd.so > > **** /etc/php5/apache2/conf.d/20-imagick.ini **** > extension=imagick.so > > **** /etc/php5/apache2/conf.d/20-mysqli.ini **** > extension=mysqli.so > > **** /etc/php5/apache2/conf.d/zend_extensions_psa.ini **** > > **** /etc/php5/apache2/conf.d/20-xsl.ini **** > extension=xsl.so > > **** /etc/php5/apache2/conf.d/20-intl.ini **** > extension=intl.so > > **** /etc/php5/apache2/conf.d/20-json.ini **** > extension=json.so > > **** /etc/php5/apache2/conf.d/20-pdo_sqlite.ini **** > extension=pdo_sqlite.so > > **** /etc/php5/apache2/conf.d/20-imap.ini **** > extension=imap.so > > **** /etc/php5/apache2/conf.d/20-pdo_mysql.ini **** > extension=pdo_mysql.so > > **** /etc/php5/apache2/conf.d/20-puppet.ini **** > max_input_vars = 12000 > max_input_time = 180 > upload_max_filesize = 250M > post_max_size = 250M > upload_tmp_dir = /tmp > memory_limit = 2048M > gpc_magic_quotes = Off > date.timezone = "Europe/Amsterdam" > always_populate_raw_post_data = -1 > default_socket_timeout = 900 > openssl.capath = "/etc/ssl/certs/" > > **** /etc/php5/apache2/conf.d/20-mysql.ini **** > extension=mysql.so > > **** /etc/php5/apache2/conf.d/20-curl.ini **** > extension=curl.so > > **** /etc/php5/apache2/conf.d/10-pdo.ini **** > extension=pdo.so > > **** /etc/php5/apache2/conf.d/05-opcache.ini **** > zend_extension=opcache.so > > **** /etc/php5/apache2/conf.d/00-ioncube-loader-5.6.ini **** > zend_extension=/usr/lib/php5/20131226/ioncube_loader_lin_5.6.so > > **** /etc/php5/apache2/conf.d/20-sqlite3.ini **** > extension=sqlite3.so > > **** /etc/php5/apache2/conf.d/20-xmlrpc.ini **** > extension=xmlrpc.so > > > -- System Information: > Debian Release: 8.5 > APT prefers stable-updates > APT policy: (500, 'stable-updates'), (500, 'stable') > Architecture: amd64 (x86_64) > Foreign Architectures: i386 > > Kernel: Linux 3.16.0-4-amd64 (SMP w/12 CPU cores) > Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: > LC_ALL set to en_US.UTF-8) > Shell: /bin/sh linked to /bin/dash > Init: systemd (via /run/systemd/system) > > Versions of packages libapache2-mod-php5 depends on: > ii apache2 2.4.10-10+deb8u4 > ii apache2-bin [apache2-api-20120211] 2.4.10-10+deb8u4 > ii libbz2-1.0 1.0.6-7+b3 > ii libc6 2.19-18+deb8u4 > ii libcomerr2 1.42.12-1.1 > ii libdb5.3 5.3.28-9 > ii libgssapi-krb5-2 1.12.1+dfsg-19+deb8u2 > ii libk5crypto3 1.12.1+dfsg-19+deb8u2 > ii libkrb5-3 1.12.1+dfsg-19+deb8u2 > ii libmagic1 1:5.22+15-2+deb8u1 > ii libonig2 5.9.5-3.2 > ii libpcre3 2:8.35-3.3+deb8u4 > ii libqdbm14 1.8.78-5+b1 > ii libssl1.0.0 1.0.1t-1+deb8u2 > ii libstdc++6 4.9.2-10 > ii libxml2 2.9.1+dfsg1-5+deb8u2 > ii mime-support 3.58 > ii php5-cli 5.6.22+dfsg-0+deb8u1 > ii php5-common 5.6.22+dfsg-0+deb8u1 > ii php5-json 1.3.6-1 > ii tzdata 2016d-0+deb8u1 > ii ucf 3.0030 > ii zlib1g 1:1.2.8.dfsg-2+b1 > > libapache2-mod-php5 recommends no packages. > > Versions of packages libapache2-mod-php5 suggests: > ii php-pear 5.6.22+dfsg-0+deb8u1 > > Versions of packages php5-common depends on: > ii libc6 2.19-18+deb8u4 > ii lsof 4.86+dfsg-1 > ii psmisc 22.21-2 > ii sed 4.2.2-4+b1 > ii ucf 3.0030 > > Versions of packages php5-common suggests: > pn php5-user-cache <none> > > -- debconf-show failed > > _______________________________________________ > pkg-php-maint mailing list > pkg-php-ma...@lists.alioth.debian.org > http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-php-maint