PHP White Screen on one Server Environment, but not the other

While migrating an old CodeIgniter build to a new production environment recently, my colleagues and I encountered what appeared to be an .htaccess routing error (commonly found in php-based content management systems like WordPress, Silverstripe, ExpressionEngine, or Drupal).
 
At first, we were encountering the white screen of death trying to load the home page, but realized that the server was missing a directive to associate index.php as the home page of the site (DirectoryIndex).  It was looking for index.html.  With an .htaccess file put into place, it looked like we were well underway to completing the migration since the homepage was rendering.
 
Further QA, determined that the secondary pages were not loading at all.  This was clearly a web site httpd.conf or .htaccess setting again.  So we added the directive to serve all pages with index.php in the rewrite section (typical for most php CMS platforms). To our surprise, the common .htaccess file settings did not fully resolve serving of resources for the site.
 
Up to this point, these were common errors for site migrations since .htaccess file may often be ignored in a GIT repo.  But the problem we were now facing was not something we've witnessed before. Secondary pages were loading, but site resources including stylesheets, scripts, and images were not. Basically, we were only seeing plain HTML on all the secondary pages.  
 
After confirming that application config files (constants.php and config.php) were identical across all the server environments [the old server environment, a local staging/testing environment, and the new production environment], we were off to the help forums for CodeIgniter.
 
CodeIgniter's documentation and help forum suggested to check that:
  • the site's base url was properly defined in the constants.php
  • the web server's version of PHP/Apache supported pathinfo()
  • the .htaccess or vhost properly point the root of the website to the appropriate folder (in my case, a subfolder of the code-igniter build)
All three settings checked out, yet site resources continued to not load. 
 
Having encountered no recommended solution in the forums, I then added some php debugging logs to the constants.php and config.php file to see if there was an error processing a request in the file. To my surprise, the debug logs were not appearing in execution at all. I inspected the two subject files closely again and realized they both opened with only 
 
<?
 
and not
 
<?php
 
I finally had that "Eureka!"" moment. I recalled encountering this issue on a previous site migration for a SilverStripe build. Not all LAMP stacks are configured out of the box to allow for PHP shorttags <? .  Many require much stricter and explicit declarations for php, <?php
 
The solution was to enable php short tags by setting the environment variable in either php.ini or in .htaccess using:
php_value short_open_tag 1