The bottom line is this. There is Selenium (standalone) and chromedriver to it. The first one starts right away with parameters that indicate where the second one lies, and thus the second one is ultimately available without unnecessary dancing when accessing the first one.
We are php-webdriver it through the php-webdriver , written by the guys from Facebook . For example, a piece of code:
$chrome_options->addArguments([ 'no-sandbox', '--incognito', '--disable-application-cache', '--disable-async-dns', '--dns-prefetch-disable', '--ignore-certificate-errors', '--headless', ]); $caps->setCapability(ChromeOptions::CAPABILITY, $chrome_options); $this->driver = RemoteWebDriver::create( 'bla', // selenium host $caps, 'bla', // connection timeout 'bla' // request timeout ); The question is: do the options we specify for Chrome apply to the whole roughly speaking Chrome as an application, or each time doing RemoteWebDriver::create , we get a separate instance of the application running with exactly these parameters? Please note that the launch takes place in incognito.