Craft CMS 3 Installed but not working I have a remote repository with a Craft install and am trying to pull it to a new environment. I run the composer install and Craft &amp; other packages install seemingly correctly, added the .env file and set up the Apache server to point to the /web folder.
When I load up the url I get a visual of the index.php file:


  
  
  // Set path constants define('CRAFT_BASE_PATH', dirname(DIR));
  define('CRAFT_VENDOR_PATH', CRAFT_BASE_PATH.'/vendor');
  
  // Load Composer's autoloader require_once
  CRAFT_VENDOR_PATH.'/autoload.php';
  
  // Load dotenv? if (class_exists('Dotenv\Dotenv') &amp;&amp;
  file_exists(CRAFT_BASE_PATH.'/.env')) {
      (new Dotenv\Dotenv(CRAFT_BASE_PATH))->load(); }
  
  // Load and run Craft define('CRAFT_ENVIRONMENT',
  getenv('ENVIRONMENT') ?: 'production'); $app = require
  CRAFT_VENDOR_PATH.'/craftcms/cms/bootstrap/web.php'; $app->run();


No urls seem to be working e.g. /admin or /index.php?p=admin/install and I can even put anything as the url and nothing errors, just shows this file still.
Your answer didn't end up working for me, but I did get it working.

Update (or add) &quot;vlucas/phpdotenv&quot;: &quot;^5.0&quot; to composer.json
Edit the craft (or index) file's contents:

// Load dotenv?
// if (class_exists('Dotenv\Dotenv') &amp;&amp; file_exists(CRAFT_BASE_PATH.'/.env')) {
//     Dotenv\Dotenv::create(CRAFT_BASE_PATH)-&gt;load();
// }
$dotenv = Dotenv\Dotenv::createImmutable(__DIR__);
if (file_exists(CRAFT_BASE_PATH.'/.env')) {
  $dotenv-&gt;load();
}

I can then retrieve my environment vars with:
$varOne = $_ENV['VAR_ONE'];
$varTwo = $_SERVER['VAR_TWO'];