SharedInboxController
Request
GET Parameters
None
POST Parameters
None
Uploaded Files
None
Request Attributes
| Key | Value |
|---|---|
| _controller | "App\Controller\ActivityPub\SharedInboxController" |
| _firewall_context | "security.firewall.map.context.main" |
| _route | "ap_shared_inbox" |
| _route_params | [] |
| _security_firewall_run | "_security_main" |
| _stopwatch_token | "bdfcc6" |
Request Headers
| Header | Value |
|---|---|
| accept | "*/*" |
| accept-encoding | "gzip" |
| content-length | "5176" |
| content-type | "application/activity+json" |
| date | "Sat, 01 Nov 2025 12:37:27 GMT" |
| digest | "SHA-256=4acB9Otzbr4Qyc9kxoM4SvRtLlatq660xCizg5ip+RY=" |
| host | "kbin.spritesserver.nl" |
| signature | "keyId="https://lemmy.world/c/homeassistant#main-key",algorithm="hs2019",headers="(request-target) content-type date digest host",signature="kgJlGUSSAjrqfORGMEa7BZz9j2xJeqJwv+1tazzGif01XZiHvTk08Ms7MlFfI72LOupTIQMGXwQqW5/yKjf2Ay1WXwSHIe1z4iIuIhPnkE1C7B3r9+Hox08Y9Y387yJmS/o5TQaFlRfDorr7iw82iVD1dSpOaarMiBLsbNgz+z+TxBu6xYo0gVX9RMBUCYWE0iG7pflZBcI63UZ6yv2Twqs5bQv4yWWrHmstdcwP7U8Y/rbzkSDTn2DugswccsYFJNJPo4kIMaZajXnRLWPu+nmn7xavPi2LWyNBZxsf95lM2SucHp06G9LaLFSmxJ1uzPSMswNVAjM3iIUedBMOIQ=="" |
| traceparent | "00-74da00d6ad6cac638c7a66903cdee0df-72f092b2ee85f7ed-01" |
| tracestate | "" |
| user-agent | "Lemmy/0.19.12-4-gd8445881a; +https://lemmy.world" |
| x-php-ob-level | "1" |
Request Content
Pretty
{
"@context": [
"https:\/\/join-lemmy.org\/context.json",
"https:\/\/www.w3.org\/ns\/activitystreams"
],
"actor": "https:\/\/lemmy.world\/c\/homeassistant",
"to": [
"https:\/\/www.w3.org\/ns\/activitystreams#Public"
],
"object": {
"id": "https:\/\/lemmy.blahaj.zone\/activities\/create\/db545ca3-8d0c-488f-9ed4-6b6b175a79c0",
"actor": "https:\/\/lemmy.blahaj.zone\/u\/Lyra_Lycan",
"@context": [
"https:\/\/join-lemmy.org\/context.json",
"https:\/\/www.w3.org\/ns\/activitystreams"
],
"to": [
"https:\/\/www.w3.org\/ns\/activitystreams#Public"
],
"object": {
"type": "Note",
"id": "https:\/\/lemmy.blahaj.zone\/comment\/17676041",
"attributedTo": "https:\/\/lemmy.blahaj.zone\/u\/Lyra_Lycan",
"to": [
"https:\/\/www.w3.org\/ns\/activitystreams#Public"
],
"cc": [
"https:\/\/lemmy.world\/c\/homeassistant",
"https:\/\/lemmy.world\/u\/njordomir"
],
"content": "<p>I use Proxmox, Reolink 810s, and I have AgentDVR logged into the cameras via https (443) to get info, and ONVIF (8000) for the stream. It takes a little tweaking via the camera app or web GUI if you want the onboard AI to omit large or small objects for screenshots or notifications, which I have controlled by HA. Here are the features I\u2019ve got:<\/p>\n<ul>\n<li>AgentDVR logged in to the cameras\u2019 admin account (definitely no Reolink account)<\/li>\n<li>Reolink cam rolling footage based on motion, on onboard MicroSD<\/li>\n<li>AgentDVR 24\/7 footage saving directly to a mounted high-capacity HDD<\/li>\n<li>Reolink cam, with detection, sends a screenshot with a configured naming format via FTP directly to Home Assistant\u2019s www folder (but this and notifications can be handled by either piece of the setup)<\/li>\n<li>Home Assistant monitors the folder with folder_watcher and an automation prepares to send my phone a notification (Fdroid - not Google) once the image has \u2018closed\u2019)<\/li>\n<li>I\u2019ve saved my <a href=\"https:\/\/github.com\/xlyralycanx\/Home-Assistant-x-Android-x-Reolink-notifications\" rel=\"nofollow\">automation script<\/a> in which HA does the screenshots instead of the Reolink cam<\/li>\n<li>My cameras are connected to my home WiFi but they can also connect to an NVR or a PC for a completely isolated link (you\u2019ll need a PoE injector, I use <a href=\"https:\/\/www.tp-link.com\/uk\/business-networking\/poe-switch\/tl-sg1005p\/\" rel=\"nofollow\">this<\/a> for up to 4 cameras).<\/li>\n<\/ul>\n<p>If you use the Reolink app, then it will use the Reolink servers afaik. I haven\u2019t checked traffic on the cameras yet. It can be fully offline but I choose not to for a better remote experience using the app.<\/p>\n<p>I set them up a long time ago, scanning a QR code on the camera using the Reolink app. I don\u2019t know if it can be handled another way.<\/p>\n",
"inReplyTo": "https:\/\/lemmy.world\/post\/38165859",
"mediaType": "text\/html",
"source": {
"content": "I use Proxmox, Reolink 810s, and I have AgentDVR logged into the cameras via https (443) to get info, and ONVIF (8000) for the stream. It takes a little tweaking via the camera app or web GUI if you want the onboard AI to omit large or small objects for screenshots or notifications, which I have controlled by HA. Here are the features I've got:\n\n- AgentDVR logged in to the cameras' admin account (definitely no Reolink account)\n- Reolink cam rolling footage based on motion, on onboard MicroSD\n- AgentDVR 24\/7 footage saving directly to a mounted high-capacity HDD\n- Reolink cam, with detection, sends a screenshot with a configured naming format via FTP directly to Home Assistant's www folder (but this and notifications can be handled by either piece of the setup)\n- Home Assistant monitors the folder with folder_watcher and an automation prepares to send my phone a notification (Fdroid - not Google) once the image has 'closed')\n- I've saved my [automation script](https:\/\/github.com\/xlyralycanx\/Home-Assistant-x-Android-x-Reolink-notifications) in which HA does the screenshots instead of the Reolink cam\n- My cameras are connected to my home WiFi but they can also connect to an NVR or a PC for a completely isolated link (you'll need a PoE injector, I use [this](https:\/\/www.tp-link.com\/uk\/business-networking\/poe-switch\/tl-sg1005p\/) for up to 4 cameras).\n\n\nIf you use the Reolink app, then it will use the Reolink servers afaik. I haven't checked traffic on the cameras yet. It can be fully offline but I choose not to for a better remote experience using the app.\n\nI set them up a long time ago, scanning a QR code on the camera using the Reolink app. I don't know if it can be handled another way.",
"mediaType": "text\/markdown"
},
"published": "2025-11-01T12:37:02.571935Z",
"tag": [
{
"href": "https:\/\/lemmy.world\/u\/njordomir",
"name": "@njordomir@lemmy.world",
"type": "Mention"
}
],
"distinguished": false,
"language": {
"identifier": "en",
"name": "English"
},
"audience": "https:\/\/lemmy.world\/c\/homeassistant",
"attachment": []
},
"cc": [
"https:\/\/lemmy.world\/c\/homeassistant",
"https:\/\/lemmy.world\/u\/njordomir"
],
"tag": [
{
"href": "https:\/\/lemmy.world\/u\/njordomir",
"name": "@njordomir@lemmy.world",
"type": "Mention"
}
],
"type": "Create",
"audience": "https:\/\/lemmy.world\/c\/homeassistant"
},
"cc": [
"https:\/\/lemmy.world\/c\/homeassistant\/followers"
],
"type": "Announce",
"id": "https:\/\/lemmy.world\/activities\/announce\/create\/83cf0034-a9ea-42f3-81a1-81a86a17fb4d"
}
Raw
{"@context":["https://join-lemmy.org/context.json","https://www.w3.org/ns/activitystreams"],"actor":"https://lemmy.world/c/homeassistant","to":["https://www.w3.org/ns/activitystreams#Public"],"object":{"id":"https://lemmy.blahaj.zone/activities/create/db545ca3-8d0c-488f-9ed4-6b6b175a79c0","actor":"https://lemmy.blahaj.zone/u/Lyra_Lycan","@context":["https://join-lemmy.org/context.json","https://www.w3.org/ns/activitystreams"],"to":["https://www.w3.org/ns/activitystreams#Public"],"object":{"type":"Note","id":"https://lemmy.blahaj.zone/comment/17676041","attributedTo":"https://lemmy.blahaj.zone/u/Lyra_Lycan","to":["https://www.w3.org/ns/activitystreams#Public"],"cc":["https://lemmy.world/c/homeassistant","https://lemmy.world/u/njordomir"],"content":"<p>I use Proxmox, Reolink 810s, and I have AgentDVR logged into the cameras via https (443) to get info, and ONVIF (8000) for the stream. It takes a little tweaking via the camera app or web GUI if you want the onboard AI to omit large or small objects for screenshots or notifications, which I have controlled by HA. Here are the features I’ve got:</p>\n<ul>\n<li>AgentDVR logged in to the cameras’ admin account (definitely no Reolink account)</li>\n<li>Reolink cam rolling footage based on motion, on onboard MicroSD</li>\n<li>AgentDVR 24/7 footage saving directly to a mounted high-capacity HDD</li>\n<li>Reolink cam, with detection, sends a screenshot with a configured naming format via FTP directly to Home Assistant’s www folder (but this and notifications can be handled by either piece of the setup)</li>\n<li>Home Assistant monitors the folder with folder_watcher and an automation prepares to send my phone a notification (Fdroid - not Google) once the image has ‘closed’)</li>\n<li>I’ve saved my <a href=\"https://github.com/xlyralycanx/Home-Assistant-x-Android-x-Reolink-notifications\" rel=\"nofollow\">automation script</a> in which HA does the screenshots instead of the Reolink cam</li>\n<li>My cameras are connected to my home WiFi but they can also connect to an NVR or a PC for a completely isolated link (you’ll need a PoE injector, I use <a href=\"https://www.tp-link.com/uk/business-networking/poe-switch/tl-sg1005p/\" rel=\"nofollow\">this</a> for up to 4 cameras).</li>\n</ul>\n<p>If you use the Reolink app, then it will use the Reolink servers afaik. I haven’t checked traffic on the cameras yet. It can be fully offline but I choose not to for a better remote experience using the app.</p>\n<p>I set them up a long time ago, scanning a QR code on the camera using the Reolink app. I don’t know if it can be handled another way.</p>\n","inReplyTo":"https://lemmy.world/post/38165859","mediaType":"text/html","source":{"content":"I use Proxmox, Reolink 810s, and I have AgentDVR logged into the cameras via https (443) to get info, and ONVIF (8000) for the stream. It takes a little tweaking via the camera app or web GUI if you want the onboard AI to omit large or small objects for screenshots or notifications, which I have controlled by HA. Here are the features I've got:\n\n- AgentDVR logged in to the cameras' admin account (definitely no Reolink account)\n- Reolink cam rolling footage based on motion, on onboard MicroSD\n- AgentDVR 24/7 footage saving directly to a mounted high-capacity HDD\n- Reolink cam, with detection, sends a screenshot with a configured naming format via FTP directly to Home Assistant's www folder (but this and notifications can be handled by either piece of the setup)\n- Home Assistant monitors the folder with folder_watcher and an automation prepares to send my phone a notification (Fdroid - not Google) once the image has 'closed')\n- I've saved my [automation script](https://github.com/xlyralycanx/Home-Assistant-x-Android-x-Reolink-notifications) in which HA does the screenshots instead of the Reolink cam\n- My cameras are connected to my home WiFi but they can also connect to an NVR or a PC for a completely isolated link (you'll need a PoE injector, I use [this](https://www.tp-link.com/uk/business-networking/poe-switch/tl-sg1005p/) for up to 4 cameras).\n\n\nIf you use the Reolink app, then it will use the Reolink servers afaik. I haven't checked traffic on the cameras yet. It can be fully offline but I choose not to for a better remote experience using the app.\n\nI set them up a long time ago, scanning a QR code on the camera using the Reolink app. I don't know if it can be handled another way.","mediaType":"text/markdown"},"published":"2025-11-01T12:37:02.571935Z","tag":[{"href":"https://lemmy.world/u/njordomir","name":"@njordomir@lemmy.world","type":"Mention"}],"distinguished":false,"language":{"identifier":"en","name":"English"},"audience":"https://lemmy.world/c/homeassistant","attachment":[]},"cc":["https://lemmy.world/c/homeassistant","https://lemmy.world/u/njordomir"],"tag":[{"href":"https://lemmy.world/u/njordomir","name":"@njordomir@lemmy.world","type":"Mention"}],"type":"Create","audience":"https://lemmy.world/c/homeassistant"},"cc":["https://lemmy.world/c/homeassistant/followers"],"type":"Announce","id":"https://lemmy.world/activities/announce/create/83cf0034-a9ea-42f3-81a1-81a86a17fb4d"}
Response
Response Headers
| Header | Value |
|---|---|
| cache-control | "no-cache, private" |
| content-type | "application/activity+json" |
| date | "Sat, 01 Nov 2025 12:37:28 GMT" |
| x-debug-token | "a463cc" |
Cookies
Request Cookies
No request cookies
Response Cookies
No response cookies
Session 1
Session Metadata
No session metadata
Session Attributes
No session attributes
Session Usage
1
Usages
Stateless check enabled
| Usage |
|---|
Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage:41
[
[
"file" => "/var/www/kbin/kbin/vendor/symfony/security-core/Authentication/Token/Storage/UsageTrackingTokenStorage.php"
"line" => 41
"function" => "getMetadataBag"
"class" => "Symfony\Component\HttpFoundation\Session\Session"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/security-http/Authenticator/RememberMeAuthenticator.php"
"line" => 69
"function" => "getToken"
"class" => "Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/security-http/Authentication/AuthenticatorManager.php"
"line" => 111
"function" => "supports"
"class" => "Symfony\Component\Security\Http\Authenticator\RememberMeAuthenticator"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/security-http/Firewall/AuthenticatorManagerListener.php"
"line" => 34
"function" => "supports"
"class" => "Symfony\Component\Security\Http\Authentication\AuthenticatorManager"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/security-http/Authenticator/Debug/TraceableAuthenticatorManagerListener.php"
"line" => 40
"function" => "supports"
"class" => "Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/security-bundle/Debug/WrappedLazyListener.php"
"line" => 38
"function" => "supports"
"class" => "Symfony\Component\Security\Http\Authenticator\Debug\TraceableAuthenticatorManagerListener"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/security-http/Firewall/AbstractListener.php"
"line" => 25
"function" => "supports"
"class" => "Symfony\Bundle\SecurityBundle\Debug\WrappedLazyListener"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/security-bundle/Security/LazyFirewallContext.php"
"line" => 60
"function" => "__invoke"
"class" => "Symfony\Component\Security\Http\Firewall\AbstractListener"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/security-bundle/Debug/TraceableFirewallListener.php"
"line" => 80
"function" => "__invoke"
"class" => "Symfony\Bundle\SecurityBundle\Security\LazyFirewallContext"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/security-http/Firewall.php"
"line" => 95
"function" => "callListeners"
"class" => "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/event-dispatcher/Debug/WrappedListener.php"
"line" => 116
"function" => "onKernelRequest"
"class" => "Symfony\Component\Security\Http\Firewall"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/event-dispatcher/EventDispatcher.php"
"line" => 220
"function" => "__invoke"
"class" => "Symfony\Component\EventDispatcher\Debug\WrappedListener"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/event-dispatcher/EventDispatcher.php"
"line" => 56
"function" => "callListeners"
"class" => "Symfony\Component\EventDispatcher\EventDispatcher"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php"
"line" => 139
"function" => "dispatch"
"class" => "Symfony\Component\EventDispatcher\EventDispatcher"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/http-kernel/HttpKernel.php"
"line" => 157
"function" => "dispatch"
"class" => "Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/http-kernel/HttpKernel.php"
"line" => 76
"function" => "handleRaw"
"class" => "Symfony\Component\HttpKernel\HttpKernel"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/http-kernel/Kernel.php"
"line" => 197
"function" => "handle"
"class" => "Symfony\Component\HttpKernel\HttpKernel"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php"
"line" => 35
"function" => "handle"
"class" => "Symfony\Component\HttpKernel\Kernel"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/vendor/autoload_runtime.php"
"line" => 29
"function" => "run"
"class" => "Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner"
"type" => "->"
]
[
"file" => "/var/www/kbin/kbin/public/index.php"
"line" => 7
"args" => [
"/var/www/kbin/kbin/vendor/autoload_runtime.php"
]
"function" => "require_once"
]
]
|
Flashes
Flashes
No flash messages were created.
Server Parameters
Server Parameters
Defined in .env
| Key | Value |
|---|---|
| APP_ENV | "dev" |
| APP_SECRET | "82ce1339a6c267e28d1f1dcb37a7454c" |
| CORS_ALLOW_ORIGIN | "^https?://(kbin.localhost|127\.0\.0\.1)(:[0-9]+)?$" |
| DATABASE_URL | "postgresql://kbin:917eaa3d703f19d123@127.0.0.1:5433/kbin?serverVersion=15&charset=utf8" |
| HCAPTCHA_SECRET | "" |
| HCAPTCHA_SITE_KEY | "" |
| JWT_PASSPHRASE | "" |
| JWT_PUBLIC_KEY | "%kernel.project_dir%/config/jwt/public.pem" |
| JWT_SECRET_KEY | "%kernel.project_dir%/config/jwt/private.pem" |
| KBIN_ADMIN_ONLY_OAUTH_CLIENTS | "false" |
| KBIN_API_ITEMS_PER_PAGE | "25" |
| KBIN_CAPTCHA_ENABLED | "false" |
| KBIN_CONTACT_EMAIL | "kbin@j0h.nl" |
| KBIN_DEFAULT_LANG | "en" |
| KBIN_DOMAIN | "kbin.spritesserver.nl" |
| KBIN_FEDERATION_ENABLED | "true" |
| KBIN_FEDERATION_PAGE_ENABLED | "true" |
| KBIN_HEADER_LOGO | "false" |
| KBIN_JS_ENABLED | "true" |
| KBIN_META_DESCRIPTION | "a private kbin install" |
| KBIN_META_KEYWORDS | "kbin, content agregator, open source, fediverse" |
| KBIN_META_TITLE | "Sprites kbin instance" |
| KBIN_REGISTRATIONS_ENABLED | "true" |
| KBIN_SENDER_EMAIL | "kbin@j0h.nl" |
| KBIN_STORAGE_URL | "https://kbin.spritesserver.nl/media/" |
| KBIN_TITLE | "/kbin" |
| LOCK_DSN | "flock" |
| MAILER_DSN | "smtp://spritesmods.com" |
| MERCURE_JWT_SECRET | "231e9a1277f5585d52aa0b1e34c0f984xxxx" |
| MERCURE_PUBLIC_URL | "https://kbin.spritesserver.nl/.well-known/mercure" |
| MERCURE_URL | "http://localhost:3000/.well-known/mercure" |
| MESSENGER_TRANSPORT_DSN | "doctrine://default" |
| OAUTH_FACEBOOK_ID | "" |
| OAUTH_FACEBOOK_SECRET | "" |
| OAUTH_GITHUB_ID | "" |
| OAUTH_GITHUB_SECRET | "" |
| OAUTH_GOOGLE_ID | "" |
| OAUTH_GOOGLE_SECRET | "" |
| POSTGRES_DB | "kbin" |
| POSTGRES_PASSWORD | "917eaa3d703f19d123" |
| POSTGRES_USER | "kbin" |
| POSTGRES_VERSION | "15" |
| REDIS_DNS | "redis://uSJBDOQfuOMgt8kyGhpUzViTnQSEdEJTsOIsYSsg3v40v@localhost" |
| REDIS_PASSWORD | "uSJBDOQfuOMgt8kyGhpUzViTnQSEdEJTsOIsYSsg3v40v" |
| S3_BUCKET | "media.karab.in" |
| S3_KEY | "" |
| S3_REGION | "eu-central-1" |
| S3_SECRET | "" |
| S3_VERSION | "latest" |
Defined as regular env variables
| Key | Value |
|---|---|
| APP_DEBUG | "1" |
| CONTENT_LENGTH | "5176" |
| CONTENT_TYPE | "application/activity+json" |
| CONTEXT_DOCUMENT_ROOT | "/var/www/kbin/kbin/public" |
| CONTEXT_PREFIX | "" |
| DOCUMENT_ROOT | "/var/www/kbin/kbin/public" |
| GATEWAY_INTERFACE | "CGI/1.1" |
| HTTPS | "on" |
| HTTP_ACCEPT | "*/*" |
| HTTP_ACCEPT_ENCODING | "gzip" |
| HTTP_DATE | "Sat, 01 Nov 2025 12:37:27 GMT" |
| HTTP_DIGEST | "SHA-256=4acB9Otzbr4Qyc9kxoM4SvRtLlatq660xCizg5ip+RY=" |
| HTTP_HOST | "kbin.spritesserver.nl" |
| HTTP_SIGNATURE | "keyId="https://lemmy.world/c/homeassistant#main-key",algorithm="hs2019",headers="(request-target) content-type date digest host",signature="kgJlGUSSAjrqfORGMEa7BZz9j2xJeqJwv+1tazzGif01XZiHvTk08Ms7MlFfI72LOupTIQMGXwQqW5/yKjf2Ay1WXwSHIe1z4iIuIhPnkE1C7B3r9+Hox08Y9Y387yJmS/o5TQaFlRfDorr7iw82iVD1dSpOaarMiBLsbNgz+z+TxBu6xYo0gVX9RMBUCYWE0iG7pflZBcI63UZ6yv2Twqs5bQv4yWWrHmstdcwP7U8Y/rbzkSDTn2DugswccsYFJNJPo4kIMaZajXnRLWPu+nmn7xavPi2LWyNBZxsf95lM2SucHp06G9LaLFSmxJ1uzPSMswNVAjM3iIUedBMOIQ=="" |
| HTTP_TRACEPARENT | "00-74da00d6ad6cac638c7a66903cdee0df-72f092b2ee85f7ed-01" |
| HTTP_TRACESTATE | "" |
| HTTP_USER_AGENT | "Lemmy/0.19.12-4-gd8445881a; +https://lemmy.world" |
| PATH | "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" |
| PHP_SELF | "/index.php" |
| QUERY_STRING | "" |
| REDIRECT_HTTPS | "on" |
| REDIRECT_SSL_CIPHER | "TLS_AES_256_GCM_SHA384" |
| REDIRECT_SSL_CIPHER_ALGKEYSIZE | "256" |
| REDIRECT_SSL_CIPHER_EXPORT | "false" |
| REDIRECT_SSL_CIPHER_USEKEYSIZE | "256" |
| REDIRECT_SSL_CLIENT_VERIFY | "NONE" |
| REDIRECT_SSL_COMPRESS_METHOD | "NULL" |
| REDIRECT_SSL_PROTOCOL | "TLSv1.3" |
| REDIRECT_SSL_SECURE_RENEG | "true" |
| REDIRECT_SSL_SERVER_A_KEY | "rsaEncryption" |
| REDIRECT_SSL_SERVER_A_SIG | "sha256WithRSAEncryption" |
| REDIRECT_SSL_SERVER_I_DN | "CN=R13,O=Let's Encrypt,C=US" |
| REDIRECT_SSL_SERVER_I_DN_C | "US" |
| REDIRECT_SSL_SERVER_I_DN_CN | "R13" |
| REDIRECT_SSL_SERVER_I_DN_O | "Let's Encrypt" |
| REDIRECT_SSL_SERVER_M_SERIAL | "051FC4B4A36343F49F637925A04EA17AD96A" |
| REDIRECT_SSL_SERVER_M_VERSION | "3" |
| REDIRECT_SSL_SERVER_SAN_DNS_0 | "kbin.spritesserver.nl" |
| REDIRECT_SSL_SERVER_S_DN | "CN=kbin.spritesserver.nl" |
| REDIRECT_SSL_SERVER_S_DN_CN | "kbin.spritesserver.nl" |
| REDIRECT_SSL_SERVER_V_END | "Dec 25 21:01:55 2025 GMT" |
| REDIRECT_SSL_SERVER_V_START | "Sep 26 21:01:56 2025 GMT" |
| REDIRECT_SSL_SESSION_ID | "47a8c7e0ac82a071f90ed7361dafd8d6c5c0eec8770aa33a1b867bb2a14a81b5" |
| REDIRECT_SSL_SESSION_RESUMED | "Resumed" |
| REDIRECT_SSL_TLS_SNI | "kbin.spritesserver.nl" |
| REDIRECT_SSL_VERSION_INTERFACE | "mod_ssl/2.4.62" |
| REDIRECT_SSL_VERSION_LIBRARY | "OpenSSL/3.0.16" |
| REDIRECT_STATUS | "200" |
| REDIRECT_URL | "/f/inbox" |
| REMOTE_ADDR | "135.181.143.221" |
| REMOTE_PORT | "35652" |
| REQUEST_METHOD | "POST" |
| REQUEST_SCHEME | "https" |
| REQUEST_TIME | 1762000648 |
| REQUEST_TIME_FLOAT | 1762000648.0546 |
| REQUEST_URI | "/f/inbox" |
| SCRIPT_FILENAME | "/var/www/kbin/kbin/public/index.php" |
| SCRIPT_NAME | "/index.php" |
| SERVER_ADDR | "5.9.62.165" |
| SERVER_ADMIN | "webmaster@spritesmods.com" |
| SERVER_NAME | "kbin.spritesserver.nl" |
| SERVER_PORT | "443" |
| SERVER_PROTOCOL | "HTTP/1.1" |
| SERVER_SIGNATURE | "" |
| SERVER_SOFTWARE | "Apache" |
| SSL_CIPHER | "TLS_AES_256_GCM_SHA384" |
| SSL_CIPHER_ALGKEYSIZE | "256" |
| SSL_CIPHER_EXPORT | "false" |
| SSL_CIPHER_USEKEYSIZE | "256" |
| SSL_CLIENT_VERIFY | "NONE" |
| SSL_COMPRESS_METHOD | "NULL" |
| SSL_PROTOCOL | "TLSv1.3" |
| SSL_SECURE_RENEG | "true" |
| SSL_SERVER_A_KEY | "rsaEncryption" |
| SSL_SERVER_A_SIG | "sha256WithRSAEncryption" |
| SSL_SERVER_I_DN | "CN=R13,O=Let's Encrypt,C=US" |
| SSL_SERVER_I_DN_C | "US" |
| SSL_SERVER_I_DN_CN | "R13" |
| SSL_SERVER_I_DN_O | "Let's Encrypt" |
| SSL_SERVER_M_SERIAL | "051FC4B4A36343F49F637925A04EA17AD96A" |
| SSL_SERVER_M_VERSION | "3" |
| SSL_SERVER_SAN_DNS_0 | "kbin.spritesserver.nl" |
| SSL_SERVER_S_DN | "CN=kbin.spritesserver.nl" |
| SSL_SERVER_S_DN_CN | "kbin.spritesserver.nl" |
| SSL_SERVER_V_END | "Dec 25 21:01:55 2025 GMT" |
| SSL_SERVER_V_START | "Sep 26 21:01:56 2025 GMT" |
| SSL_SESSION_ID | "47a8c7e0ac82a071f90ed7361dafd8d6c5c0eec8770aa33a1b867bb2a14a81b5" |
| SSL_SESSION_RESUMED | "Resumed" |
| SSL_TLS_SNI | "kbin.spritesserver.nl" |
| SSL_VERSION_INTERFACE | "mod_ssl/2.4.62" |
| SSL_VERSION_LIBRARY | "OpenSSL/3.0.16" |
| SYMFONY_DOTENV_VARS | "KBIN_DOMAIN,KBIN_TITLE,KBIN_DEFAULT_LANG,KBIN_FEDERATION_ENABLED,KBIN_CONTACT_EMAIL,KBIN_SENDER_EMAIL,KBIN_JS_ENABLED,KBIN_REGISTRATIONS_ENABLED,KBIN_API_ITEMS_PER_PAGE,KBIN_STORAGE_URL,KBIN_META_TITLE,KBIN_META_DESCRIPTION,KBIN_META_KEYWORDS,KBIN_HEADER_LOGO,KBIN_CAPTCHA_ENABLED,KBIN_FEDERATION_PAGE_ENABLED,REDIS_PASSWORD,REDIS_DNS,S3_KEY,S3_SECRET,S3_BUCKET,S3_REGION,S3_VERSION,OAUTH_FACEBOOK_ID,OAUTH_FACEBOOK_SECRET,OAUTH_GOOGLE_ID,OAUTH_GOOGLE_SECRET,OAUTH_GITHUB_ID,OAUTH_GITHUB_SECRET,KBIN_ADMIN_ONLY_OAUTH_CLIENTS,APP_ENV,APP_SECRET,POSTGRES_DB,POSTGRES_USER,POSTGRES_PASSWORD,POSTGRES_VERSION,DATABASE_URL,MESSENGER_TRANSPORT_DSN,MAILER_DSN,MERCURE_URL,MERCURE_PUBLIC_URL,MERCURE_JWT_SECRET,CORS_ALLOW_ORIGIN,LOCK_DSN,JWT_SECRET_KEY,JWT_PUBLIC_KEY,JWT_PASSPHRASE,HCAPTCHA_SITE_KEY,HCAPTCHA_SECRET" |