title: Php 8.0 update does not parse from httpd
body: <p>I updated php on my test platforms from php 7.4 to php 8.0. The update on the Centos 8 box works normally. The one on Centos 7 does not. The page with <code>&lt;?php phpinfo() ?&gt;</code> comes up blank while my tester page simply shows the code as text.</p>
  <p>The command line seems to work:</p>
  <pre><code>[lhadmin@dho-dev01 ~]$ php --version
  PHP 8.0.8 (cli) (built: Jun 29 2021 07:41:19) ( NTS gcc x86_64 )
  Copyright (c) The PHP Group
  Zend Engine v4.0.8, Copyright (c) Zend Technologies
  
  [lhadmin@dho-dev01 ~]$ php -r 'echo &quot;Hello World!\n&quot;;'
  Hello World!
  </code></pre>
  <p>I tried uninstalling php and reinstalling httpd. Then I installed php again. Still no good. I can go back to php 7.4 and everything works.</p>
  <p>The repos I'm switching between are remi-php74 and remi-php80.</p>
  <p>Could there be any security policies suggested by cis-cat that might be interfering with this? I tried disabling selinux but that didn't do anything.</p>
  <hr />
  <p>Thank you for your input.</p>
  <p>First, we are not planning on moving to Centos 8 because of RHEL issues. We are looking at other distros. That choice is what they call &quot;above my pay grade.&quot; I also don't think that php80 on centos 7 is the issue. I think there is something about this system, possibly related to security settings we've been implementing. We had a problem with a mail list because default permissions on /var/log were set to 600.</p>
  <p>As Remi Collet mentioned, it should work out of the box. The package list is 923 lines long. Are there any packages in particular that I should be watching out for? I know apache is somehow interacting with php because the info page shows the text  when php is not installed. It shows a blank page when it tries to access the function.</p>
  <p>What I've tried:</p>
  <p>On php 7.4 - everything works. phpinfo() shows PHP Version 7.4.21, etc.</p>
  <p>Server version: Apache/2.4.48 (codeit)
  Server built:   May 26 2021 11:40:06</p>
  <p>7.4 config files:</p>
  <pre><code>    /etc/httpd/php.conf
      /etc/httpd/conf.module.d/15-php.conf
      /etc/httpd/modules/libphp7.so 
      /etc/httpd/modules/libphp7-zts.so 
  </code></pre>
  <pre><code>    yum-config-manager --disable remi-php74
      yum-config-manager --enable remi-php80
      yum check-update  # verify 
      yum -y update
  </code></pre>
  <p>systemctl restart httpd # with php 8.0</p>
  <p>Phpinfo() is a blank page. Php on the command line works, though.</p>
  <p>8.0 config files:</p>
  <pre><code>    /etc/httpd/php.conf,
      /etc/httpd/conf.module.d/20-php.conf
      /etc/httpd/modules/libphp.so
  </code></pre>
  <p>Go back:</p>
  <pre><code>    yum remove php*
      yum-config-manager --disable remi-php80,
      yum-config-manager --enable remi-php74,
      systemctl restart httpd # with php 7.4
  </code></pre>
  <p>Repeat with different package settings.</p>
  <p>My httpd config files:</p>
  <pre><code>autoindex.conf  php.conf  README  shib.conf  ssl.conf  ssl.conf.rpmnew  ssl.conf.rpmsave  userdir.conf  welcome.conf
  </code></pre>
  <p>I've even tried reinstalling httpd and building up from there. Still no go.</p>
  <p>Contents of 20-php.conf</p>
  <pre><code>#
  # PHP is an HTML-embedded scripting language which attempts to make it
  # easy for developers to write dynamically generated webpages.
  #
  
  # Cannot load both php5, php7 and php modules
  &lt;IfModule !mod_php5.c&gt;
    &lt;IfModule !mod_php7.c&gt;
      &lt;IfModule prefork.c&gt;
        LoadModule php_module modules/libphp.so
      &lt;/IfModule&gt;
    &lt;/IfModule&gt;
  &lt;/IfModule&gt;
  </code></pre>
  <p>Contents of php.conf :</p>
  <pre><code>#
  # The following lines prevent .user.ini files from being viewed by Web clients.
  #
  &lt;Files &quot;.user.ini&quot;&gt;
      &lt;IfModule mod_authz_core.c&gt;
          Require all denied
      &lt;/IfModule&gt;
      &lt;IfModule !mod_authz_core.c&gt;
          Order allow,deny
          Deny from all
          Satisfy All
      &lt;/IfModule&gt;
  &lt;/Files&gt;
  
  #
  # Allow php to handle Multiviews
  #
  AddType text/html .php
  
  #
  # Add index.php to the list of files that will be served as directory
  # indexes.
  #
  DirectoryIndex index.php
  
  # mod_php options
  &lt;IfModule  mod_php.c&gt;
      #
      # Cause the PHP interpreter to handle files with a .php extension.
      #
      &lt;FilesMatch \.(php|phar)$&gt;
          SetHandler application/x-httpd-php
      &lt;/FilesMatch&gt;
  
      #
      # Uncomment the following lines to allow PHP to pretty-print .phps
      # files as PHP source code:
      #
      #&lt;FilesMatch \.phps$&gt;
      #    SetHandler application/x-httpd-php-source
      #&lt;/FilesMatch&gt;
  
      #
      # Apache specific PHP configuration options
      # those can be override in each configured vhost
      #
      php_value session.save_handler &quot;files&quot;
      php_value session.save_path    &quot;/var/lib/php/session&quot;
      php_value soap.wsdl_cache_dir  &quot;/var/lib/php/wsdlcache&quot;
  
      #php_value opcache.file_cache   &quot;/var/lib/php/opcache&quot;
  &lt;/IfModule&gt;
  </code></pre>