Drupal 8 on IIS - error installing : <p>I already had Drupal working, but then I messed up with some module (layout_plugin) which is incompatible and broke the modules settings page. I tried to remove it different ways but failed. So I decided to start from scratch. I dropped the website DB and recreated the Drupal folder from default. Unfortunately now when setting it up it does all the installation but the last step after submitting email, credentials and time properties it ends with a super long error</p>

<pre><code>Warning: curl_setopt_array(): Unable to create temporary file. in GuzzleHttp\Handler\CurlFactory-&gt;create() (line 57 of vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php).
GuzzleHttp\Handler\CurlFactory-&gt;create(Object, Array) (Line: 39)
GuzzleHttp\Handler\CurlHandler-&gt;__invoke(Object, Array) (Line: 28)
GuzzleHttp\Handler\Proxy::GuzzleHttp\Handler\{closure}(Object, Array) (Line: 51)
GuzzleHttp\Handler\Proxy::GuzzleHttp\Handler\{closure}(Object, Array) (Line: 42)
GuzzleHttp\PrepareBodyMiddleware-&gt;__invoke(Object, Array) (Line: 30)
GuzzleHttp\Middleware::GuzzleHttp\{closure}(Object, Array) (Line: 68)
GuzzleHttp\RedirectMiddleware-&gt;__invoke(Object, Array) (Line: 59)
GuzzleHttp\Middleware::GuzzleHttp\{closure}(Object, Array) (Line: 67)
GuzzleHttp\HandlerStack-&gt;__invoke(Object, Array) (Line: 275)
GuzzleHttp\Client-&gt;transfer(Object, Array) (Line: 123)
GuzzleHttp\Client-&gt;requestAsync('get', Object, Array) (Line: 129)
GuzzleHttp\Client-&gt;request('get', 'http://updates.drupal.org/release-history/drupal/8.x?site_key=sMbmiei0HAVBa9TUtPGTQnY_kZwJIE2wWA4Kv0fbVyo&amp;amp;version=8.3.7&amp;amp;list=automated_cron%2Cblock%2Cblock_content%2Cbreakpoint%2Cckeditor%2Ccolor%2Ccomment%2Cconfig%2Ccontact%2Ccontextual%2Cdatetime%2Cdblog%2Cdynamic_page_cache%2Ceditor%2Cfield%2Cfield_ui%2Cfile%2Cfilter%2Chelp%2Chistory%2Cimage%2Clink%2Cmenu_link_content%2Cmenu_ui%2Cnode%2Coptions%2Cpage_cache%2Cpath%2Cquickedit%2Crdf%2Csearch%2Cshortcut%2Cstandard%2Csystem%2Ctaxonomy%2Ctext%2Ctoolbar%2Ctour%2Cupdate%2Cuser%2Cviews%2Cviews_ui%2Cstable%2Cbartik%2Cseven%2Cclassy', Array) (Line: 87)
GuzzleHttp\Client-&gt;__call('get', Array) (Line: 65)
Drupal\update\UpdateFetcher-&gt;fetchProjectData(Array, 'sMbmiei0HAVBa9TUtPGTQnY_kZwJIE2wWA4Kv0fbVyo') (Line: 160)
Drupal\update\UpdateProcessor-&gt;processFetchTask(Array) (Line: 131)
Drupal\update\UpdateProcessor-&gt;fetchData() (Line: 423)
update_fetch_data() (Line: 249)
update_cron()
call_user_func_array('update_cron', Array) (Line: 391)
Drupal\Core\Extension\ModuleHandler-&gt;invoke('update', 'cron') (Line: 223)
Drupal\Core\Cron-&gt;invokeCronHandlers() (Line: 122)
Drupal\Core\Cron-&gt;run() (Line: 75)
Drupal\Core\ProxyClass\Cron-&gt;run() (Line: 1778)
install_finished(Array) (Line: 662)
install_run_task(Array, Array) (Line: 540)
install_run_tasks(Array) (Line: 117)
install_drupal(Object) (Line: 44)
Warning: curl_setopt_array(): Unable to create temporary file. in GuzzleHttp\Handler\CurlFactory-&gt;create() (line 57 of vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php).
GuzzleHttp\Handler\CurlFactory-&gt;create(Object, Array) (Line: 39)
GuzzleHttp\Handler\CurlHandler-&gt;__invoke(Object, Array) (Line: 493)
GuzzleHttp\Handler\CurlFactory::retryFailedRewind(Object, Object, Array) (Line: 147)
GuzzleHttp\Handler\CurlFactory::finishError(Object, Object, Object) (Line: 103)
GuzzleHttp\Handler\CurlFactory::finish(Object, Object, Object) (Line: 43)
GuzzleHttp\Handler\CurlHandler-&gt;__invoke(Object, Array) (Line: 28)
GuzzleHttp\Handler\Proxy::GuzzleHttp\Handler\{closure}(Object, Array) (Line: 51)
GuzzleHttp\Handler\Proxy::GuzzleHttp\Handler\{closure}(Object, Array) (Line: 42)
GuzzleHttp\PrepareBodyMiddleware-&gt;__invoke(Object, Array) (Line: 30)
GuzzleHttp\Middleware::GuzzleHttp\{closure}(Object, Array) (Line: 68)
GuzzleHttp\RedirectMiddleware-&gt;__invoke(Object, Array) (Line: 59)
GuzzleHttp\Middleware::GuzzleHttp\{closure}(Object, Array) (Line: 67)
GuzzleHttp\HandlerStack-&gt;__invoke(Object, Array) (Line: 275)
GuzzleHttp\Client-&gt;transfer(Object, Array) (Line: 123)
GuzzleHttp\Client-&gt;requestAsync('get', Object, Array) (Line: 129)
GuzzleHttp\Client-&gt;request('get', 'http://updates.drupal.org/release-history/drupal/8.x?site_key=sMbmiei0HAVBa9TUtPGTQnY_kZwJIE2wWA4Kv0fbVyo&amp;amp;version=8.3.7&amp;amp;list=automated_cron%2Cblock%2Cblock_content%2Cbreakpoint%2Cckeditor%2Ccolor%2Ccomment%2Cconfig%2Ccontact%2Ccontextual%2Cdatetime%2Cdblog%2Cdynamic_page_cache%2Ceditor%2Cfield%2Cfield_ui%2Cfile%2Cfilter%2Chelp%2Chistory%2Cimage%2Clink%2Cmenu_link_content%2Cmenu_ui%2Cnode%2Coptions%2Cpage_cache%2Cpath%2Cquickedit%2Crdf%2Csearch%2Cshortcut%2Cstandard%2Csystem%2Ctaxonomy%2Ctext%2Ctoolbar%2Ctour%2Cupdate%2Cuser%2Cviews%2Cviews_ui%2Cstable%2Cbartik%2Cseven%2Cclassy', Array) (Line: 87)
GuzzleHttp\Client-&gt;__call('get', Array) (Line: 65)
Drupal\update\UpdateFetcher-&gt;fetchProjectData(Array, 'sMbmiei0HAVBa9TUtPGTQnY_kZwJIE2wWA4Kv0fbVyo') (Line: 160)
Drupal\update\UpdateProcessor-&gt;processFetchTask(Array) (Line: 131)
Drupal\update\UpdateProcessor-&gt;fetchData() (Line: 423)
update_fetch_data() (Line: 249)
update_cron()
call_user_func_array('update_cron', Array) (Line: 391)
Drupal\Core\Extension\ModuleHandler-&gt;invoke('update', 'cron') (Line: 223)
Drupal\Core\Cron-&gt;invokeCronHandlers() (Line: 122)
Drupal\Core\Cron-&gt;run() (Line: 75)
Drupal\Core\ProxyClass\Cron-&gt;run() (Line: 1778)
install_finished(Array) (Line: 662)
install_run_task(Array, Array) (Line: 540)
install_run_tasks(Array) (Line: 117)
install_drupal(Object) (Line: 44)
Warning: curl_setopt_array(): Unable to create temporary file. in GuzzleHttp\Handler\CurlFactory-&gt;create() (line 57 of vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php).
GuzzleHttp\Handler\CurlFactory-&gt;create(Object, Array) (Line: 39)
GuzzleHttp\Handler\CurlHandler-&gt;__invoke(Object, Array) (Line: 493)
GuzzleHttp\Handler\CurlFactory::retryFailedRewind(Object, Object, Array) (Line: 147)
GuzzleHttp\Handler\CurlFactory::finishError(Object, Object, Object) (Line: 103)
GuzzleHttp\Handler\CurlFactory::finish(Object, Object, Object) (Line: 43)
GuzzleHttp\Handler\CurlHandler-&gt;__invoke(Object, Array) (Line: 493)
GuzzleHttp\Handler\CurlFactory::retryFailedRewind(Object, Object, Array) (Line: 147)
GuzzleHttp\Handler\CurlFactory::finishError(Object, Object, Object) (Line: 103)
GuzzleHttp\Handler\CurlFactory::finish(Object, Object, Object) (Line: 43)
GuzzleHttp\Handler\CurlHandler-&gt;__invoke(Object, Array) (Line: 28)
GuzzleHttp\Handler\Proxy::GuzzleHttp\Handler\{closure}(Object, Array) (Line: 51)
GuzzleHttp\Handler\Proxy::GuzzleHttp\Handler\{closure}(Object, Array) (Line: 42)
GuzzleHttp\PrepareBodyMiddleware-&gt;__invoke(Object, Array) (Line: 30)
GuzzleHttp\Middleware::GuzzleHttp\{closure}(Object, Array) (Line: 68)
GuzzleHttp\RedirectMiddleware-&gt;__invoke(Object, Array) (Line: 59)
GuzzleHttp\Middleware::GuzzleHttp\{closure}(Object, Array) (Line: 67)
GuzzleHttp\HandlerStack-&gt;__invoke(Object, Array) (Line: 275)
GuzzleHttp\Client-&gt;transfer(Object, Array) (Line: 123)
GuzzleHttp\Client-&gt;requestAsync('get', Object, Array) (Line: 129)
GuzzleHttp\Client-&gt;request('get', 'http://updates.drupal.org/release-history/drupal/8.x?site_key=sMbmiei0HAVBa9TUtPGTQnY_kZwJIE2wWA4Kv0fbVyo&amp;amp;version=8.3.7&amp;amp;list=automated_cron%2Cblock%2Cblock_content%2Cbreakpoint%2Cckeditor%2Ccolor%2Ccomment%2Cconfig%2Ccontact%2Ccontextual%2Cdatetime%2Cdblog%2Cdynamic_page_cache%2Ceditor%2Cfield%2Cfield_ui%2Cfile%2Cfilter%2Chelp%2Chistory%2Cimage%2Clink%2Cmenu_link_content%2Cmenu_ui%2Cnode%2Coptions%2Cpage_cache%2Cpath%2Cquickedit%2Crdf%2Csearch%2Cshortcut%2Cstandard%2Csystem%2Ctaxonomy%2Ctext%2Ctoolbar%2Ctour%2Cupdate%2Cuser%2Cviews%2Cviews_ui%2Cstable%2Cbartik%2Cseven%2Cclassy', Array) (Line: 87)
GuzzleHttp\Client-&gt;__call('get', Array) (Line: 65)
Drupal\update\UpdateFetcher-&gt;fetchProjectData(Array, 'sMbmiei0HAVBa9TUtPGTQnY_kZwJIE2wWA4Kv0fbVyo') (Line: 160)
Drupal\update\UpdateProcessor-&gt;processFetchTask(Array) (Line: 131)
Drupal\update\UpdateProcessor-&gt;fetchData() (Line: 423)
update_fetch_data() (Line: 249)
update_cron()
call_user_func_array('update_cron', Array) (Line: 391)
Drupal\Core\Extension\ModuleHandler-&gt;invoke('update', 'cron') (Line: 223)
Drupal\Core\Cron-&gt;invokeCronHandlers() (Line: 122)
Drupal\Core\Cron-&gt;run() (Line: 75)
Drupal\Core\ProxyClass\Cron-&gt;run() (Line: 1778)
install_finished(Array) (Line: 662)
install_run_task(Array, Array) (Line: 540)
install_run_tasks(Array) (Line: 117)
install_drupal(Object) (Line: 44)
The website encountered an unexpected error. Please try again later.
RuntimeException: Failed to start the session because headers have already been sent by "C:\inetpub\wwwroot\drupal-8.3.7\vendor\guzzlehttp\guzzle\src\Handler\CurlHandler.php" at line 40. in Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage-&gt;start() (line 140 of vendor\symfony\http-foundation\Session\Storage\NativeSessionStorage.php).
Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage-&gt;start() (Line: 163)
Drupal\Core\Session\SessionManager-&gt;startNow() (Line: 234)
Drupal\Core\Session\SessionManager-&gt;regenerate(, NULL) (Line: 173)
Symfony\Component\HttpFoundation\Session\Session-&gt;migrate() (Line: 557)
user_login_finalize(Object) (Line: 1785)
install_finished(Array) (Line: 662)
install_run_task(Array, Array) (Line: 540)
install_run_tasks(Array) (Line: 117)
install_drupal(Object) (Line: 44)
</code></pre>

<p>I wonder how could I break it. When trying to remove that module I installed PHP Composer, GIT and drush (but it is somehow not connected to Drupal so not working). I suppose some of this broke it.</p>
