42 lines
1.3 KiB
PHP
42 lines
1.3 KiB
PHP
<?php
|
|
|
|
$umamiHost = 'https://stats.apps.coryd.dev';
|
|
$requestUri = $_SERVER['REQUEST_URI'];
|
|
$method = $_SERVER['REQUEST_METHOD'];
|
|
$targetUrl = $umamiHost . $requestUri;
|
|
$headers = [
|
|
'Content-Type: application/json',
|
|
'Accept: application/json',
|
|
];
|
|
$ch = curl_init($targetUrl);
|
|
|
|
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
|
|
|
|
if (isset($_SERVER['HTTP_USER_AGENT'])) $headers[] = 'User-Agent: ' . $_SERVER['HTTP_USER_AGENT'];
|
|
|
|
if ($method === 'POST') {
|
|
$body = file_get_contents('php://input');
|
|
$data = json_decode($body, true);
|
|
|
|
if (strpos($requestUri, '/api/send') === 0 && is_array($data)) {
|
|
$data['payload']['ip'] = $_SERVER['REMOTE_ADDR'] ?? '0.0.0.0';
|
|
$data['payload']['website'] = 'a30f4735-6c27-4761-b180-a8f247a4a3a3';
|
|
}
|
|
|
|
curl_setopt($ch, CURLOPT_POST, true);
|
|
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
|
|
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
|
|
} else {
|
|
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
|
|
}
|
|
|
|
$response = curl_exec($ch);
|
|
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
|
|
$contentType = curl_getinfo($ch, CURLINFO_CONTENT_TYPE);
|
|
|
|
curl_close($ch);
|
|
http_response_code($httpCode);
|
|
|
|
if ($contentType) header("Content-Type: $contentType");
|
|
|
|
echo $response ?: '';
|