fix: enhance error handling and improve URL decoding in http2pic class and index.php
This commit is contained in:
@@ -55,15 +55,13 @@ switch ($url[0]) {
|
||||
|
||||
|
||||
$driver = null;
|
||||
$error = null;
|
||||
try {
|
||||
$driver = RemoteWebDriver::create($serverUrl, $capabilities, 30000, 60);
|
||||
$driver->get($target);
|
||||
//hide scroll bars
|
||||
$driver->executeScript('document.body.style.overflow = "hidden";');
|
||||
|
||||
//set screenshot size to 1920x1080
|
||||
//$driver->manage()->window()->setSize(new \Facebook\WebDriver\WebDriverDimension(1024, 768));
|
||||
//if $viewport is set, set window size
|
||||
if ($viewport) {
|
||||
$viewport = explode('x', $viewport);
|
||||
$driver->manage()->window()->setSize(new \Facebook\WebDriver\WebDriverDimension($viewport[0], $viewport[1]));
|
||||
@@ -80,15 +78,17 @@ switch ($url[0]) {
|
||||
header('Content-Length: ' . strlen($screenshot));
|
||||
echo $screenshot;
|
||||
} catch (Exception $e) {
|
||||
header('HTTP/1.0 500 Internal Server Error');
|
||||
addToLog("$ip\tRequested $target but resulted in error:\t" . $e->getMessage());
|
||||
echo 'Error: ' . $e->getMessage();
|
||||
exit;
|
||||
$error = $e->getMessage();
|
||||
addToLog("$ip\tRequested $target but resulted in error:\t" . $error);
|
||||
} finally {
|
||||
if ($driver instanceof \Facebook\WebDriver\Remote\RemoteWebDriver) {
|
||||
try { $driver->quit(); } catch (Exception $q) {}
|
||||
}
|
||||
}
|
||||
if ($error !== null) {
|
||||
header('HTTP/1.0 500 Internal Server Error');
|
||||
echo 'Error: ' . $error;
|
||||
}
|
||||
|
||||
break;
|
||||
default:
|
||||
|
||||
Reference in New Issue
Block a user