/** * @param InputInterface $input * @return RootNode * @throws Exception */ protected function getConfig(InputInterface $input) : RootNode { $filename = $input->getOption('file'); if ($filename != 'php://stdout' && !file_exists($filename)) { @touch($filename); } if ($filename != 'php://stdout' && file_exists($filename)) { if (!is_writable($filename)) { throw new Exception('Given filename is not writable!'); } } if ($filename != 'php://stdout' && file_exists($filename)) { $parser = new Parser(); return $parser->parseFile($filename); } return new RootNode(); }
error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/www; } # pass the PHP scripts to FastCGI server listening on the php-fpm socket location ~ \\.php\$ { try_files \$uri =404; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name; include fastcgi_params; } } CONFIG; $parser = new Parser(); $defaultConfig = $parser->parse($config); /** @var Server $defaultServers[] */ $defaultServers = $defaultConfig->search(function (Node $node) { return $node instanceof Server; }); $builder = new Builder(); if (count($defaultServers) > 0) { /** @var Server $defaultServer */ foreach ($defaultServers as $defaultServer) { $builder->appendServerNode($defaultServer); } }