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 | "e4bf1f" |
Request Headers
Header | Value |
---|---|
accept | "*/*" |
accept-encoding | "gzip" |
content-length | "2604" |
content-type | "application/activity+json" |
date | "Wed, 30 Apr 2025 21:06:23 GMT" |
digest | "SHA-256=54XqHtFn1b5TvBxiYOe0rI9vJHaT+KXd/yqUDbT2Hts=" |
host | "kbin.spritesserver.nl" |
signature | "keyId="https://lemmy.world/c/selfhosted#main-key",algorithm="hs2019",headers="(request-target) content-type date digest host",signature="sgD9shP8PLpYtcuxPmuZXp0WldMwinDyB6YQwzppToAPreNkPSeJdaRHPAS5c5ozq3RbOEy0n1Bvn7XpxvRqy8/NWHQiJhRaZwJWZJW+f0QTi+U68lHXEAGiswEalAplWFZnMUWMLL8rn6uZXpqYioNY7OYmc7RfG9jdPHNqGU/vLVqGbnrXpreAPmAPHNW24DiYgAhkF+vNvGoNtI+z4FbfohWFXFrBR43LK++eICTuxziFJACJweDFitBKhmYtZqeZ0WleMjtch9PUyWY/pwPZonohSpBdLyBczLVFTwkD+vcguGSrs0jyhXkQFqFV7UZ9XsfqXE/ry4VD3RKrBQ=="" |
user-agent | "Lemmy/0.19.10; +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\/selfhosted", "to": [ "https:\/\/www.w3.org\/ns\/activitystreams#Public" ], "object": { "id": "https:\/\/programming.dev\/post\/29515452", "actor": "https:\/\/programming.dev\/u\/SinTan1729", "type": "Page", "attributedTo": "https:\/\/programming.dev\/u\/SinTan1729", "to": [ "https:\/\/lemmy.world\/c\/selfhosted", "https:\/\/www.w3.org\/ns\/activitystreams#Public" ], "name": "Suggestion request: Self-hosted app for shared directories like google drive", "cc": [], "content": "<p>I thought of this after a recent trip with some friends. We shared the photos when we were still in person. But sometimes we need to share a lot of photos over the internet. In the past, we have used a shared google drive directory for this. But I\u2019d prefer a self-hosted option. There should be some sort of password protection as well. One should be able to both access the current files and upload new ones, just like google drive or dropbox.<\/p>\n<p>I currently have Fileshelter, which works for 1-to-1 sharing but not for groups. I guess something like ProjectSend would work, but it\u2019s too complex for my usecase. I\u2019d prefer something more lightweight since I\u2019ll maybe use it once every few months. Also, it should be noob-friendly, and accessible using a browser.<\/p>\n", "mediaType": "text\/html", "source": { "content": "I thought of this after a recent trip with some friends. We shared the photos when we were still in person. But sometimes we need to share a lot of photos over the internet. In the past, we have used a shared google drive directory for this. But I'd prefer a self-hosted option. There should be some sort of password protection as well. One should be able to both access the current files and upload new ones, just like google drive or dropbox.\n\nI currently have Fileshelter, which works for 1-to-1 sharing but not for groups. I guess something like ProjectSend would work, but it's too complex for my usecase. I'd prefer something more lightweight since I'll maybe use it once every few months. Also, it should be noob-friendly, and accessible using a browser.", "mediaType": "text\/markdown" }, "attachment": [], "sensitive": false, "published": "2025-04-30T21:05:37.329926Z", "language": { "identifier": "en", "name": "English" }, "audience": "https:\/\/lemmy.world\/c\/selfhosted", "tag": [ { "href": "https:\/\/programming.dev\/post\/29515452", "name": "#selfhosted", "type": "Hashtag" } ] }, "cc": [ "https:\/\/lemmy.world\/c\/selfhosted\/followers" ], "type": "Announce", "id": "https:\/\/lemmy.world\/activities\/announce\/page\/243de810-940f-40e7-8cd5-e5e50572a4a3" }
Raw
{"@context":["https://join-lemmy.org/context.json","https://www.w3.org/ns/activitystreams"],"actor":"https://lemmy.world/c/selfhosted","to":["https://www.w3.org/ns/activitystreams#Public"],"object":{"id":"https://programming.dev/post/29515452","actor":"https://programming.dev/u/SinTan1729","type":"Page","attributedTo":"https://programming.dev/u/SinTan1729","to":["https://lemmy.world/c/selfhosted","https://www.w3.org/ns/activitystreams#Public"],"name":"Suggestion request: Self-hosted app for shared directories like google drive","cc":[],"content":"<p>I thought of this after a recent trip with some friends. We shared the photos when we were still in person. But sometimes we need to share a lot of photos over the internet. In the past, we have used a shared google drive directory for this. But I’d prefer a self-hosted option. There should be some sort of password protection as well. One should be able to both access the current files and upload new ones, just like google drive or dropbox.</p>\n<p>I currently have Fileshelter, which works for 1-to-1 sharing but not for groups. I guess something like ProjectSend would work, but it’s too complex for my usecase. I’d prefer something more lightweight since I’ll maybe use it once every few months. Also, it should be noob-friendly, and accessible using a browser.</p>\n","mediaType":"text/html","source":{"content":"I thought of this after a recent trip with some friends. We shared the photos when we were still in person. But sometimes we need to share a lot of photos over the internet. In the past, we have used a shared google drive directory for this. But I'd prefer a self-hosted option. There should be some sort of password protection as well. One should be able to both access the current files and upload new ones, just like google drive or dropbox.\n\nI currently have Fileshelter, which works for 1-to-1 sharing but not for groups. I guess something like ProjectSend would work, but it's too complex for my usecase. I'd prefer something more lightweight since I'll maybe use it once every few months. Also, it should be noob-friendly, and accessible using a browser.","mediaType":"text/markdown"},"attachment":[],"sensitive":false,"published":"2025-04-30T21:05:37.329926Z","language":{"identifier":"en","name":"English"},"audience":"https://lemmy.world/c/selfhosted","tag":[{"href":"https://programming.dev/post/29515452","name":"#selfhosted","type":"Hashtag"}]},"cc":["https://lemmy.world/c/selfhosted/followers"],"type":"Announce","id":"https://lemmy.world/activities/announce/page/243de810-940f-40e7-8cd5-e5e50572a4a3"}
Response
Response Headers
Header | Value |
---|---|
cache-control | "no-cache, private" |
content-type | "application/activity+json" |
date | "Wed, 30 Apr 2025 21:06:23 GMT" |
x-debug-token | "f0158a" |
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 | "2604" |
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 | "Wed, 30 Apr 2025 21:06:23 GMT" |
HTTP_DIGEST | "SHA-256=54XqHtFn1b5TvBxiYOe0rI9vJHaT+KXd/yqUDbT2Hts=" |
HTTP_HOST | "kbin.spritesserver.nl" |
HTTP_SIGNATURE | "keyId="https://lemmy.world/c/selfhosted#main-key",algorithm="hs2019",headers="(request-target) content-type date digest host",signature="sgD9shP8PLpYtcuxPmuZXp0WldMwinDyB6YQwzppToAPreNkPSeJdaRHPAS5c5ozq3RbOEy0n1Bvn7XpxvRqy8/NWHQiJhRaZwJWZJW+f0QTi+U68lHXEAGiswEalAplWFZnMUWMLL8rn6uZXpqYioNY7OYmc7RfG9jdPHNqGU/vLVqGbnrXpreAPmAPHNW24DiYgAhkF+vNvGoNtI+z4FbfohWFXFrBR43LK++eICTuxziFJACJweDFitBKhmYtZqeZ0WleMjtch9PUyWY/pwPZonohSpBdLyBczLVFTwkD+vcguGSrs0jyhXkQFqFV7UZ9XsfqXE/ry4VD3RKrBQ=="" |
HTTP_USER_AGENT | "Lemmy/0.19.10; +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=R10,O=Let's Encrypt,C=US" |
REDIRECT_SSL_SERVER_I_DN_C | "US" |
REDIRECT_SSL_SERVER_I_DN_CN | "R10" |
REDIRECT_SSL_SERVER_I_DN_O | "Let's Encrypt" |
REDIRECT_SSL_SERVER_M_SERIAL | "06E2DDD4A973DA92D92F46873A8653408A8E" |
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 | "Jun 28 21:01:47 2025 GMT" |
REDIRECT_SSL_SERVER_V_START | "Mar 30 21:01:48 2025 GMT" |
REDIRECT_SSL_SESSION_ID | "de51d11c534c68cba8a5018592e624e94880c999d2c597a5bcd1d6b642d4363f" |
REDIRECT_SSL_SESSION_RESUMED | "Initial" |
REDIRECT_SSL_TLS_SNI | "kbin.spritesserver.nl" |
REDIRECT_SSL_VERSION_INTERFACE | "mod_ssl/2.4.62" |
REDIRECT_SSL_VERSION_LIBRARY | "OpenSSL/3.0.15" |
REDIRECT_STATUS | "200" |
REDIRECT_URL | "/f/inbox" |
REMOTE_ADDR | "135.181.143.221" |
REMOTE_PORT | "40312" |
REQUEST_METHOD | "POST" |
REQUEST_SCHEME | "https" |
REQUEST_TIME | 1746047183 |
REQUEST_TIME_FLOAT | 1746047183.6117 |
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=R10,O=Let's Encrypt,C=US" |
SSL_SERVER_I_DN_C | "US" |
SSL_SERVER_I_DN_CN | "R10" |
SSL_SERVER_I_DN_O | "Let's Encrypt" |
SSL_SERVER_M_SERIAL | "06E2DDD4A973DA92D92F46873A8653408A8E" |
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 | "Jun 28 21:01:47 2025 GMT" |
SSL_SERVER_V_START | "Mar 30 21:01:48 2025 GMT" |
SSL_SESSION_ID | "de51d11c534c68cba8a5018592e624e94880c999d2c597a5bcd1d6b642d4363f" |
SSL_SESSION_RESUMED | "Initial" |
SSL_TLS_SNI | "kbin.spritesserver.nl" |
SSL_VERSION_INTERFACE | "mod_ssl/2.4.62" |
SSL_VERSION_LIBRARY | "OpenSSL/3.0.15" |
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" |