APP/Utility/Product.php (line 73)
[
(int) 0 => [
'id' => (int) 805955,
'name' => 'PM 3.5 X 18 WHEEL, PARAMOUNT',
'name_imported' => 'PM 3.5 X 18 WHEEL, PARAMOUNT',
'name_short' => '',
'description' => '',
'desc_short' => null,
'desc_imported_2' => '',
'desc_imported' => '',
'desc_ktm' => null,
'desc_ktm_2' => null,
'desc_duell' => null,
'desc_powerfactory' => null,
'technical' => null,
'number' => '554543',
'number_long' => '',
'external_number' => null,
'price' => '2762.26',
'price_discount' => '0.00',
'price_custom' => '0.00',
'price_purchase' => '0.00',
'tax' => '25.5',
'active' => (int) 1,
'searchable' => (int) 1,
'stock' => (int) 0,
'stock_duell' => (int) 0,
'stock_powerfactory' => (int) 0,
'stock_vannetukku' => (int) 0,
'stock_maritim' => (int) 0,
'stock_koivunen' => (int) 0,
'stock_rema' => (int) 0,
'stock_startax' => (int) 0,
'stock_startax_updated' => null,
'sellquantity' => (int) 1,
'weight' => (int) 0,
'product_type' => (int) 0,
'show_price' => (int) 1,
'imported' => (int) 1,
'use_quantity_discounts' => (int) 0,
'discount_code' => 'CHK',
'supplier_number' => '17',
'monitoring_group' => 'CHK',
'seo_title' => null,
'seo_link' => null,
'seo_desc' => null,
'seo_keywords' => null,
'seo_alt' => null,
'image_text' => null,
'delivery_time' => null,
'delivery_time_limit' => null,
'delivery_time_nostock' => null,
'redirect' => null,
'giveaway' => null,
'deposit' => null,
'manufacturer' => null,
'in_stock' => (int) 0,
'searchtag' => '554543 pm 3.5 x 18 wheel, paramount',
'ignore_stock' => (int) 0,
'multiply_delivery_method' => (int) 0,
'only_offer_request' => (int) 0,
'created' => object(Cake\I18n\DateTime) id:0 {
'hasFixedNow' => false
'time' => '2017-05-05 03:22:52.000000'
'timezone' => 'Europe/Helsinki'
},
'modified' => object(Cake\I18n\DateTime) id:1 {
'hasFixedNow' => false
'time' => '2025-07-07 14:04:28.000000'
'timezone' => 'Europe/Helsinki'
},
'brand_id' => null,
'use_automatic_branding' => (int) 1,
'no_voucher' => (int) 0,
'ean' => null,
'nettix' => null,
'exists_on_nettix' => null,
'show_finance_calculator' => (int) 0,
'price_wholesale' => '2028.92',
'alert_limit' => (int) 0,
'listing' => '375',
'has_alternatives' => (int) 0,
'desc_mcsh' => '<h1>PM 3.5 X 18 WHEEL, PARAMOUNT</h1><p>FORGED; FRONT; CONTRAST CUT</p><p>Fits: > 14-16 XL 1200V; 14-19 883N. (with ABS, single disc )</p>',
'calculated_name' => 'PM 3.5 X 18 WHEEL, PARAMOUNT',
'desc_visma_nova' => null,
'stock_incoming' => (int) 0,
'vehicle_tax' => null,
'additionals' => [
],
'alternatives' => [
],
'videos' => [
],
'product_attributes' => [
],
'attachment_group' => null,
'full_name' => 'PM 3.5 X 18 WHEEL, PARAMOUNT',
'stocksum' => (int) 0,
'stocksum_internal' => [
'total' => (int) 0,
'warehouses' => [
(int) 2 => [
'stock' => (int) 0,
'name' => 'Loimaa',
],
(int) 1 => [
'stock' => (int) 0,
'name' => 'Turku',
],
],
],
'stocksum_external' => [
'total' => (int) 0,
'warehouses' => [
],
],
],
]
CORE/src/Http/Session.php at line 523
(edit)
|
$this->headerSentInfo['line'],
|
|
);
|
|
}
|
|
|
|
throw new CakeException($message);
|
|
}
|
|
|
|
if (!is_array($name)) {
|
|
$name = [$name => $value];
|
-
|
}
|
|
}
|
|
$this->viewBuilder()->setTheme($this->theme);
|
|
$this->set('theme', $this->theme);
|
|
$this->request->getSession()->write('theme', $this->theme);
|
|
}
|
|
|
|
function beforeFilter(EventInterface $event): void
|
|
{
|
Toggle Arguments
-
|
* @return mixed The result of the $listener function.
|
|
*/
|
|
protected function _callListener(callable $listener, EventInterface $event): mixed
|
|
{
|
|
return $listener($event, ...array_values($event->getData()));
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
Toggle Arguments
object(Cake\Event\Event) id:0 {
protected _name => 'Controller.beforeRender'
protected _subject => object(App\Controller\ClientController) id:1 {
allows => [
'' => [maximum depth reached],
]
user_data => [
'' => [maximum depth reached],
]
user_id => null
admin_shop_ids => [
'' => [maximum depth reached],
]
is_logged_in => false
is_admin => false
is_superadmin => false
settings => [
'' => [maximum depth reached],
]
set_theme => 'Admin'
themeurl => '/verkkokauppa/Vtwincity/'
themepath => '/srv/vtwincity.fi/public/verkkokauppa/plugins/Vtwincity/webroot/'
layout => null
locale => object(Cake\ORM\Entity) id:2 {
}
languages => [
'' => [maximum depth reached],
]
menuallows => [
'' => [maximum depth reached],
]
carttotals => [
'' => [maximum depth reached],
]
banner_popup_all => null
banner_popup_cart => null
protected name => 'Client'
protected request => object(Cake\Http\ServerRequest) id:3 {
}
protected response => object(Cake\Http\Response) id:4 {
}
protected paginate => [
'' => [maximum depth reached],
]
protected autoRender => false
protected _components => object(Cake\Controller\ComponentRegistry) id:5 {
}
protected plugin => null
protected middlewares => [
'' => [maximum depth reached],
]
protected viewClasses => [
'' => [maximum depth reached],
]
protected _eventManager => object(Cake\Event\EventManager) id:6 {
}
protected _eventClass => 'Cake\Event\Event'
protected defaultTable => 'Client'
protected _tableLocator => object(Cake\ORM\Locator\TableLocator) id:7 {
}
protected _viewBuilder => object(Cake\View\ViewBuilder) id:8 {
}
private theme => 'Vtwincity'
}
protected _data => [
]
protected result => null
protected _stopped => false
}
-
|
foreach ($listeners as $listener) {
|
|
if ($event->isStopped()) {
|
|
break;
|
|
}
|
|
$result = $this->_callListener($listener['callable'], $event);
|
|
if ($result === false) {
|
|
$event->stopPropagation();
|
|
}
|
|
if ($result !== null) {
|
Toggle Arguments
object(Cake\Event\Event) id:0 {
protected _name => 'Controller.beforeRender'
protected _subject => object(App\Controller\ClientController) id:1 {
allows => [
'' => [maximum depth reached],
]
user_data => [
'' => [maximum depth reached],
]
user_id => null
admin_shop_ids => [
'' => [maximum depth reached],
]
is_logged_in => false
is_admin => false
is_superadmin => false
settings => [
'' => [maximum depth reached],
]
set_theme => 'Admin'
themeurl => '/verkkokauppa/Vtwincity/'
themepath => '/srv/vtwincity.fi/public/verkkokauppa/plugins/Vtwincity/webroot/'
layout => null
locale => object(Cake\ORM\Entity) id:2 {
}
languages => [
'' => [maximum depth reached],
]
menuallows => [
'' => [maximum depth reached],
]
carttotals => [
'' => [maximum depth reached],
]
banner_popup_all => null
banner_popup_cart => null
protected name => 'Client'
protected request => object(Cake\Http\ServerRequest) id:3 {
}
protected response => object(Cake\Http\Response) id:4 {
}
protected paginate => [
'' => [maximum depth reached],
]
protected autoRender => false
protected _components => object(Cake\Controller\ComponentRegistry) id:5 {
}
protected plugin => null
protected middlewares => [
'' => [maximum depth reached],
]
protected viewClasses => [
'' => [maximum depth reached],
]
protected _eventManager => object(Cake\Event\EventManager) id:6 {
}
protected _eventClass => 'Cake\Event\Event'
protected defaultTable => 'Client'
protected _tableLocator => object(Cake\ORM\Locator\TableLocator) id:7 {
}
protected _viewBuilder => object(Cake\View\ViewBuilder) id:8 {
}
private theme => 'Vtwincity'
}
protected _data => [
]
protected result => null
protected _stopped => false
}
-
|
$subject ??= $this;
|
|
|
|
/** @var \Cake\Event\EventInterface<TSubject> $event Coerce for psalm/phpstan */
|
|
$event = new $this->_eventClass($name, $subject, $data);
|
|
$this->getEventManager()->dispatch($event);
|
|
|
|
return $event;
|
|
}
|
|
}
|
Toggle Arguments
object(Cake\Event\Event) id:0 {
protected _name => 'Controller.beforeRender'
protected _subject => object(App\Controller\ClientController) id:1 {
allows => [
'' => [maximum depth reached],
]
user_data => [
'' => [maximum depth reached],
]
user_id => null
admin_shop_ids => [
'' => [maximum depth reached],
]
is_logged_in => false
is_admin => false
is_superadmin => false
settings => [
'' => [maximum depth reached],
]
set_theme => 'Admin'
themeurl => '/verkkokauppa/Vtwincity/'
themepath => '/srv/vtwincity.fi/public/verkkokauppa/plugins/Vtwincity/webroot/'
layout => null
locale => object(Cake\ORM\Entity) id:2 {
}
languages => [
'' => [maximum depth reached],
]
menuallows => [
'' => [maximum depth reached],
]
carttotals => [
'' => [maximum depth reached],
]
banner_popup_all => null
banner_popup_cart => null
protected name => 'Client'
protected request => object(Cake\Http\ServerRequest) id:3 {
}
protected response => object(Cake\Http\Response) id:4 {
}
protected paginate => [
'' => [maximum depth reached],
]
protected autoRender => false
protected _components => object(Cake\Controller\ComponentRegistry) id:5 {
}
protected plugin => null
protected middlewares => [
'' => [maximum depth reached],
]
protected viewClasses => [
'' => [maximum depth reached],
]
protected _eventManager => object(Cake\Event\EventManager) id:6 {
}
protected _eventClass => 'Cake\Event\Event'
protected defaultTable => 'Client'
protected _tableLocator => object(Cake\ORM\Locator\TableLocator) id:7 {
}
protected _viewBuilder => object(Cake\View\ViewBuilder) id:8 {
}
private theme => 'Vtwincity'
}
protected _data => [
]
protected result => null
protected _stopped => false
}
-
|
if ($layout !== null) {
|
|
$builder->setLayout($layout);
|
|
}
|
|
|
|
$event = $this->dispatchEvent('Controller.beforeRender');
|
|
if ($event->getResult() instanceof Response) {
|
|
return $event->getResult();
|
|
}
|
|
if ($event->isStopped()) {
|
Toggle Arguments
'Controller.beforeRender'
-
|
get_debug_type($result),
|
|
),
|
|
);
|
|
} elseif ($this->isAutoRenderEnabled()) {
|
|
$result = $this->render();
|
|
}
|
|
if ($result) {
|
|
$this->response = $result;
|
|
}
|
Toggle Arguments
-
|
$args = $this->getActionArgs(
|
|
$action,
|
|
array_values((array)$controller->getRequest()->getParam('pass')),
|
|
);
|
|
$controller->invokeAction($action, $args);
|
|
|
|
$result = $controller->shutdownProcess();
|
|
if ($result !== null) {
|
|
return $result;
|
Toggle Arguments
[
(int) 0 => '805955',
(int) 1 => null,
(int) 2 => null,
]
-
|
|
|
return $runner->run($middlewareQueue, $controller->getRequest(), $this);
|
|
}
|
|
|
|
return $this->handle($controller->getRequest());
|
|
}
|
|
|
|
/**
|
|
* Invoke the action.
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'lang' => 'fi',
'slug' => 'pm_3_5_x_18_wheel_paramount',
'product_id' => '805955',
'pass' => [
(int) 0 => '805955',
],
'controller' => 'Client',
'action' => 'view',
'plugin' => null,
'_matchedRoute' => '/{lang}/{slug}-p-{product_id}',
'_ext' => null,
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
'HTTP_REFERER' => null,
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
'put' => false,
'post' => false,
'delete' => false,
'patch' => false,
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
'route' => object(Cake\Routing\Route\DashedRoute) id:7 {
},
'csrfToken' => 'cTP3eYRObj6LHP6xGK1jihW/EhJgbF9GnLh/Ddi/G1KZ275QAt+gp01PVOXt2zspP60S4amDH8IQpszWh/AYyRsnuJmVn4YxJox3IwJcOyOviUc/4Il5Zvy43zM2vpKQfHxh1NXuWhsLyXHTzbEq9Q==',
'identity' => null,
'authentication' => object(Authentication\AuthenticationService) id:8 {
},
'authenticationResult' => object(Authentication\Authenticator\Result) id:9 {
},
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
-
|
}
|
|
|
|
$controller = $this->controllerFactory->create($request);
|
|
|
|
return $this->controllerFactory->invoke($controller);
|
|
}
|
|
}
|
|
|
Toggle Arguments
object(App\Controller\ClientController) id:0 {
allows => [
]
user_data => [
]
user_id => null
admin_shop_ids => [
]
is_logged_in => false
is_admin => false
is_superadmin => false
settings => [
'merchant_test_mode' => '1',
'system_email' => 'vtwin@vtwincity.fi',
'mail_server_login' => 'apikey',
'mail_server_url' => 'smtp.sendgrid.net',
'mail_server_port' => '587',
'mail_server_password' => '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',
'ecommerce_name' => 'V-Twin City Oy',
'image_root' => '/home/vtwincity/kuva-data/',
'image_root_http' => 'https://vtwincity.fi/verkkokauppa/kuva-data/',
'futur_use_stock' => '0',
'futur_use_price' => '0',
'futur_url' => '',
'futur_port' => '13000',
'csv_location' => '/home/vtwincity/csv/products.csv',
'cms_root' => 'https://www.vtwincity.fi',
'sitemap_root' => '/srv/vtwincity.fi/public/verkkokauppa/webroot/',
'memo' => '',
'allow_purchase_loggedout' => '1',
'allow_purchase_loggedin' => '1',
'image_extension' => 'jpg',
'image_use_supplier' => '1',
'image_name_field' => 'number',
'use_futur' => '1',
'allow_only_linked' => '0',
'search_only_linked' => '0',
'productlist_limit' => '32',
'client_theme' => 'Vtwincity',
'system_email_test' => 'toni.huuskonen@trimedia.fi',
'delivery_allow_bill_loggedout' => '0',
'delivery_allow_bill_loggedin' => '0',
'use_category_pricefactors' => '0',
'admin_theme' => '',
'use_category_prices' => '0',
'client_theme_test' => '',
'test_ip' => '',
'admin_theme_test' => '',
'test_username' => '',
'min_order' => '0',
'product_attachment_groups' => '2',
'stock_limit_class_nostock' => 'text-danger',
'stock_limit_class_boundary' => 'text-warning',
'stock_limit' => '1',
'smartship_active' => '0',
'smartship_api_secret' => '',
'smartship_api_id' => '',
'smartship_name' => '',
'smartship_address' => '',
'smartship_postal_code' => '',
'smartship_city' => '',
'smartship_phone' => '',
'smartship_vat' => '',
'smartship_email' => 'vtwin@vtwincity.fi',
'smartship_quick_id' => '',
'smartship_freight_number' => '',
'smartship_logistics_number' => '',
'mail_checkout_order_admin' => '1',
'stock_limit_class_stock' => 'text-success',
'use_automatic_numbering' => '0',
'automatic_numbering_prefix' => '',
'mail_checkout_order_customer' => '1',
'system_email_orders' => 'vtwin@vtwincity.fi',
'seo_index_title' => '',
'seo_index_desc' => '',
'seo_index_keywords' => '',
'mh_active' => '0',
'use_cookies' => '0',
'use_banners' => '1',
'use_captcha' => '1',
'captcha_public' => '6LdXAf4SAAAAAIoZUuxdkbbCEjUmEsYgGqg6SFF7',
'captcha_private' => '6LdXAf4SAAAAAPZs1W6WF8yFsriznwNe4MxXX8qc',
'google_analytics_code' => '',
'force_login' => '0',
'mh_user_id' => '1234567',
'mh_password' => '',
'mh_name' => '',
'mh_address' => '',
'mh_postal_code' => '',
'mh_city' => '',
'use_vouchers' => '1',
'zoner_admin_active' => '0',
'zoner_tracking_active' => '0',
'zoner_username' => '',
'zoner_password' => '',
'zoner_from' => '',
'zoner_to' => '',
'google_tag_manager' => '',
'merge_cart_on_login' => '1',
'use_countries' => '0',
'use_stock_limit' => '1',
'hide_stock_numbers' => '1',
'disable_out_of_stock_products' => '0',
'api_kabus' => '',
'api_products' => '',
'futur_use_groupstock' => '0',
'mail_register_admin' => '1',
'paytrail_quick_mode' => '0',
'show_newest_links' => '',
'extra_sitemap_file' => '',
'search_desc' => '0',
'instagram_access_token' => '',
'facebook_access_token' => '',
'facebook_page_id' => '',
'dhl_company' => '',
'dhl_address' => '',
'dhl_city' => '',
'dhl_postal_code' => '',
'dhl_country_id' => 'FI',
'dhl_country' => 'Finland',
'dhl_person' => '',
'dhl_phone' => '',
'dhl_email' => 'vtwin@vtwincity.fi',
'dhl_account_id' => '',
'dhl_account_password' => '',
'dhl_shipper_account_number' => '',
'dhl_billing_account_number' => '',
'dhl_active' => '0',
'dhl_country_area' => 'EU',
'dhl_default_terms' => '',
'dhl_default_commodity_code' => '',
'facebook_pixel' => '',
'google_adwords_conversion_id' => '',
'google_adwords_conversion_cart' => '',
'google_adwords_conversion_order' => '',
'google_adwords_conversion_checko' => '',
'mailchimp_api_key' => '',
'mailchimp_list_id' => '',
'use_mailchimp' => '0',
'instagram_client_id' => '',
'instagram_client_secret' => '',
'client_id' => '',
'client_secret' => '',
'default_country_code' => 'FI',
'merchant_id' => '',
'merchant_key' => '',
'part_payment_calculator_limit' => '0',
'use_product_filters' => '1',
'csv_location_ktm' => '',
'image_root_ktm' => '',
'image_root_http_ktm' => '',
'partstream_app_key' => '',
'futur_default_number' => '9999',
'use_notify_stock_limit' => '0',
'contact_email' => 'vtwin@vtwincity.fi',
'product_filter_type' => '0',
'csv_location_hqv' => '',
'image_root_hqv' => '',
'image_root_http_hqv' => '',
'image_root_duell' => '',
'image_root_http_duell' => '',
'csv_location_duell' => '',
'olark_site_id' => '',
'hotjar_site_id' => '',
'maintenance_mode' => '0',
'account_email' => 'vtwin@vtwincity.fi',
'db_username' => '',
'db_access_key' => '',
'db_customer_number' => '',
'pakettikauppa_active' => '0',
'pakettikauppa_api_key' => '',
'pakettikauppa_api_secret' => '',
'pakettikauppa_name' => '',
'pakettikauppa_address' => '',
'pakettikauppa_postal_code' => '',
'pakettikauppa_city' => '',
'pakettikauppa_phone' => '',
'nettix_client_secret' => '',
'nettix_client_id' => '',
'nettix_keyfile' => 'https://auth.nettix.fi/oauth2/public-key',
'nettix_authserver' => 'https://auth.nettix.fi',
'nettix_server' => 'https://api.nettix.fi',
'nettix_nettimoto' => '0',
'nettix_nettiauto' => '0',
'nettix_nettivene' => '0',
'nettix_nettikone' => '0',
'nettix_nettivaraosa' => '0',
'nettix_dealer_name' => '',
'nettix_nettiauto_attributes' => '',
'nettix_nettimoto_filter_attributes' => 'bikeType,bodyType,make,model,modelType,color,colorType,fuelType,driveType,gearType,powerClass,engineSize,coolingType,undrivenVehicle,year,trackWidth',
'nettix_nettimoto_attributes' => 'bikeType,bodyType,make,model,modelType,color,colorType,fuelType,driveType,gearType,powerClass,engineSize,coolingType,registerNumber,undrivenVehicle,year,firstRegistrationMonth,firstRegistrationYear,totalOwners,kilometers,hours,coSeater,trackWidth,deliveryCost,warrantyMonth,warrantyKm,warrantyDate',
'nettix_nettiauto_filter_attributes' => '',
'nettix_nettivene_attributes' => '',
'nettix_nettivene_filter_attributes' => '',
'nettix_nettikone_attributes' => '',
'nettix_nettikone_filter_attributes' => '',
'nettix_nettivaraosa_attributes' => '',
'nettix_nettivaraosa_filter_attributes' => '',
'futur_ftp_sender_business_id' => '16701',
'futur_ftp_recipient_business_id' => '',
'futur_ftp_order_export_address' => 'online.futursoft.fi',
'futur_ftp_order_export_username' => 'til16701',
'futur_ftp_order_export_password' => '',
'futur_ftp_order_export_path' => '/',
'futur_ftp_move_orders' => '0',
'image_root_powerfactory' => '',
'image_root_http_powerfactory' => '',
'csv_location_powerfactory' => '',
'csv_location_maritim' => '',
'futur_api_username' => '',
'futur_api_password' => '',
'futur_api_client_id' => '',
'futur_api_subscription_key' => '',
'google_analytics_ecommerce_ga4' => '0',
'shipit_api_url' => '',
'shipit_api_key' => '',
'shipit_api_secret' => '',
'shipit_active' => '1',
'shipit_address' => '',
'shipit_email' => 'vtwin@vtwincity.fi',
'shipit_phone' => '',
'shipit_name' => '',
'shipit_city' => '',
'shipit_postcode' => '',
'shipit_contact_person' => '',
'shipit_state' => '',
'shipit_address2' => '',
'shipit_is_company' => '1',
'shipit_country' => '',
'shipit_vat_number' => '',
'shipit_reseller_id' => '0',
'shipit_print_username' => 'shipit',
'shipit_print_password' => 'tulossa',
'nettix_country' => 'Suomi',
'nettix_region' => '',
'nettix_town' => '',
'nettix_streetaddress' => '',
'nettix_userid' => '',
'futur_default_number_logged_in' => '9999',
'rema_username' => '',
'rema_password' => '',
'rema_supplier_number' => '',
'rema_prefix' => '',
'stripe_secret_key' => '',
'use_finance_calculator' => '0',
'finance_calculator_interest_rate' => '3,5',
'finance_calculator_initial_fee' => '50',
'finance_calculator_monthly_fee' => '6',
'startax_supplier_number' => '6',
'futur_api_seller_id' => 'Verkkokauppa',
'sitewide_discount_percentage' => '0',
'sitewide_discount_number' => '',
'sitewide_discount_supplier_number' => '',
'sitewide_discount_also_delivery' => '0',
'openai_key' => '',
'supplier_number_ktm' => '',
'supplier_number_gasgas' => '',
'supplier_number_hqv' => '',
'csv_location_koivunen' => '',
'koivunen_host' => 'nettikoivunen.koivunen.fi',
'koivunen_username' => '',
'koivunen_password' => '',
'main_category_depth' => '1',
'csv2_location' => '/home/vtwincity/csv/products-loimaa.csv',
'show_most_purchased_products' => '0',
'product_filter_active' => '1',
]
set_theme => 'Admin'
themeurl => '/verkkokauppa/Vtwincity/'
themepath => '/srv/vtwincity.fi/public/verkkokauppa/plugins/Vtwincity/webroot/'
layout => null
locale => object(Cake\ORM\Entity) id:1 {
'id' => (int) 1
'name' => 'Suomi'
'name_client' => 'Suomi'
'locale' => 'fin'
'locale_short' => 'fi'
'locale_country' => 'fi_FI'
'active' => (int) 1
'default_show' => (int) 1
'default_system' => (int) 1
'stock_text' => 'Varastossa'
'stock_text_limit' => 'Rajoitettu saatavuus'
'stock_text_nostock' => 'Tilaustuote'
'delivery_time' => ''
'delivery_time_limit' => ''
'delivery_time_nostock' => ''
'sitemap_tags' => ''
'main_text' => '<h1>Tervetuloa verkkokauppaamme</h1>'
'order_success_text' => '<h2>Kiitos tilauksestasi!</h2>
<p>Tilauksenne on vastaanotettu ja se käsitellään mahdollisimman pian. Tuotteet lähetetään tilauksessa ilmoittamaanne osoitteeseen.</p>'
'order_success_text_pickup' => '<h2>Kiitos tilauksestasi!</h2>
<p>Tilauksenne on vastaanotettu ja se käsitellään mahdollisimman pian. Saatte vielä erillisen ilmoituksen, kun tuotteet ovat noudettavissa.</p>'
'order_success_text_digital' => '<p>Tilaamaasi tuotteeseen liittyvät tiedostot ovat tämän viestin liitteenä.</p>'
'order_success_text_footer' => ''
'registration_text' => '<h2>Tervetuloa asiakkaaksemme!</h2>
<p>Kirjautuneena asiakkaana ostoskorisi toimitusosoite esitäydennetään automaattisesti ja voit nähdä tilaushistoriasi sekä seurata toimituksiasi.</p>'
'contact_text' => null
'partstream_text' => '<p>Voit etsiä varaosia alla olevan selaimen avulla. Selaimen avulla löydät kaikki alkuperäiset varaosat. </p>'
'maintenance_text' => null
'cookie_consent_title' => 'Käytämme evästeitä'
'cookie_consent_text' => '<p>Käytämme evästeitä sivuston toiminnan parantamiseksi sekä käyttäjätietojen anonyymiin seuraamiseen. Estämällä toiminnalliset evästeet rajoitat verkkokaupan käyttökokemustasi. Sallimalla kaikki evästeet autat meitä kehittämään sivustoa!</p><p>Voit muuttaa valitsemiasi asetuksia myöhemmin sivuston alalaidasta.</p>'
'voucher_email_limit_title' => null
'voucher_email_limit_text' => null
'voucher_email_first_title' => null
'voucher_email_first_text' => null
'created' => null
'modified' => null
'terms_of_use_text' => '<p>Hyväksyn sivuston käyttöehdot ja sallin henkilötietojeni tallennuksen tietokantaan sivuston käyttämiseksi. Yksilöiviä henkilötietoja ei luovuteta kolmannelle osapuolelle ilman erillistä sopimusta.</p>'
'stock_reminder_text' => 'Hyväksyn sähköpostiosoitteeni tallentamisen ilmoituksen lähettämiseksi. Sähköpostiosoitteesi poistetaan tiedoistamme automaattisesti, kun ilmoitus on lähetetty tai viimeistään 3kk kuluttua.'
'stock_reminder_email_title' => 'Tuotetta on taas saatavilla'
'stock_reminder_email_text' => null
'brand_text' => null
'email_pickup_title' => null
'email_pickup_text' => null
'sitewide_discount_name' => null
'attachment_group' => null
'[new]' => false
'[accessible]' => [
'*' => true,
]
'[dirty]' => [
]
'[original]' => [
]
'[originalFields]' => [
(int) 0 => 'id',
(int) 1 => 'name',
(int) 2 => 'name_client',
(int) 3 => 'locale',
(int) 4 => 'locale_short',
(int) 5 => 'locale_country',
(int) 6 => 'active',
(int) 7 => 'default_show',
(int) 8 => 'default_system',
(int) 9 => 'stock_text',
(int) 10 => 'stock_text_limit',
(int) 11 => 'stock_text_nostock',
(int) 12 => 'delivery_time',
(int) 13 => 'delivery_time_limit',
(int) 14 => 'delivery_time_nostock',
(int) 15 => 'sitemap_tags',
(int) 16 => 'main_text',
(int) 17 => 'order_success_text',
(int) 18 => 'order_success_text_pickup',
(int) 19 => 'order_success_text_digital',
(int) 20 => 'order_success_text_footer',
(int) 21 => 'registration_text',
(int) 22 => 'contact_text',
(int) 23 => 'partstream_text',
(int) 24 => 'maintenance_text',
(int) 25 => 'cookie_consent_title',
(int) 26 => 'cookie_consent_text',
(int) 27 => 'voucher_email_limit_title',
(int) 28 => 'voucher_email_limit_text',
(int) 29 => 'voucher_email_first_title',
(int) 30 => 'voucher_email_first_text',
(int) 31 => 'created',
(int) 32 => 'modified',
(int) 33 => 'terms_of_use_text',
(int) 34 => 'stock_reminder_text',
(int) 35 => 'stock_reminder_email_title',
(int) 36 => 'stock_reminder_email_text',
(int) 37 => 'brand_text',
(int) 38 => 'email_pickup_title',
(int) 39 => 'email_pickup_text',
(int) 40 => 'sitewide_discount_name',
(int) 41 => 'attachment_group',
]
'[virtual]' => [
]
'[hasErrors]' => false
'[errors]' => [
]
'[invalid]' => [
]
'[repository]' => 'Languages'
}
languages => [
(int) 0 => object(Cake\ORM\Entity) id: 1 {},
(int) 1 => object(Cake\ORM\Entity) id:2 {
},
]
menuallows => [
'client/index' => 'Client/index',
'cart/cartinit' => 'Cart/cartINIT',
'cart/updatecart' => 'Cart/updateCart',
'cart/removefromcart' => 'Cart/removeFromCart',
'cart/cartlink' => 'Cart/cartlink',
'cart/addtocart' => 'Cart/addToCart',
'client/clientadd' => 'Client/clientAdd',
'client/listtype' => 'Client/listtype',
'client/successoffer' => 'Client/successOffer',
'client/success' => 'Client/success',
'client/cancel' => 'Client/cancel',
'client/acceptoffer' => 'Client/acceptOffer',
'client/payment' => 'Client/payment',
'client/clientedit' => 'Client/clientEdit',
'client/page' => 'Client/page',
'client/clientorder' => 'Client/clientOrder',
'client/voucher' => 'Client/voucher',
'client/activatepassword' => 'Client/activatePassword',
'client/resetpassword' => 'Client/resetPassword',
'client/ajaxcountry' => 'Client/ajaxCountry',
'client/ajaxvat' => 'Client/ajaxVat',
'client/ajaxsearchresults' => 'Client/ajaxSearchResults',
'client/searchresults' => 'Client/searchResults',
'client/search' => 'Client/search',
'client/view' => 'Client/view',
'client/rerouter' => 'Client/rerouter',
'client/ajaxgetcategories' => 'Client/ajaxGetCategories',
'client/arraymsort' => 'Client/arrayMsort',
'client/ajaxpaymentmethods' => 'Client/ajaxPaymentMethods',
'client/ajaxdeliverymethods' => 'Client/ajaxDeliveryMethods',
'client/order' => 'Client/order',
'client/checkout' => 'Client/checkout',
'client/acceptstep3' => 'Client/acceptStep3',
'client/acceptstep2' => 'Client/acceptStep2',
'client/makeoffer' => 'Client/makeOffer',
'client/makeorder' => 'Client/makeOrder',
'client/accept' => 'Client/accept',
'client/autocomplete' => 'Client/autocomplete',
'client/ajaxgetstock' => 'Client/ajaxGetStock',
'users/login' => 'Users/login',
'users/logout' => 'Users/logout',
'client/main' => 'Client/main',
'cart/recover' => 'Cart/recover',
'client/ajaxgetpopup' => 'Client/ajaxGetPopup',
'client/login' => 'Client/login',
'client/news' => 'Client/news',
'client/contact' => 'Client/contact',
'client/paypaypal' => 'Client/payPaypal',
'client/iframe' => 'Client/iframe',
'client/paybambora' => 'Client/payBambora',
'client/blackhole' => 'Client/blackhole',
'apis/products' => 'Apis/products',
'client/filters' => 'Client/filters',
'client/wiki' => 'Client/wiki',
'client/partfinder' => 'Client/partfinder',
'cart/partfinder' => 'Cart/partfinder',
'client/ajaxktm' => 'Client/ajaxKtm',
'client/selectktm' => 'Client/selectKtm',
'client/removektm' => 'Client/removeKtm',
'categories/savelink' => 'Categories/saveLink',
'client/campaign' => 'Client/campaign',
'client/cookies' => 'Client/cookies',
'client/ajaxredirect' => 'Client/ajaxRedirect',
'client/changepassword' => 'Client/changePassword',
]
carttotals => [
'only_offer_request' => false,
'weight' => (int) 0,
'total' => (int) 0,
'total_novat' => '0.00',
'quantity' => (int) 0,
]
banner_popup_all => null
banner_popup_cart => null
protected name => 'Client'
protected request => object(Cake\Http\ServerRequest) id:3 {
trustProxy => false
protected params => [
'' => [maximum depth reached],
]
protected data => [
'' => [maximum depth reached],
]
protected query => [
'' => [maximum depth reached],
]
protected cookies => [
'' => [maximum depth reached],
]
protected _environment => [
'' => [maximum depth reached],
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
'' => [maximum depth reached],
]
protected _detectors => [
'' => [maximum depth reached],
]
protected _detectorCache => [
'' => [maximum depth reached],
]
protected stream => object(Laminas\Diactoros\Stream) id:4 {
}
protected uri => object(Laminas\Diactoros\Uri) id:5 {
}
protected session => object(Cake\Http\Session) id:6 {
}
protected flash => object(Cake\Http\FlashMessage) id:7 {
}
protected attributes => [
'' => [maximum depth reached],
]
protected emulatedAttributes => [
'' => [maximum depth reached],
]
protected uploadedFiles => [
'' => [maximum depth reached],
]
protected protocol => null
protected requestTarget => null
}
protected response => object(Cake\Http\Response) id:8 {
'status' => (int) 200
'contentType' => 'text/html'
'headers' => [
'Content-Type' => [
'' => [maximum depth reached],
],
]
'file' => null
'fileRange' => [
]
'cookies' => object(Cake\Http\Cookie\CookieCollection) id:9 {
}
'cacheDirectives' => [
]
'body' => ''
}
protected paginate => [
]
protected autoRender => false
protected _components => object(Cake\Controller\ComponentRegistry) id:10 {
'_loaded' => [
(int) 0 => 'Flash',
(int) 1 => 'FormProtection',
(int) 2 => 'Authentication',
]
'_Controller' => object(App\Controller\ClientController) id: 0 {}
'container' => object(Cake\Core\Container) id:11 {
}
'_eventManager' => object(Cake\Event\EventManager) id:12 {
}
'_eventClass' => 'Cake\Event\Event'
}
protected plugin => null
protected middlewares => [
]
protected viewClasses => [
]
protected _eventManager => object(Cake\Event\EventManager) id: 12 {}
protected _eventClass => 'Cake\Event\Event'
protected defaultTable => 'Client'
protected _tableLocator => object(Cake\ORM\Locator\TableLocator) id:13 {
protected locations => [
'' => [maximum depth reached],
]
protected _config => [
'' => [maximum depth reached],
]
protected instances => [
'' => [maximum depth reached],
]
protected _fallbacked => [
'' => [maximum depth reached],
]
protected fallbackClassName => 'Cake\ORM\Table'
protected allowFallbackClass => false
protected queryFactory => object(Cake\ORM\Query\QueryFactory) id:14 {
}
protected options => [
'' => [maximum depth reached],
]
}
protected _viewBuilder => object(Cake\View\ViewBuilder) id:15 {
protected _templatePath => 'Client'
protected _template => null
protected _plugin => null
protected _theme => 'Vtwincity'
protected _layout => null
protected _autoLayout => true
protected _layoutPath => null
protected _name => null
protected _className => null
protected _options => [
'' => [maximum depth reached],
]
protected _helpers => [
'' => [maximum depth reached],
]
protected _vars => [
'' => [maximum depth reached],
]
}
private theme => 'Vtwincity'
}
-
|
return $middleware->process($request, $this);
|
|
}
|
|
|
|
if ($this->fallbackHandler) {
|
|
return $this->fallbackHandler->handle($request);
|
|
}
|
|
|
|
return new Response([
|
|
'body' => 'Middleware queue was exhausted without returning a response '
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'lang' => 'fi',
'slug' => 'pm_3_5_x_18_wheel_paramount',
'product_id' => '805955',
'pass' => [
(int) 0 => '805955',
],
'controller' => 'Client',
'action' => 'view',
'plugin' => null,
'_matchedRoute' => '/{lang}/{slug}-p-{product_id}',
'_ext' => null,
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
'HTTP_REFERER' => null,
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
'put' => false,
'post' => false,
'delete' => false,
'patch' => false,
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
'route' => object(Cake\Routing\Route\DashedRoute) id:7 {
},
'csrfToken' => 'cTP3eYRObj6LHP6xGK1jihW/EhJgbF9GnLh/Ddi/G1KZ275QAt+gp01PVOXt2zspP60S4amDH8IQpszWh/AYyRsnuJmVn4YxJox3IwJcOyOviUc/4Il5Zvy43zM2vpKQfHxh1NXuWhsLyXHTzbEq9Q==',
'identity' => null,
'authentication' => object(Authentication\AuthenticationService) id:8 {
},
'authenticationResult' => object(Authentication\Authenticator\Result) id:9 {
},
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
-
|
$request = $request->withAttribute('authentication', $service);
|
|
$request = $request->withAttribute('authenticationResult', $result);
|
|
|
|
try {
|
|
$response = $handler->handle($request);
|
|
$authenticator = $service->getAuthenticationProvider();
|
|
|
|
if ($authenticator !== null && !$authenticator instanceof StatelessInterface) {
|
|
/**
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'lang' => 'fi',
'slug' => 'pm_3_5_x_18_wheel_paramount',
'product_id' => '805955',
'pass' => [
(int) 0 => '805955',
],
'controller' => 'Client',
'action' => 'view',
'plugin' => null,
'_matchedRoute' => '/{lang}/{slug}-p-{product_id}',
'_ext' => null,
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
'HTTP_REFERER' => null,
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
'put' => false,
'post' => false,
'delete' => false,
'patch' => false,
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
'route' => object(Cake\Routing\Route\DashedRoute) id:7 {
},
'csrfToken' => 'cTP3eYRObj6LHP6xGK1jihW/EhJgbF9GnLh/Ddi/G1KZ275QAt+gp01PVOXt2zspP60S4amDH8IQpszWh/AYyRsnuJmVn4YxJox3IwJcOyOviUc/4Il5Zvy43zM2vpKQfHxh1NXuWhsLyXHTzbEq9Q==',
'identity' => null,
'authentication' => object(Authentication\AuthenticationService) id:8 {
},
'authenticationResult' => object(Authentication\Authenticator\Result) id:9 {
},
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
-
|
if ($this->queue->valid()) {
|
|
$middleware = $this->queue->current();
|
|
$this->queue->next();
|
|
|
|
return $middleware->process($request, $this);
|
|
}
|
|
|
|
if ($this->fallbackHandler) {
|
|
return $this->fallbackHandler->handle($request);
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'lang' => 'fi',
'slug' => 'pm_3_5_x_18_wheel_paramount',
'product_id' => '805955',
'pass' => [
(int) 0 => '805955',
],
'controller' => 'Client',
'action' => 'view',
'plugin' => null,
'_matchedRoute' => '/{lang}/{slug}-p-{product_id}',
'_ext' => null,
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
'HTTP_REFERER' => null,
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
'put' => false,
'post' => false,
'delete' => false,
'patch' => false,
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
'route' => object(Cake\Routing\Route\DashedRoute) id:7 {
},
'csrfToken' => 'cTP3eYRObj6LHP6xGK1jihW/EhJgbF9GnLh/Ddi/G1KZ275QAt+gp01PVOXt2zspP60S4amDH8IQpszWh/AYyRsnuJmVn4YxJox3IwJcOyOviUc/4Il5Zvy43zM2vpKQfHxh1NXuWhsLyXHTzbEq9Q==',
'identity' => null,
'authentication' => object(Authentication\AuthenticationService) id:8 {
},
'authenticationResult' => object(Authentication\Authenticator\Result) id:9 {
},
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
object(Cake\Http\Runner) id:0 {
protected queue => object(Cake\Http\MiddlewareQueue) id:1 {
protected position => (int) 8
protected queue => [
'' => [maximum depth reached],
]
protected container => object(Cake\Core\Container) id:2 {
}
}
protected fallbackHandler => object(App\Application) id:3 {
protected configDir => '/srv/vtwincity.fi/public/verkkokauppa/config/'
protected plugins => object(Cake\Core\PluginCollection) id:4 {
}
protected controllerFactory => object(Cake\Controller\ControllerFactory) id:5 {
}
protected container => object(Cake\Core\Container) id: 2 {}
protected _eventManager => object(Cake\Event\EventManager) id:6 {
}
protected _eventClass => 'Cake\Event\Event'
}
}
-
|
|
|
if ($method === 'GET' && $cookieData === null) {
|
|
$token = $this->createToken();
|
|
$request = $request->withAttribute('csrfToken', $this->saltToken($token));
|
|
$response = $handler->handle($request);
|
|
|
|
return $this->_addTokenCookie($token, $request, $response);
|
|
}
|
|
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'lang' => 'fi',
'slug' => 'pm_3_5_x_18_wheel_paramount',
'product_id' => '805955',
'pass' => [
(int) 0 => '805955',
],
'controller' => 'Client',
'action' => 'view',
'plugin' => null,
'_matchedRoute' => '/{lang}/{slug}-p-{product_id}',
'_ext' => null,
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
'route' => object(Cake\Routing\Route\DashedRoute) id:7 {
},
'csrfToken' => 'cTP3eYRObj6LHP6xGK1jihW/EhJgbF9GnLh/Ddi/G1KZ275QAt+gp01PVOXt2zspP60S4amDH8IQpszWh/AYyRsnuJmVn4YxJox3IwJcOyOviUc/4Il5Zvy43zM2vpKQfHxh1NXuWhsLyXHTzbEq9Q==',
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
-
|
if ($this->queue->valid()) {
|
|
$middleware = $this->queue->current();
|
|
$this->queue->next();
|
|
|
|
return $middleware->process($request, $this);
|
|
}
|
|
|
|
if ($this->fallbackHandler) {
|
|
return $this->fallbackHandler->handle($request);
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'lang' => 'fi',
'slug' => 'pm_3_5_x_18_wheel_paramount',
'product_id' => '805955',
'pass' => [
(int) 0 => '805955',
],
'controller' => 'Client',
'action' => 'view',
'plugin' => null,
'_matchedRoute' => '/{lang}/{slug}-p-{product_id}',
'_ext' => null,
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
'route' => object(Cake\Routing\Route\DashedRoute) id:7 {
},
'csrfToken' => 'cTP3eYRObj6LHP6xGK1jihW/EhJgbF9GnLh/Ddi/G1KZ275QAt+gp01PVOXt2zspP60S4amDH8IQpszWh/AYyRsnuJmVn4YxJox3IwJcOyOviUc/4Il5Zvy43zM2vpKQfHxh1NXuWhsLyXHTzbEq9Q==',
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
object(Cake\Http\Runner) id:0 {
protected queue => object(Cake\Http\MiddlewareQueue) id:1 {
protected position => (int) 8
protected queue => [
'' => [maximum depth reached],
]
protected container => object(Cake\Core\Container) id:2 {
}
}
protected fallbackHandler => object(App\Application) id:3 {
protected configDir => '/srv/vtwincity.fi/public/verkkokauppa/config/'
protected plugins => object(Cake\Core\PluginCollection) id:4 {
}
protected controllerFactory => object(Cake\Controller\ControllerFactory) id:5 {
}
protected container => object(Cake\Core\Container) id: 2 {}
protected _eventManager => object(Cake\Event\EventManager) id:6 {
}
protected _eventClass => 'Cake\Event\Event'
}
}
-
|
*/
|
|
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
|
|
{
|
|
if (!in_array($request->getMethod(), $this->methods, true)) {
|
|
return $handler->handle($request);
|
|
}
|
|
[$type] = explode(';', $request->getHeaderLine('Content-Type'));
|
|
$type = strtolower($type);
|
|
if (!isset($this->parsers[$type])) {
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'lang' => 'fi',
'slug' => 'pm_3_5_x_18_wheel_paramount',
'product_id' => '805955',
'pass' => [
(int) 0 => '805955',
],
'controller' => 'Client',
'action' => 'view',
'plugin' => null,
'_matchedRoute' => '/{lang}/{slug}-p-{product_id}',
'_ext' => null,
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
'route' => object(Cake\Routing\Route\DashedRoute) id:7 {
},
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
-
|
if ($this->queue->valid()) {
|
|
$middleware = $this->queue->current();
|
|
$this->queue->next();
|
|
|
|
return $middleware->process($request, $this);
|
|
}
|
|
|
|
if ($this->fallbackHandler) {
|
|
return $this->fallbackHandler->handle($request);
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'lang' => 'fi',
'slug' => 'pm_3_5_x_18_wheel_paramount',
'product_id' => '805955',
'pass' => [
(int) 0 => '805955',
],
'controller' => 'Client',
'action' => 'view',
'plugin' => null,
'_matchedRoute' => '/{lang}/{slug}-p-{product_id}',
'_ext' => null,
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
'route' => object(Cake\Routing\Route\DashedRoute) id:7 {
},
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
object(Cake\Http\Runner) id:0 {
protected queue => object(Cake\Http\MiddlewareQueue) id:1 {
protected position => (int) 8
protected queue => [
'' => [maximum depth reached],
]
protected container => object(Cake\Core\Container) id:2 {
}
}
protected fallbackHandler => object(App\Application) id:3 {
protected configDir => '/srv/vtwincity.fi/public/verkkokauppa/config/'
protected plugins => object(Cake\Core\PluginCollection) id:4 {
}
protected controllerFactory => object(Cake\Controller\ControllerFactory) id:5 {
}
protected container => object(Cake\Core\Container) id: 2 {}
protected _eventManager => object(Cake\Event\EventManager) id:6 {
}
protected _eventClass => 'Cake\Event\Event'
}
}
-
|
);
|
|
}
|
|
$matching = Router::getRouteCollection()->getMiddleware($middleware);
|
|
if (!$matching) {
|
|
return $handler->handle($request);
|
|
}
|
|
|
|
$container = $this->app instanceof ContainerApplicationInterface
|
|
? $this->app->getContainer()
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'lang' => 'fi',
'slug' => 'pm_3_5_x_18_wheel_paramount',
'product_id' => '805955',
'pass' => [
(int) 0 => '805955',
],
'controller' => 'Client',
'action' => 'view',
'plugin' => null,
'_matchedRoute' => '/{lang}/{slug}-p-{product_id}',
'_ext' => null,
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
'route' => object(Cake\Routing\Route\DashedRoute) id:7 {
},
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
-
|
if ($this->queue->valid()) {
|
|
$middleware = $this->queue->current();
|
|
$this->queue->next();
|
|
|
|
return $middleware->process($request, $this);
|
|
}
|
|
|
|
if ($this->fallbackHandler) {
|
|
return $this->fallbackHandler->handle($request);
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'lang' => 'fi',
'slug' => 'pm_3_5_x_18_wheel_paramount',
'product_id' => '805955',
'pass' => [
(int) 0 => '805955',
],
'controller' => 'Client',
'action' => 'view',
'plugin' => null,
'_matchedRoute' => '/{lang}/{slug}-p-{product_id}',
'_ext' => null,
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
'route' => object(Cake\Routing\Route\DashedRoute) id:7 {
},
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
object(Cake\Http\Runner) id:0 {
protected queue => object(Cake\Http\MiddlewareQueue) id:1 {
protected position => (int) 8
protected queue => [
'' => [maximum depth reached],
]
protected container => object(Cake\Core\Container) id:2 {
}
}
protected fallbackHandler => object(App\Application) id:3 {
protected configDir => '/srv/vtwincity.fi/public/verkkokauppa/config/'
protected plugins => object(Cake\Core\PluginCollection) id:4 {
}
protected controllerFactory => object(Cake\Controller\ControllerFactory) id:5 {
}
protected container => object(Cake\Core\Container) id: 2 {}
protected _eventManager => object(Cake\Event\EventManager) id:6 {
}
protected _eventClass => 'Cake\Event\Event'
}
}
-
|
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
|
|
{
|
|
$url = $request->getUri()->getPath();
|
|
if (str_contains($url, '..') || !str_contains($url, '.')) {
|
|
return $handler->handle($request);
|
|
}
|
|
|
|
if (str_contains($url, '/.')) {
|
|
return $handler->handle($request);
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'plugin' => null,
'controller' => null,
'action' => null,
'_ext' => null,
'pass' => [
],
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
-
|
if ($this->queue->valid()) {
|
|
$middleware = $this->queue->current();
|
|
$this->queue->next();
|
|
|
|
return $middleware->process($request, $this);
|
|
}
|
|
|
|
if ($this->fallbackHandler) {
|
|
return $this->fallbackHandler->handle($request);
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'plugin' => null,
'controller' => null,
'action' => null,
'_ext' => null,
'pass' => [
],
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
object(Cake\Http\Runner) id:0 {
protected queue => object(Cake\Http\MiddlewareQueue) id:1 {
protected position => (int) 8
protected queue => [
'' => [maximum depth reached],
]
protected container => object(Cake\Core\Container) id:2 {
}
}
protected fallbackHandler => object(App\Application) id:3 {
protected configDir => '/srv/vtwincity.fi/public/verkkokauppa/config/'
protected plugins => object(Cake\Core\PluginCollection) id:4 {
}
protected controllerFactory => object(Cake\Controller\ControllerFactory) id:5 {
}
protected container => object(Cake\Core\Container) id: 2 {}
protected _eventManager => object(Cake\Event\EventManager) id:6 {
}
protected _eventClass => 'Cake\Event\Event'
}
}
-
|
|
|
// Make sure the request looks like an asset.
|
|
$targetName = $this->getName($config, $request->getUri()->getPath());
|
|
if (!$targetName) {
|
|
return $handler->handle($request);
|
|
}
|
|
|
|
$queryParams = $request->getQueryParams();
|
|
if (isset($queryParams['theme'])) {
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'plugin' => null,
'controller' => null,
'action' => null,
'_ext' => null,
'pass' => [
],
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
-
|
if ($this->queue->valid()) {
|
|
$middleware = $this->queue->current();
|
|
$this->queue->next();
|
|
|
|
return $middleware->process($request, $this);
|
|
}
|
|
|
|
if ($this->fallbackHandler) {
|
|
return $this->fallbackHandler->handle($request);
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'plugin' => null,
'controller' => null,
'action' => null,
'_ext' => null,
'pass' => [
],
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
object(Cake\Http\Runner) id:0 {
protected queue => object(Cake\Http\MiddlewareQueue) id:1 {
protected position => (int) 8
protected queue => [
'' => [maximum depth reached],
]
protected container => object(Cake\Core\Container) id:2 {
}
}
protected fallbackHandler => object(App\Application) id:3 {
protected configDir => '/srv/vtwincity.fi/public/verkkokauppa/config/'
protected plugins => object(Cake\Core\PluginCollection) id:4 {
}
protected controllerFactory => object(Cake\Controller\ControllerFactory) id:5 {
}
protected container => object(Cake\Core\Container) id: 2 {}
protected _eventManager => object(Cake\Event\EventManager) id:6 {
}
protected _eventClass => 'Cake\Event\Event'
}
}
-
|
*/
|
|
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
|
|
{
|
|
try {
|
|
return $handler->handle($request);
|
|
} catch (RedirectException $exception) {
|
|
return $this->handleRedirect($exception);
|
|
} catch (Throwable $exception) {
|
|
return $this->handleException($exception, Router::getRequest() ?? $request);
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'plugin' => null,
'controller' => null,
'action' => null,
'_ext' => null,
'pass' => [
],
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
-
|
if ($this->queue->valid()) {
|
|
$middleware = $this->queue->current();
|
|
$this->queue->next();
|
|
|
|
return $middleware->process($request, $this);
|
|
}
|
|
|
|
if ($this->fallbackHandler) {
|
|
return $this->fallbackHandler->handle($request);
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'plugin' => null,
'controller' => null,
'action' => null,
'_ext' => null,
'pass' => [
],
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
object(Cake\Http\Runner) id:0 {
protected queue => object(Cake\Http\MiddlewareQueue) id:1 {
protected position => (int) 8
protected queue => [
'' => [maximum depth reached],
]
protected container => object(Cake\Core\Container) id:2 {
}
}
protected fallbackHandler => object(App\Application) id:3 {
protected configDir => '/srv/vtwincity.fi/public/verkkokauppa/config/'
protected plugins => object(Cake\Core\PluginCollection) id:4 {
}
protected controllerFactory => object(Cake\Controller\ControllerFactory) id:5 {
}
protected container => object(Cake\Core\Container) id: 2 {}
protected _eventManager => object(Cake\Event\EventManager) id:6 {
}
protected _eventClass => 'Cake\Event\Event'
}
}
-
|
if ($this->service->isEnabled()) {
|
|
$this->service->loadPanels();
|
|
$this->service->initializePanels();
|
|
}
|
|
$response = $handler->handle($request);
|
|
|
|
if (!$this->service->isEnabled()) {
|
|
return $response;
|
|
}
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'plugin' => null,
'controller' => null,
'action' => null,
'_ext' => null,
'pass' => [
],
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
-
|
if ($this->queue->valid()) {
|
|
$middleware = $this->queue->current();
|
|
$this->queue->next();
|
|
|
|
return $middleware->process($request, $this);
|
|
}
|
|
|
|
if ($this->fallbackHandler) {
|
|
return $this->fallbackHandler->handle($request);
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'plugin' => null,
'controller' => null,
'action' => null,
'_ext' => null,
'pass' => [
],
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
object(Cake\Http\Runner) id:0 {
protected queue => object(Cake\Http\MiddlewareQueue) id:1 {
protected position => (int) 8
protected queue => [
'' => [maximum depth reached],
]
protected container => object(Cake\Core\Container) id:2 {
}
}
protected fallbackHandler => object(App\Application) id:3 {
protected configDir => '/srv/vtwincity.fi/public/verkkokauppa/config/'
protected plugins => object(Cake\Core\PluginCollection) id:4 {
}
protected controllerFactory => object(Cake\Controller\ControllerFactory) id:5 {
}
protected container => object(Cake\Core\Container) id: 2 {}
protected _eventManager => object(Cake\Event\EventManager) id:6 {
}
protected _eventClass => 'Cake\Event\Event'
}
}
-
|
$this->queue = $queue;
|
|
$this->queue->rewind();
|
|
$this->fallbackHandler = $fallbackHandler;
|
|
|
|
return $this->handle($request);
|
|
}
|
|
|
|
/**
|
|
* Handle incoming server request and return a response.
|
Toggle Arguments
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'plugin' => null,
'controller' => null,
'action' => null,
'_ext' => null,
'pass' => [
],
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
-
|
}
|
|
|
|
$this->dispatchEvent('Server.buildMiddleware', ['middleware' => $middleware]);
|
|
|
|
$response = $this->runner->run($middleware, $request, $this->app);
|
|
|
|
if ($request instanceof ServerRequest) {
|
|
$request->getSession()->close();
|
|
}
|
Toggle Arguments
object(Cake\Http\MiddlewareQueue) id:0 {
protected position => (int) 8
protected queue => [
(int) 0 => object(DebugKit\Middleware\DebugKitMiddleware) id:1 {
},
(int) 1 => object(Cake\Error\Middleware\ErrorHandlerMiddleware) id:2 {
},
(int) 2 => object(AssetCompress\Middleware\AssetCompressMiddleware) id:3 {
},
(int) 3 => object(Cake\Routing\Middleware\AssetMiddleware) id:4 {
},
(int) 4 => object(Cake\Routing\Middleware\RoutingMiddleware) id:5 {
},
(int) 5 => object(Cake\Http\Middleware\BodyParserMiddleware) id:6 {
},
(int) 6 => object(Cake\Http\Middleware\CsrfProtectionMiddleware) id:7 {
},
(int) 7 => object(Authentication\Middleware\AuthenticationMiddleware) id:8 {
},
]
protected container => object(Cake\Core\Container) id:9 {
protected defaultToShared => false
protected definitions => object(League\Container\Definition\DefinitionAggregate) id:10 {
}
protected providers => object(League\Container\ServiceProvider\ServiceProviderAggregate) id:11 {
}
protected inflectors => object(League\Container\Inflector\InflectorAggregate) id:12 {
}
protected delegates => [
'' => [maximum depth reached],
]
}
}
object(Cake\Http\ServerRequest) id:0 {
trustProxy => false
protected params => [
'plugin' => null,
'controller' => null,
'action' => null,
'_ext' => null,
'pass' => [
],
]
protected data => [
]
protected query => [
]
protected cookies => [
]
protected _environment => [
'USER' => 'vtwincity',
'HOME' => '/home/vtwincity',
'HTTP_CF_IPCOUNTRY' => 'US',
'HTTP_CF_CONNECTING_IP' => '216.73.216.110',
'HTTP_CDN_LOOP' => 'cloudflare; loops=1',
'HTTP_X_FORWARDED_PROTO' => 'https',
'HTTP_X_FORWARDED_FOR' => '216.73.216.110',
'HTTP_USER_AGENT' => 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)',
'HTTP_ACCEPT_ENCODING' => 'gzip, br',
'HTTP_ACCEPT' => '*/*',
'HTTP_CF_RAY' => '95be3bd52a13ef30-FRA',
'HTTP_CF_VISITOR' => '{"scheme":"https"}',
'HTTP_HOST' => 'vtwincity-automatik-01.trimedia.app',
'REDIRECT_STATUS' => '200',
'SERVER_NAME' => 'vtwincity-automatik-01.trimedia.app',
'SERVER_PORT' => '443',
'SERVER_ADDR' => '46.101.209.213',
'REMOTE_PORT' => '48368',
'REMOTE_ADDR' => '172.71.246.136',
'SERVER_SOFTWARE' => 'nginx/1.27.5',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'HTTPS' => 'on',
'REQUEST_SCHEME' => 'https',
'SERVER_PROTOCOL' => 'HTTP/2.0',
'DOCUMENT_ROOT' => '/srv/vtwincity.fi/public',
'DOCUMENT_URI' => '/verkkokauppa/index.php',
'REQUEST_URI' => '/verkkokauppa/fi/pm_3_5_x_18_wheel_paramount-p-805955',
'SCRIPT_NAME' => '/verkkokauppa/index.php',
'CONTENT_LENGTH' => '',
'CONTENT_TYPE' => '',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'SCRIPT_FILENAME' => '/srv/vtwincity.fi/public/verkkokauppa/index.php',
'PATH_TRANSLATED' => '/srv/vtwincity.fi/public',
'PATH_INFO' => '',
'FCGI_ROLE' => 'RESPONDER',
'PHP_SELF' => '/verkkokauppa/index.php',
'REQUEST_TIME_FLOAT' => (float) 1751963574.6682,
'REQUEST_TIME' => (int) 1751963574,
'ORIGINAL_REQUEST_METHOD' => 'GET',
]
protected base => '/verkkokauppa'
protected webroot => '/verkkokauppa/'
protected trustedProxies => [
]
protected _detectors => [
'get' => [
'env' => 'REQUEST_METHOD',
'value' => 'GET',
],
'post' => [
'env' => 'REQUEST_METHOD',
'value' => 'POST',
],
'put' => [
'env' => 'REQUEST_METHOD',
'value' => 'PUT',
],
'patch' => [
'env' => 'REQUEST_METHOD',
'value' => 'PATCH',
],
'delete' => [
'env' => 'REQUEST_METHOD',
'value' => 'DELETE',
],
'head' => [
'env' => 'REQUEST_METHOD',
'value' => 'HEAD',
],
'options' => [
'env' => 'REQUEST_METHOD',
'value' => 'OPTIONS',
],
'https' => [
'env' => 'HTTPS',
'options' => [
'' => [maximum depth reached],
],
],
'ajax' => [
'env' => 'HTTP_X_REQUESTED_WITH',
'value' => 'XMLHttpRequest',
],
'json' => [
'accept' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'json',
],
'xml' => [
'accept' => [
'' => [maximum depth reached],
],
'exclude' => [
'' => [maximum depth reached],
],
'param' => '_ext',
'value' => 'xml',
],
'mobile' => object(Closure) id:1 {
},
'tablet' => object(Closure) id:2 {
},
]
protected _detectorCache => [
]
protected stream => object(Laminas\Diactoros\Stream) id:3 {
protected resource => (resource (stream)) Resource id #5
protected stream => 'php://input'
}
protected uri => object(Laminas\Diactoros\Uri) id:4 {
protected allowedSchemes => [
'' => [maximum depth reached],
]
private scheme => 'https'
private userInfo => ''
private host => 'vtwincity-automatik-01.trimedia.app'
private port => null
private path => '/fi/pm_3_5_x_18_wheel_paramount-p-805955'
private query => ''
private fragment => ''
private uriString => null
}
protected session => object(Cake\Http\Session) id:5 {
protected _engine => null
protected _started => false
protected _lifetime => (int) 36288000
protected _isCLI => false
protected headerSentInfo => [
'' => [maximum depth reached],
]
}
protected flash => object(Cake\Http\FlashMessage) id:6 {
protected _defaultConfig => [
'' => [maximum depth reached],
]
protected session => object(Cake\Http\Session) id: 5 {}
protected _config => [
'' => [maximum depth reached],
]
protected _configInitialized => true
}
protected attributes => [
]
protected emulatedAttributes => [
(int) 0 => 'session',
(int) 1 => 'flash',
(int) 2 => 'webroot',
(int) 3 => 'base',
(int) 4 => 'params',
(int) 5 => 'here',
]
protected uploadedFiles => [
]
protected protocol => null
protected requestTarget => null
}
object(App\Application) id:0 {
protected configDir => '/srv/vtwincity.fi/public/verkkokauppa/config/'
protected plugins => object(Cake\Core\PluginCollection) id:1 {
protected plugins => [
'' => [maximum depth reached],
]
protected names => [
'' => [maximum depth reached],
]
protected positions => [
'' => [maximum depth reached],
]
protected loopDepth => (int) -1
}
protected controllerFactory => object(Cake\Controller\ControllerFactory) id:2 {
protected container => object(Cake\Core\Container) id:3 {
}
protected controller => object(App\Controller\ClientController) id:4 {
}
}
protected container => object(Cake\Core\Container) id: 3 {}
protected _eventManager => object(Cake\Event\EventManager) id:5 {
'_listeners' => [
'Error.beforeRender' => '1 listener(s)',
'Controller.shutdown' => '15 listener(s)',
'Controller.initialize' => '3 listener(s)',
'Controller.startup' => '3 listener(s)',
'Controller.beforeRender' => '4 listener(s)',
'View.beforeRender' => '2 listener(s)',
'View.afterRender' => '2 listener(s)',
'View.beforeLayout' => '2 listener(s)',
'View.afterLayout' => '2 listener(s)',
'View.beforeRenderFile' => '1 listener(s)',
'View.afterRenderFile' => '1 listener(s)',
]
'_isGlobal' => true
'_trackEvents' => false
'_generalManager' => '(object) EventManager'
'_dispatchedEvents' => null
}
protected _eventClass => 'Cake\Event\Event'
}
-
|
// Bind your application to the server.
|
|
$server = new Server(new Application(dirname(__DIR__) . '/config'));
|
|
|
|
// Run the request/response through the application and emit the response.
|
|
$server->emit($server->run());
|
|
|
Toggle Arguments
-
|
* @link https://cakephp.org CakePHP(tm) Project
|
|
* @since 0.10.0
|
|
* @license https://opensource.org/licenses/mit-license.php MIT License
|
|
*/
|
|
require 'webroot' . DIRECTORY_SEPARATOR . 'index.php';
|
|
|
Toggle Arguments
'/srv/vtwincity.fi/public/verkkokauppa/webroot/index.php'
-
If you want to customize this error message, create
templates/Error/error500.php