diff --git a/.clinerules/workspace_rules.md b/.clinerules/workspace_rules.md index 17dccfc..fd43ac0 100644 --- a/.clinerules/workspace_rules.md +++ b/.clinerules/workspace_rules.md @@ -37,3 +37,6 @@ - If nginx fails to start, check for port conflicts or kill existing processes - If FastCGI fails, check socket permissions and that binary exists - Always use local paths, never assume system installations + + use ./restart-nginx.sh to restart nginx + use ./start-fcgi.sh to start fcgi \ No newline at end of file diff --git a/IMPLEMENTATION.md b/IMPLEMENTATION.md index 7754e88..23e3162 100644 --- a/IMPLEMENTATION.md +++ b/IMPLEMENTATION.md @@ -92,16 +92,43 @@ This document outlines the implementation plan for ginxsom, a FastCGI-based Blos - [x] Add optional server-specific fields (uploader_pubkey, filename) ### 2.4 Error Handling -- [ ] Implement proper HTTP status codes - - [ ] 400 Bad Request for invalid data - - [ ] 401 Unauthorized for auth failures - - [ ] 409 Conflict for hash mismatches - - [ ] 413 Payload Too Large for size limits - - [ ] 500 Internal Server Error for system issues -- [ ] Add detailed error messages -- [ ] Implement request logging +- [x] Implement proper HTTP status codes + - [x] 400 Bad Request for invalid data + - [x] 401 Unauthorized for auth failures + - [x] 409 Conflict for hash mismatches + - [x] 413 Payload Too Large for size limits + - [x] 500 Internal Server Error for system issues +- [x] Add detailed error messages +- [x] Implement request logging -### 2.5 Testing & Validation +### 2.5 List Blobs Endpoint +- [ ] Implement `GET /list/` endpoint + - [ ] Extract pubkey from URL path + - [ ] Query database for blobs uploaded by specified pubkey + - [ ] Support `since` and `until` query parameters for date filtering + - [ ] Return JSON array of blob descriptors + - [ ] Handle empty results gracefully + - [ ] Implement optional authorization with kind 24242 event validation + - [ ] Validate `t` tag is set to "list" + - [ ] Check authorization expiration + - [ ] Verify event signature and structure + +### 2.6 Delete Blob Endpoint +- [ ] Implement `DELETE /` endpoint + - [ ] Extract SHA-256 hash from URL path + - [ ] Require authorization with kind 24242 event validation + - [ ] Validate `t` tag is set to "delete" + - [ ] Verify at least one `x` tag matches the requested hash + - [ ] Check authorization expiration + - [ ] Verify event signature and structure + - [ ] Check blob exists in database + - [ ] Verify uploader_pubkey matches authorized pubkey (ownership check) + - [ ] Remove blob file from filesystem + - [ ] Remove blob metadata from database + - [ ] Handle file deletion errors gracefully + - [ ] Return appropriate success/error responses + +### 2.7 Testing & Validation - [x] Test uploads without authentication - [x] Test uploads with valid nostr auth - [x] Test uploads with invalid auth @@ -195,7 +222,7 @@ This document outlines the implementation plan for ginxsom, a FastCGI-based Blos - [x] HEAD requests return metadata from database - [x] Database stores blob information with proper schema -### Milestone 2: Full Upload Support (Phase 2 Complete) +### Milestone 2: Full Upload Support (Phase 2 Pending) - [x] Basic upload functionality working (PUT requests accepted) - [x] SHA-256 hash calculation during upload - [x] File storage to blobs/ directory @@ -203,6 +230,8 @@ This document outlines the implementation plan for ginxsom, a FastCGI-based Blos - [x] Authenticated uploads working (Nostr kind 24242 event validation) - [x] Proper error handling for upload scenarios - [x] Database metadata storage during upload (with uploader_pubkey and filename) +- [ ] List blobs endpoint implemented (GET /list/) +- [ ] Delete blob endpoint implemented (DELETE /) ### Milestone 3: Policy Compliance (Phase 3 Pending) - [ ] Upload requirements implemented diff --git a/blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.txt b/blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.txt new file mode 100644 index 0000000..f672b45 --- /dev/null +++ b/blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.txt @@ -0,0 +1,7 @@ +Test blob content for Ginxsom Blossom server +Timestamp: 2025-08-19T10:34:57-04:00 +Random data: 52bea9fe68b05eeeee258ae97cdcf8d9e7abbc13e67d61f681927250daef6e56 +Test message: Hello from put_test.sh! + +This file is used to test the upload functionality +of the Ginxsom Blossom server implementation. diff --git a/blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.txt b/blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.txt new file mode 100644 index 0000000..6e9bd23 --- /dev/null +++ b/blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.txt @@ -0,0 +1,7 @@ +Test blob content for Ginxsom Blossom server +Timestamp: 2025-08-19T10:34:52-04:00 +Random data: 340fc3549683d7c208ffa373d5932551f9b2e53cc1a5713b55c934403d9640a2 +Test message: Hello from put_test.sh! + +This file is used to test the upload functionality +of the Ginxsom Blossom server implementation. diff --git a/blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.txt b/blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.txt new file mode 100644 index 0000000..db28e31 --- /dev/null +++ b/blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.txt @@ -0,0 +1,7 @@ +Test blob content for Ginxsom Blossom server +Timestamp: 2025-08-19T10:34:56-04:00 +Random data: 52e5fee5b2f73c73ed388c9df9f74c58117b5f93982c5e6202951fd9fd90b626 +Test message: Hello from put_test.sh! + +This file is used to test the upload functionality +of the Ginxsom Blossom server implementation. diff --git a/blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.txt b/blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.txt new file mode 100644 index 0000000..dd681a7 --- /dev/null +++ b/blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.txt @@ -0,0 +1,7 @@ +Test blob content for Ginxsom Blossom server +Timestamp: 2025-08-19T10:44:56-04:00 +Random data: 162b8c0930df1f600ddd936e99ecce0866ab82a436f545d2187ba56726f0df4f +Test message: Hello from put_test.sh! + +This file is used to test the upload functionality +of the Ginxsom Blossom server implementation. diff --git a/build/ginxsom-fcgi b/build/ginxsom-fcgi index 113567c..14e9880 100755 Binary files a/build/ginxsom-fcgi and b/build/ginxsom-fcgi differ diff --git a/build/main.o b/build/main.o index 9cdeecd..8230a9a 100644 Binary files a/build/main.o and b/build/main.o differ diff --git a/config/local-nginx.conf b/config/local-nginx.conf index bf00bcb..b8f7bc4 100644 --- a/config/local-nginx.conf +++ b/config/local-nginx.conf @@ -102,6 +102,19 @@ http { } } + # List blobs endpoint - GET /list/ + location ~ "^/list/([a-f0-9]{64}).*$" { + # Pass to FastCGI application for processing + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root/ginxsom.fcgi; + fastcgi_pass fastcgi_backend; + + # Only allow GET method for list requests + if ($request_method !~ ^(GET)$ ) { + return 405; + } + } + # Health check endpoint location /health { access_log off; diff --git a/db/ginxsom.db b/db/ginxsom.db index 6efc6f7..4683bf3 100644 Binary files a/db/ginxsom.db and b/db/ginxsom.db differ diff --git a/delete_test.sh b/delete_test.sh new file mode 100755 index 0000000..3c70f5c --- /dev/null +++ b/delete_test.sh @@ -0,0 +1,119 @@ +#!/bin/bash + +# delete_test.sh - Test script for DELETE / endpoint +# This script tests the blob deletion functionality + +BASE_URL="http://localhost:9001" +NOSTR_PRIVKEY="0000000000000000000000000000000000000000000000000000000000000001" +NOSTR_PUBKEY="79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" + +# Colors for output +RED='\033[0;31m' +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +NC='\033[0m' # No Color + +echo "=== Ginxsom Delete Blob Tests ===" +echo + +# Function to generate a Nostr event for delete authorization +generate_delete_auth() { + local sha256="$1" + local content="$2" + local created_at=$(date +%s) + local expiration=$((created_at + 3600)) # 1 hour from now + + # Note: This is a placeholder - in real implementation, you'd use nostr tools + # to generate properly signed events. For now, we'll create the structure. + cat << EOF +{ + "id": "placeholder_id", + "pubkey": "$NOSTR_PUBKEY", + "kind": 24242, + "content": "$content", + "created_at": $created_at, + "tags": [ + ["t", "delete"], + ["x", "$sha256"], + ["expiration", "$expiration"] + ], + "sig": "placeholder_signature" +} +EOF +} + +# Test 1: Delete without authorization (should fail) +echo -e "${YELLOW}Test 1: DELETE without authorization${NC}" +RESPONSE=$(curl -s -w "\nHTTP_STATUS:%{http_code}" -X DELETE "$BASE_URL/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe") +HTTP_STATUS=$(echo "$RESPONSE" | grep "HTTP_STATUS" | cut -d: -f2) +BODY=$(echo "$RESPONSE" | sed '/HTTP_STATUS/d') + +if [ "$HTTP_STATUS" = "401" ]; then + echo -e "${GREEN}✓ Correctly rejected unauthorized delete (401)${NC}" +else + echo -e "${RED}✗ Expected 401, got $HTTP_STATUS${NC}" +fi +echo "Response: $BODY" +echo + +# Test 2: Delete with invalid authorization +echo -e "${YELLOW}Test 2: DELETE with invalid authorization${NC}" +INVALID_AUTH=$(echo '{"invalid": "event"}' | base64 -w 0) +RESPONSE=$(curl -s -w "\nHTTP_STATUS:%{http_code}" -X DELETE \ + -H "Authorization: Nostr $INVALID_AUTH" \ + "$BASE_URL/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe") +HTTP_STATUS=$(echo "$RESPONSE" | grep "HTTP_STATUS" | cut -d: -f2) +BODY=$(echo "$RESPONSE" | sed '/HTTP_STATUS/d') + +if [ "$HTTP_STATUS" = "401" ]; then + echo -e "${GREEN}✓ Correctly rejected invalid authorization (401)${NC}" +else + echo -e "${RED}✗ Expected 401, got $HTTP_STATUS${NC}" +fi +echo "Response: $BODY" +echo + +# Test 3: Delete non-existent blob +echo -e "${YELLOW}Test 3: DELETE non-existent blob${NC}" +NONEXISTENT_HASH="1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +DELETE_AUTH=$(generate_delete_auth "$NONEXISTENT_HASH" "Delete non-existent") +AUTH_B64=$(echo "$DELETE_AUTH" | base64 -w 0) +RESPONSE=$(curl -s -w "\nHTTP_STATUS:%{http_code}" -X DELETE \ + -H "Authorization: Nostr $AUTH_B64" \ + "$BASE_URL/$NONEXISTENT_HASH") +HTTP_STATUS=$(echo "$RESPONSE" | grep "HTTP_STATUS" | cut -d: -f2) +BODY=$(echo "$RESPONSE" | sed '/HTTP_STATUS/d') + +if [ "$HTTP_STATUS" = "404" ]; then + echo -e "${GREEN}✓ Correctly returned 404 for non-existent blob${NC}" +else + echo -e "${RED}✗ Expected 404, got $HTTP_STATUS${NC}" +fi +echo "Response: $BODY" +echo + +# Test 4: Delete with wrong pubkey (ownership check) +echo -e "${YELLOW}Test 4: DELETE with wrong pubkey (ownership test)${NC}" +TEST_HASH="708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +DELETE_AUTH=$(generate_delete_auth "$TEST_HASH" "Delete with wrong pubkey") +AUTH_B64=$(echo "$DELETE_AUTH" | base64 -w 0) +RESPONSE=$(curl -s -w "\nHTTP_STATUS:%{http_code}" -X DELETE \ + -H "Authorization: Nostr $AUTH_B64" \ + "$BASE_URL/$TEST_HASH") +HTTP_STATUS=$(echo "$RESPONSE" | grep "HTTP_STATUS" | cut -d: -f2) +BODY=$(echo "$RESPONSE" | sed '/HTTP_STATUS/d') + +echo "HTTP Status: $HTTP_STATUS" +echo "Response: $BODY" +echo + +# Test 5: Valid delete (if implemented and authorized) +echo -e "${YELLOW}Test 5: Valid DELETE request${NC}" +echo "Note: This test requires a blob uploaded by the test pubkey" +echo "and proper Nostr event signing (not implemented in this test script)" +echo + +echo "=== Delete Tests Complete ===" +echo +echo "Note: These tests use placeholder Nostr events." +echo "For real testing, use proper Nostr signing tools to generate valid events." diff --git a/list_test.sh b/list_test.sh new file mode 100755 index 0000000..bb5a4ac --- /dev/null +++ b/list_test.sh @@ -0,0 +1,157 @@ +#!/bin/bash + +# list_test.sh - Test script for GET /list/ endpoint +# This script tests the blob listing functionality + +BASE_URL="http://localhost:9001" +NOSTR_PRIVKEY="0000000000000000000000000000000000000000000000000000000000000001" +NOSTR_PUBKEY="79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" + +# Colors for output +RED='\033[0;31m' +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +NC='\033[0m' # No Color + +echo "=== Ginxsom List Blobs Tests ===" +echo + +# Function to generate a Nostr event for list authorization +generate_list_auth() { + local content="$1" + local created_at=$(date +%s) + local expiration=$((created_at + 3600)) # 1 hour from now + + # Note: This is a placeholder - in real implementation, you'd use nostr tools + # to generate properly signed events. For now, we'll create the structure. + cat << EOF +{ + "id": "placeholder_id", + "pubkey": "$NOSTR_PUBKEY", + "kind": 24242, + "content": "$content", + "created_at": $created_at, + "tags": [ + ["t", "list"], + ["expiration", "$expiration"] + ], + "sig": "placeholder_signature" +} +EOF +} + +# Test 1: List blobs without authorization (should work if optional auth) +echo -e "${YELLOW}Test 1: GET /list/ without authorization${NC}" +RESPONSE=$(curl -s -w "\nHTTP_STATUS:%{http_code}" "$BASE_URL/list/$NOSTR_PUBKEY") +HTTP_STATUS=$(echo "$RESPONSE" | grep "HTTP_STATUS" | cut -d: -f2) +BODY=$(echo "$RESPONSE" | sed '/HTTP_STATUS/d') + +echo "HTTP Status: $HTTP_STATUS" +echo "Response: $BODY" +echo + +# # Test 2: List blobs with authorization +# echo -e "${YELLOW}Test 2: GET /list/ with authorization${NC}" +# LIST_AUTH=$(generate_list_auth "List Blobs") +# AUTH_B64=$(echo "$LIST_AUTH" | base64 -w 0) +# RESPONSE=$(curl -s -w "\nHTTP_STATUS:%{http_code}" \ +# -H "Authorization: Nostr $AUTH_B64" \ +# "$BASE_URL/list/$NOSTR_PUBKEY") +# HTTP_STATUS=$(echo "$RESPONSE" | grep "HTTP_STATUS" | cut -d: -f2) +# BODY=$(echo "$RESPONSE" | sed '/HTTP_STATUS/d') + +# echo "HTTP Status: $HTTP_STATUS" +# echo "Response: $BODY" +# echo + +# # Test 3: List blobs with since parameter +# echo -e "${YELLOW}Test 3: GET /list/ with since parameter${NC}" +# SINCE_TIMESTAMP=$(($(date +%s) - 86400)) # 24 hours ago +# RESPONSE=$(curl -s -w "\nHTTP_STATUS:%{http_code}" \ +# "$BASE_URL/list/$NOSTR_PUBKEY?since=$SINCE_TIMESTAMP") +# HTTP_STATUS=$(echo "$RESPONSE" | grep "HTTP_STATUS" | cut -d: -f2) +# BODY=$(echo "$RESPONSE" | sed '/HTTP_STATUS/d') + +# echo "HTTP Status: $HTTP_STATUS" +# echo "Response: $BODY" +# echo + +# # Test 4: List blobs with until parameter +# echo -e "${YELLOW}Test 4: GET /list/ with until parameter${NC}" +# UNTIL_TIMESTAMP=$(date +%s) # now +# RESPONSE=$(curl -s -w "\nHTTP_STATUS:%{http_code}" \ +# "$BASE_URL/list/$NOSTR_PUBKEY?until=$UNTIL_TIMESTAMP") +# HTTP_STATUS=$(echo "$RESPONSE" | grep "HTTP_STATUS" | cut -d: -f2) +# BODY=$(echo "$RESPONSE" | sed '/HTTP_STATUS/d') + +# echo "HTTP Status: $HTTP_STATUS" +# echo "Response: $BODY" +# echo + +# # Test 5: List blobs with both since and until parameters +# echo -e "${YELLOW}Test 5: GET /list/ with since and until parameters${NC}" +# SINCE_TIMESTAMP=$(($(date +%s) - 86400)) # 24 hours ago +# UNTIL_TIMESTAMP=$(date +%s) # now +# RESPONSE=$(curl -s -w "\nHTTP_STATUS:%{http_code}" \ +# "$BASE_URL/list/$NOSTR_PUBKEY?since=$SINCE_TIMESTAMP&until=$UNTIL_TIMESTAMP") +# HTTP_STATUS=$(echo "$RESPONSE" | grep "HTTP_STATUS" | cut -d: -f2) +# BODY=$(echo "$RESPONSE" | sed '/HTTP_STATUS/d') + +# echo "HTTP Status: $HTTP_STATUS" +# echo "Response: $BODY" +# echo + +# # Test 6: List blobs for non-existent pubkey +# echo -e "${YELLOW}Test 6: GET /list/${NC}" +# FAKE_PUBKEY="1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +# RESPONSE=$(curl -s -w "\nHTTP_STATUS:%{http_code}" "$BASE_URL/list/$FAKE_PUBKEY") +# HTTP_STATUS=$(echo "$RESPONSE" | grep "HTTP_STATUS" | cut -d: -f2) +# BODY=$(echo "$RESPONSE" | sed '/HTTP_STATUS/d') + +# if [ "$HTTP_STATUS" = "200" ]; then +# echo -e "${GREEN}✓ Correctly returned 200 with empty array${NC}" +# else +# echo "HTTP Status: $HTTP_STATUS" +# fi +# echo "Response: $BODY" +# echo + +# # Test 7: List blobs with invalid pubkey format +# echo -e "${YELLOW}Test 7: GET /list/${NC}" +# INVALID_PUBKEY="invalid_pubkey" +# RESPONSE=$(curl -s -w "\nHTTP_STATUS:%{http_code}" "$BASE_URL/list/$INVALID_PUBKEY") +# HTTP_STATUS=$(echo "$RESPONSE" | grep "HTTP_STATUS" | cut -d: -f2) +# BODY=$(echo "$RESPONSE" | sed '/HTTP_STATUS/d') + +# if [ "$HTTP_STATUS" = "400" ]; then +# echo -e "${GREEN}✓ Correctly returned 400 for invalid pubkey format${NC}" +# else +# echo "HTTP Status: $HTTP_STATUS" +# fi +# echo "Response: $BODY" +# echo + +# # Test 8: List blobs with invalid since/until parameters +# echo -e "${YELLOW}Test 8: GET /list/ with invalid timestamp parameters${NC}" +# RESPONSE=$(curl -s -w "\nHTTP_STATUS:%{http_code}" \ +# "$BASE_URL/list/$NOSTR_PUBKEY?since=invalid&until=invalid") +# HTTP_STATUS=$(echo "$RESPONSE" | grep "HTTP_STATUS" | cut -d: -f2) +# BODY=$(echo "$RESPONSE" | sed '/HTTP_STATUS/d') + +# echo "HTTP Status: $HTTP_STATUS" +# echo "Response: $BODY" +# echo + +# echo "=== List Tests Complete ===" +# echo +# echo "Expected blob descriptor format:" +# echo '{' +# echo ' "url": "https://server.com/.",' +# echo ' "sha256": "",' +# echo ' "size": ,' +# echo ' "type": "",' +# echo ' "uploaded": ' +# echo '}' +# echo +# echo "Note: These tests use placeholder Nostr events." +# echo "For real testing, use proper Nostr signing tools to generate valid events." diff --git a/logs/access.log b/logs/access.log index 47ad46c..290d9ba 100644 --- a/logs/access.log +++ b/logs/access.log @@ -129,3 +129,23 @@ 127.0.0.1 - - [19/Aug/2025:10:10:05 -0400] "GET /71300009a2840a82a5f596e833b6d0b69361ac63bed5956652e39dad53400ac5 HTTP/1.1" 200 296 "-" "curl/8.15.0" 127.0.0.1 - - [19/Aug/2025:10:11:23 -0400] "PUT /upload HTTP/1.1" 200 323 "-" "curl/8.15.0" 127.0.0.1 - - [19/Aug/2025:10:11:23 -0400] "GET /a5946f8210fb87f9772263864234944d5fea43a8b3dc8eaa08abe4859eb68325 HTTP/1.1" 200 296 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:34:53 -0400] "PUT /upload HTTP/1.1" 200 323 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:34:53 -0400] "GET /545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de HTTP/1.1" 200 296 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:34:56 -0400] "PUT /upload HTTP/1.1" 200 323 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:34:56 -0400] "GET /98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100 HTTP/1.1" 200 296 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:34:57 -0400] "PUT /upload HTTP/1.1" 200 323 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:34:57 -0400] "GET /22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c HTTP/1.1" 200 296 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:44:56 -0400] "PUT /upload HTTP/1.1" 200 323 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:44:56 -0400] "GET /b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1 HTTP/1.1" 200 296 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:55:42 -0400] "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:55:42 -0400] "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:55:42 -0400] "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:55:42 -0400] "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?until=1755615342 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:55:42 -0400] "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942&until=1755615342 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:55:42 -0400] "GET /list/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:55:42 -0400] "GET /list/invalid_pubkey HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:55:42 -0400] "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=invalid&until=invalid HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:10:56:40 -0400] "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:11:00:46 -0400] "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1" 501 38 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:11:01:47 -0400] "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1" 200 1984 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:11:02:33 -0400] "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1" 200 1984 "-" "curl/8.15.0" diff --git a/logs/error.log b/logs/error.log index da13940..5dae882 100644 --- a/logs/error.log +++ b/logs/error.log @@ -12832,3 +12832,4678 @@ Accept-Ranges: bytes 2025/08/19 10:11:23 [debug] 349771#349771: timer delta: 1 2025/08/19 10:11:23 [debug] 349771#349771: worker cycle 2025/08/19 10:11:23 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:34:52 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:34:52 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:34:52 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:34:52 [debug] 349771#349771: *42 accept: 127.0.0.1:55676 fd:6 +2025/08/19 10:34:52 [debug] 349771#349771: *42 event timer add: 6: 60000:180886020 +2025/08/19 10:34:52 [debug] 349771#349771: *42 reusable connection: 1 +2025/08/19 10:34:52 [debug] 349771#349771: *42 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:34:52 [debug] 349771#349771: timer delta: 1409622 +2025/08/19 10:34:52 [debug] 349771#349771: worker cycle +2025/08/19 10:34:52 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:34:52 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 http wait request handler +2025/08/19 10:34:52 [debug] 349771#349771: *42 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:52 [debug] 349771#349771: *42 recv: eof:0, avail:-1 +2025/08/19 10:34:52 [debug] 349771#349771: *42 recv: fd:6 84 of 1024 +2025/08/19 10:34:52 [debug] 349771#349771: *42 reusable connection: 0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:34:52 [debug] 349771#349771: *42 http process request line +2025/08/19 10:34:52 [debug] 349771#349771: *42 http request line: "GET /health HTTP/1.1" +2025/08/19 10:34:52 [debug] 349771#349771: *42 http uri: "/health" +2025/08/19 10:34:52 [debug] 349771#349771: *42 http args: "" +2025/08/19 10:34:52 [debug] 349771#349771: *42 http exten: "" +2025/08/19 10:34:52 [debug] 349771#349771: *42 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:34:52 [debug] 349771#349771: *42 http process request header line +2025/08/19 10:34:52 [debug] 349771#349771: *42 http header: "Host: localhost:9001" +2025/08/19 10:34:52 [debug] 349771#349771: *42 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:34:52 [debug] 349771#349771: *42 http header: "Accept: */*" +2025/08/19 10:34:52 [debug] 349771#349771: *42 http header done +2025/08/19 10:34:52 [debug] 349771#349771: *42 event timer del: 6: 180886020 +2025/08/19 10:34:52 [debug] 349771#349771: *42 generic phase: 0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 rewrite phase: 1 +2025/08/19 10:34:52 [debug] 349771#349771: *42 test location: "/health" +2025/08/19 10:34:52 [debug] 349771#349771: *42 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:34:52 [debug] 349771#349771: *42 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:34:52 [debug] 349771#349771: *42 using configuration "/health" +2025/08/19 10:34:52 [debug] 349771#349771: *42 http cl:-1 max:104857600 +2025/08/19 10:34:52 [debug] 349771#349771: *42 rewrite phase: 3 +2025/08/19 10:34:52 [debug] 349771#349771: *42 http set discard body +2025/08/19 10:34:52 [debug] 349771#349771: *42 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:34:52 GMT +Content-Type: application/octet-stream +Content-Length: 3 +Connection: keep-alive +Content-Type: text/plain + +2025/08/19 10:34:52 [debug] 349771#349771: *42 write new buf t:1 f:0 00005CE04361AD60, pos 00005CE04361AD60, size: 196 file: 0, size: 0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 http write filter: l:0 f:0 s:196 +2025/08/19 10:34:52 [debug] 349771#349771: *42 http output filter "/health?" +2025/08/19 10:34:52 [debug] 349771#349771: *42 http copy filter: "/health?" +2025/08/19 10:34:52 [debug] 349771#349771: *42 http postpone filter "/health?" 00007FFDD38FD1C0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 write old buf t:1 f:0 00005CE04361AD60, pos 00005CE04361AD60, size: 196 file: 0, size: 0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 write new buf t:0 f:0 0000000000000000, pos 00005CE04363AD7A, size: 3 file: 0, size: 0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 http write filter: l:1 f:0 s:199 +2025/08/19 10:34:52 [debug] 349771#349771: *42 http write filter limit 0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 writev: 199 of 199 +2025/08/19 10:34:52 [debug] 349771#349771: *42 http write filter 0000000000000000 +2025/08/19 10:34:52 [debug] 349771#349771: *42 http copy filter: 0 "/health?" +2025/08/19 10:34:52 [debug] 349771#349771: *42 http finalize request: 0, "/health?" a:1, c:1 +2025/08/19 10:34:52 [debug] 349771#349771: *42 set http keepalive handler +2025/08/19 10:34:52 [debug] 349771#349771: *42 http close request +2025/08/19 10:34:52 [debug] 349771#349771: *42 http log handler +2025/08/19 10:34:52 [debug] 349771#349771: *42 free: 00005CE043624610, unused: 0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 free: 00005CE04361A980, unused: 2736 +2025/08/19 10:34:52 [debug] 349771#349771: *42 free: 00005CE0436090A0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 hc free: 0000000000000000 +2025/08/19 10:34:52 [debug] 349771#349771: *42 hc busy: 0000000000000000 0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 tcp_nodelay +2025/08/19 10:34:52 [debug] 349771#349771: *42 reusable connection: 1 +2025/08/19 10:34:52 [debug] 349771#349771: *42 event timer add: 6: 65000:180891020 +2025/08/19 10:34:52 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:34:52 [debug] 349771#349771: worker cycle +2025/08/19 10:34:52 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:34:52 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 http keepalive handler +2025/08/19 10:34:52 [debug] 349771#349771: *42 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:52 [debug] 349771#349771: *42 recv: eof:1, avail:-1 +2025/08/19 10:34:52 [debug] 349771#349771: *42 recv: fd:6 0 of 1024 +2025/08/19 10:34:52 [info] 349771#349771: *42 client 127.0.0.1 closed keepalive connection +2025/08/19 10:34:52 [debug] 349771#349771: *42 close http connection: 6 +2025/08/19 10:34:52 [debug] 349771#349771: *42 event timer del: 6: 180891020 +2025/08/19 10:34:52 [debug] 349771#349771: *42 reusable connection: 0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 free: 00005CE0436090A0 +2025/08/19 10:34:52 [debug] 349771#349771: *42 free: 00005CE043606840, unused: 136 +2025/08/19 10:34:52 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:34:52 [debug] 349771#349771: worker cycle +2025/08/19 10:34:52 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:34:53 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:34:53 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:34:53 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:34:53 [debug] 349771#349771: *43 accept: 127.0.0.1:55690 fd:6 +2025/08/19 10:34:53 [debug] 349771#349771: *43 event timer add: 6: 60000:180886325 +2025/08/19 10:34:53 [debug] 349771#349771: *43 reusable connection: 1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:34:53 [debug] 349771#349771: timer delta: 304 +2025/08/19 10:34:53 [debug] 349771#349771: worker cycle +2025/08/19 10:34:53 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:34:53 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http wait request handler +2025/08/19 10:34:53 [debug] 349771#349771: *43 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:53 [debug] 349771#349771: *43 recv: eof:0, avail:-1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 recv: fd:6 1024 of 1024 +2025/08/19 10:34:53 [debug] 349771#349771: *43 recv: avail:112 +2025/08/19 10:34:53 [debug] 349771#349771: *43 reusable connection: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http process request line +2025/08/19 10:34:53 [debug] 349771#349771: *43 http request line: "PUT /upload HTTP/1.1" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http uri: "/upload" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http args: "" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http exten: "" +2025/08/19 10:34:53 [debug] 349771#349771: *43 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http process request header line +2025/08/19 10:34:53 [debug] 349771#349771: *43 http header: "Host: localhost:9001" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http header: "Accept: */*" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiJhZmFjMjAyY2ZlZTM3OWEwYzdlNzhkOWU0N2FjOGU0NmVjODkxMjZjOTRhMGI5MjIxNGU3NWEwMmMzZTE4YzJlIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQwOTMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI1NDVhMjI3N2RkNGI3YTY2ZTMyMGUxMmNkZDkyYmY2ZmJiZTEzODY5YjViYjVkNjY1YTAzYzgzZDQ1M2JhMmRlIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxNzY5MiJdXSwiY29udGVudCI6IiIsInNpZyI6IjkzM2NlNmNlNGViMTlhMTAxYzIxMDMzYzIyOWRkOTIwZWI4MzlhYzg4OGRkYmUyZTg2YTQwOTgzNzBmYTRmZTY3ODc3ODIxZGU5MzNlOGVlNDYzODU1ZDhlNzY1MTk0YzNkODZmYWVjNzYyZjljMGMwYWYxMjUwMzFkYjdhZDQ4In0=" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http header: "Content-Type: text/plain" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http header: "Content-Disposition: attachment; filename="test_blob_1755614092.txt"" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http header: "Content-Length: 296" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http header done +2025/08/19 10:34:53 [debug] 349771#349771: *43 event timer del: 6: 180886325 +2025/08/19 10:34:53 [debug] 349771#349771: *43 generic phase: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 rewrite phase: 1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 test location: "/health" +2025/08/19 10:34:53 [debug] 349771#349771: *43 test location: "/upload" +2025/08/19 10:34:53 [debug] 349771#349771: *43 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:34:53 [debug] 349771#349771: *43 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:34:53 [debug] 349771#349771: *43 using configuration "/upload" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http cl:296 max:104857600 +2025/08/19 10:34:53 [debug] 349771#349771: *43 rewrite phase: 3 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "PUT" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script regex: "^(PUT)$" +2025/08/19 10:34:53 [notice] 349771#349771: *43 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script if +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script if: false +2025/08/19 10:34:53 [debug] 349771#349771: *43 post rewrite phase: 4 +2025/08/19 10:34:53 [debug] 349771#349771: *43 generic phase: 5 +2025/08/19 10:34:53 [debug] 349771#349771: *43 generic phase: 6 +2025/08/19 10:34:53 [debug] 349771#349771: *43 generic phase: 7 +2025/08/19 10:34:53 [debug] 349771#349771: *43 access phase: 8 +2025/08/19 10:34:53 [debug] 349771#349771: *43 access phase: 9 +2025/08/19 10:34:53 [debug] 349771#349771: *43 access phase: 10 +2025/08/19 10:34:53 [debug] 349771#349771: *43 post access phase: 11 +2025/08/19 10:34:53 [debug] 349771#349771: *43 generic phase: 12 +2025/08/19 10:34:53 [debug] 349771#349771: *43 generic phase: 13 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http client request body preread 184 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http request body content length filter +2025/08/19 10:34:53 [debug] 349771#349771: *43 http body new buf t:1 f:0 00005CE0436093E8, pos 00005CE0436093E8, size: 184 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http read client request body +2025/08/19 10:34:53 [debug] 349771#349771: *43 recv: eof:0, avail:112 +2025/08/19 10:34:53 [debug] 349771#349771: *43 recv: fd:6 112 of 112 +2025/08/19 10:34:53 [debug] 349771#349771: *43 recv: avail:0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http client request body recv 112 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http body new buf t:1 f:0 00005CE04361B410, pos 00005CE04361B410, size: 112 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http client request body rest 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http init upstream, client timer: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 10:34:53 [debug] 349771#349771: *43 posix_memalign: 00005CE043610140:4096 @16 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "QUERY_STRING" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "QUERY_STRING: " +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "REQUEST_METHOD" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "PUT" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "CONTENT_TYPE" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "text/plain" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "CONTENT_LENGTH" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "296" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "SCRIPT_NAME" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "/upload" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "REQUEST_URI" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "/upload" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "DOCUMENT_URI" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "/upload" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "DOCUMENT_ROOT" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "./blobs" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "SERVER_PROTOCOL" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "HTTP/1.1" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "REQUEST_SCHEME" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "http" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "GATEWAY_INTERFACE" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "CGI/1.1" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "SERVER_SOFTWARE" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "nginx/" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "1.18.0" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "REMOTE_ADDR" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "127.0.0.1" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "REMOTE_PORT" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "55690" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "REMOTE_PORT: 55690" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "SERVER_ADDR" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "127.0.0.1" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "SERVER_PORT" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "9001" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "SERVER_NAME" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "localhost" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "REDIRECT_STATUS" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "200" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "SCRIPT_FILENAME" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script var: "./blobs" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http script copy: "/ginxsom.fcgi" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiJhZmFjMjAyY2ZlZTM3OWEwYzdlNzhkOWU0N2FjOGU0NmVjODkxMjZjOTRhMGI5MjIxNGU3NWEwMmMzZTE4YzJlIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQwOTMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI1NDVhMjI3N2RkNGI3YTY2ZTMyMGUxMmNkZDkyYmY2ZmJiZTEzODY5YjViYjVkNjY1YTAzYzgzZDQ1M2JhMmRlIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxNzY5MiJdXSwiY29udGVudCI6IiIsInNpZyI6IjkzM2NlNmNlNGViMTlhMTAxYzIxMDMzYzIyOWRkOTIwZWI4MzlhYzg4OGRkYmUyZTg2YTQwOTgzNzBmYTRmZTY3ODc3ODIxZGU5MzNlOGVlNDYzODU1ZDhlNzY1MTk0YzNkODZmYWVjNzYyZjljMGMwYWYxMjUwMzFkYjdhZDQ4In0=" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755614092.txt"" +2025/08/19 10:34:53 [debug] 349771#349771: *43 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http cleanup add: 00005CE04361B760 +2025/08/19 10:34:53 [debug] 349771#349771: *43 get rr peer, try: 1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 stream socket 10 +2025/08/19 10:34:53 [debug] 349771#349771: *43 epoll add connection: fd:10 ev:80002005 +2025/08/19 10:34:53 [debug] 349771#349771: *43 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #44 +2025/08/19 10:34:53 [debug] 349771#349771: *43 connected +2025/08/19 10:34:53 [debug] 349771#349771: *43 http upstream connect: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 posix_memalign: 00005CE0435EFF20:128 @16 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http upstream send request +2025/08/19 10:34:53 [debug] 349771#349771: *43 http upstream send request body +2025/08/19 10:34:53 [debug] 349771#349771: *43 chain writer buf fl:0 s:1304 +2025/08/19 10:34:53 [debug] 349771#349771: *43 chain writer buf fl:0 s:184 +2025/08/19 10:34:53 [debug] 349771#349771: *43 chain writer buf fl:0 s:8 +2025/08/19 10:34:53 [debug] 349771#349771: *43 chain writer buf fl:0 s:112 +2025/08/19 10:34:53 [debug] 349771#349771: *43 chain writer buf fl:0 s:8 +2025/08/19 10:34:53 [debug] 349771#349771: *43 chain writer in: 00005CE04361B7F0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 writev: 1616 of 1616 +2025/08/19 10:34:53 [debug] 349771#349771: *43 chain writer out: 0000000000000000 +2025/08/19 10:34:53 [debug] 349771#349771: *43 event timer add: 10: 60000:180886325 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http request count:2 blk:0 +2025/08/19 10:34:53 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:34:53 [debug] 349771#349771: worker cycle +2025/08/19 10:34:53 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:34:53 [debug] 349771#349771: epoll: fd:6 ev:0004 d:000075EA426D11E1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http run request: "/upload?" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http upstream check client, write event:1, "/upload" +2025/08/19 10:34:53 [debug] 349771#349771: epoll: fd:10 ev:0004 d:000075EA426D12C9 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http upstream request: "/upload?" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http upstream dummy handler +2025/08/19 10:34:53 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:34:53 [debug] 349771#349771: worker cycle +2025/08/19 10:34:53 [debug] 349771#349771: epoll timer: 59999 +2025/08/19 10:34:53 [debug] 349771#349771: epoll: fd:10 ev:2005 d:000075EA426D12C9 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http upstream request: "/upload?" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http upstream process header +2025/08/19 10:34:53 [debug] 349771#349771: *43 malloc: 00005CE043611150:4096 +2025/08/19 10:34:53 [debug] 349771#349771: *43 recv: eof:1, avail:-1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 recv: fd:10 4096 of 4096 +2025/08/19 10:34:53 [debug] 349771#349771: *43 recv: avail:40 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 01 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 06 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 00 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 01 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 10 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 08 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 00 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 00 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record length: 4104 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiJhZmFjMjAyY2ZlZTM3OWEwYzdlNzhkOWU0N2FjOGU0NmVjODkxMjZjOTRhMGI5MjIxNGU3NWEwMmMzZTE4YzJlIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQwOTMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI1NDVhMjI3N2RkNGI3YTY2ZTMyMGUxMmNkZDkyYmY2ZmJiZTEzODY5YjViYjVkNjY1YTAzYzgzZDQ1M2JhMmRlIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxNzY5MiJdXSwiY29udGVudCI6IiIsInNpZyI6IjkzM2NlNmNlNGViMTlhMTAxYzIxMDMzYzIyOWRkOTIwZWI4MzlhYzg4OGRkYmUyZTg2YTQwOTgzNzBmYTRmZTY3ODc3ODIxZGU5MzNlOGVlNDYzODU1ZDhlNzY1MTk0YzNkODZmYWVjNzYyZjljMGMwYWYxMjUwMzFkYjdhZDQ4In0=" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Authorization header present, length=DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiJhZmFjMjAyY2ZlZTM3OWEwYzdlNzhkOWU0N2FjOGU0NmVjODkxMjZjOTRhMGI5MjIxNGU3NWEw..." +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"afac202cfee379a0c7e78d9e47ac8e46ec89126c94a0b92214e75a02c3e18c2e","pubkey":"79be..." +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: parse_authorization_header returned: 0" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Successfully parsed authorization header" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Event JSON: {"kind":24242,"id":"afac202cfee379a0c7e78d9e47ac8e46ec89126c94a0b92214e75a02c3e18c2e","pubkey":"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","created_at":1755614093,"tags":[["t","..." +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Successfully parsed JSON event" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Found pubkey in JSON: 79be667ef9dcbbac..." +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Copied pubkey to static buffer: 79be667ef9dcbbac..." +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Final uploader_pubkey after auth parsing: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Successfully read DEBUG: Calculated SHA-256: 545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 posix_memalign: 00005CE043612160:4096 @16 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Saving file to: blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.txt" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Successfully saved DEBUG: Content-Disposition header: attachment; filename="test_blob_1755614092.txt"" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Looking for filename= in Content-Disposition header" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Found filename= at position 12" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Filename value starts with: "test_blob_175561409" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Processing quoted filename" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Quoted filename length: DEBUG: Extracted quoted filename: 'test_blob_1755614092.txt'" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Final filename after extraction: test_blob_1755614092.txt" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: insert_blob_metadata() called for sha256='545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de'" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Opening database at path: db/ginxsom.db" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Database opened successfully for writing" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Preparing SQL: INSERT INTO blobs (sha256, size, type, uploaded_at, uploader_pubkey, filename) VALUES (?, ?, ?, ?, ?, ?)" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: SQL prepared successfully, binding parameters" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Parameter values to bind:" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: 1. sha256 = '545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de'" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: 2. size = 296" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: 3. type = 'text/plain'" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: 4. uploaded_at = 1755614093" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: 5. uploader_pubkey = '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798'" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: 6. filename = 'test_blob_1755614092.txt'" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Binding parameter 1 (sha256)" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Binding parameter 2 (size)" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Binding parameter 3 (type)" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Binding parameter 4 (uploaded_at)" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Binding parameter 5 (uploader_pubkey)" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Binding uploader_pubkey as text: '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798'" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Binding parameter 6 (filename)" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Binding filename as text: 'test_blob_1755614092.txt'" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Parameters bound, executing INSERT" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: INSERT successful" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Database closed, returning 1" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "DEBUG: Blob metadata successfully stored in database" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "Status: 200 OK" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header: "Content-Type: application/json" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi parser: 1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi header done +2025/08/19 10:34:53 [debug] 349771#349771: *43 posix_memalign: 00005CE043613170:4096 @16 +2025/08/19 10:34:53 [debug] 349771#349771: *43 posix_memalign: 00005CE04367A280:4096 @16 +2025/08/19 10:34:53 [debug] 349771#349771: *43 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:34:53 GMT +Content-Type: application/json +Transfer-Encoding: chunked +Connection: keep-alive +DEBUG: FastCGI received request +DEBUG: METHOD=PUT, URI=/upload +DEBUG: handle_upload_request called +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiJhZmFjMjAyY2ZlZTM3OWEwYzdlNzhkOWU0N2FjOGU0NmVjODkxMjZjOTRhMGI5MjIxNGU3NWEwMmMzZTE4YzJlIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQwOTMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI1NDVhMjI3N2RkNGI3YTY2ZTMyMGUxMmNkZDkyYmY2ZmJiZTEzODY5YjViYjVkNjY1YTAzYzgzZDQ1M2JhMmRlIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxNzY5MiJdXSwiY29udGVudCI6IiIsInNpZyI6IjkzM2NlNmNlNGViMTlhMTAxYzIxMDMzYzIyOWRkOTIwZWI4MzlhYzg4OGRkYmUyZTg2YTQwOTgzNzBmYTRmZTY3ODc3ODIxZGU5MzNlOGVlNDYzODU1ZDhlNzY1MTk0YzNkODZmYWVjNzYyZjljMGMwYWYxMjUwMzFkYjdhZDQ4In0= +DEBUG: Authorization header present, length=DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiJhZmFjMjAyY2ZlZTM3OWEwYzdlNzhkOWU0N2FjOGU0NmVjODkxMjZjOTRhMGI5MjIxNGU3NWEw... +DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"afac202cfee379a0c7e78d9e47ac8e46ec89126c94a0b92214e75a02c3e18c2e","pubkey":"79be... +DEBUG: parse_authorization_header returned: 0 +DEBUG: Successfully parsed authorization header +DEBUG: Event JSON: {"kind":24242,"id":"afac202cfee379a0c7e78d9e47ac8e46ec89126c94a0b92214e75a02c3e18c2e","pubkey":"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","created_at":1755614093,"tags":[["t","... +DEBUG: Successfully parsed JSON event +DEBUG: Found pubkey in JSON: 79be667ef9dcbbac... +DEBUG: Copied pubkey to static buffer: 79be667ef9dcbbac... +DEBUG: Final uploader_pubkey after auth parsing: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 +DEBUG: Successfully read DEBUG: Calculated SHA-256: 545a2277dd4b7a66e320e12cdd92bf6fbbe138 +2025/08/19 10:34:53 [debug] 349771#349771: *43 write new buf t:1 f:0 00005CE04367A2A0, pos 00005CE04367A2A0, size: 3991 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http write filter: l:0 f:0 s:3991 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http write filter limit 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 writev: 3991 of 3991 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http write filter 0000000000000000 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http cacheable: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http upstream process upstream +2025/08/19 10:34:53 [debug] 349771#349771: *43 pipe read upstream: 1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 pipe preread: 295 +2025/08/19 10:34:53 [debug] 349771#349771: *43 input buf #0 00005CE043612029 +2025/08/19 10:34:53 [debug] 349771#349771: *43 input buf 00005CE043612029 295 +2025/08/19 10:34:53 [debug] 349771#349771: *43 malloc: 00005CE04367B290:4096 +2025/08/19 10:34:53 [debug] 349771#349771: *43 readv: eof:1, avail:40 +2025/08/19 10:34:53 [debug] 349771#349771: *43 readv: 1, last:4096 +2025/08/19 10:34:53 [debug] 349771#349771: *43 readv: avail:0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 pipe recv chain: 40 +2025/08/19 10:34:53 [debug] 349771#349771: *43 readv: eof:1, avail:0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 readv: 1, last:4056 +2025/08/19 10:34:53 [debug] 349771#349771: *43 pipe recv chain: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 pipe buf in s:1 t:1 f:0 00005CE043611150, pos 00005CE043612029, size: 295 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 pipe buf free s:0 t:1 f:0 00005CE04367B290, pos 00005CE04367B290, size: 40 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 pipe length: -1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 input buf #1 00005CE04367B290 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 01 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 06 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 00 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 01 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 00 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 00 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 00 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 00 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record length: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi closed stdout +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 01 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 03 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 00 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 01 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 00 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 08 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 00 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record byte: 00 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi record length: 8 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http fastcgi sent end request +2025/08/19 10:34:53 [debug] 349771#349771: *43 input buf 00005CE04367B290 16 +2025/08/19 10:34:53 [debug] 349771#349771: *43 pipe write downstream: 1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 pipe write downstream flush in +2025/08/19 10:34:53 [debug] 349771#349771: *43 http output filter "/upload?" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http copy filter: "/upload?" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http postpone filter "/upload?" 00005CE04361B7B0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http chunk: 295 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http chunk: 16 +2025/08/19 10:34:53 [debug] 349771#349771: *43 write new buf t:1 f:0 00005CE043613BB0, pos 00005CE043613BB0, size: 5 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 write new buf t:1 f:0 00005CE043611150, pos 00005CE043612029, size: 295 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 write new buf t:1 f:0 00005CE04367B290, pos 00005CE04367B290, size: 16 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 write new buf t:0 f:0 0000000000000000, pos 00005CE037AC92E8, size: 2 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http write filter: l:0 f:0 s:318 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http copy filter: 0 "/upload?" +2025/08/19 10:34:53 [debug] 349771#349771: *43 pipe write downstream done +2025/08/19 10:34:53 [debug] 349771#349771: *43 event timer: 10, old: 180886325, new: 180886332 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http upstream exit: 0000000000000000 +2025/08/19 10:34:53 [debug] 349771#349771: *43 finalize http upstream request: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 finalize http fastcgi request +2025/08/19 10:34:53 [debug] 349771#349771: *43 free rr peer 1 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 close http upstream connection: 10 +2025/08/19 10:34:53 [debug] 349771#349771: *43 free: 00005CE0435EFF20, unused: 48 +2025/08/19 10:34:53 [debug] 349771#349771: *43 event timer del: 10: 180886325 +2025/08/19 10:34:53 [debug] 349771#349771: *43 reusable connection: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http upstream temp fd: -1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http output filter "/upload?" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http copy filter: "/upload?" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http postpone filter "/upload?" 00005CE043613C98 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http chunk: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 write old buf t:1 f:0 00005CE043613BB0, pos 00005CE043613BB0, size: 5 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 write old buf t:1 f:0 00005CE043611150, pos 00005CE043612029, size: 295 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 write old buf t:1 f:0 00005CE04367B290, pos 00005CE04367B290, size: 16 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 write old buf t:0 f:0 0000000000000000, pos 00005CE037AC92E8, size: 2 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 write new buf t:0 f:0 0000000000000000, pos 00005CE037AC92E5, size: 5 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http write filter: l:1 f:0 s:323 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http write filter limit 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 writev: 323 of 323 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http write filter 0000000000000000 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http copy filter: 0 "/upload?" +2025/08/19 10:34:53 [debug] 349771#349771: *43 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 set http keepalive handler +2025/08/19 10:34:53 [debug] 349771#349771: *43 http close request +2025/08/19 10:34:53 [debug] 349771#349771: *43 http log handler +2025/08/19 10:34:53 [debug] 349771#349771: *43 free: 00005CE04367B290 +2025/08/19 10:34:53 [debug] 349771#349771: *43 free: 00005CE043611150 +2025/08/19 10:34:53 [debug] 349771#349771: *43 free: 00005CE043624610, unused: 3 +2025/08/19 10:34:53 [debug] 349771#349771: *43 free: 00005CE04361A980, unused: 8 +2025/08/19 10:34:53 [debug] 349771#349771: *43 free: 00005CE043610140, unused: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 free: 00005CE043612160, unused: 8 +2025/08/19 10:34:53 [debug] 349771#349771: *43 free: 00005CE043613170, unused: 986 +2025/08/19 10:34:53 [debug] 349771#349771: *43 free: 00005CE04367A280, unused: 73 +2025/08/19 10:34:53 [debug] 349771#349771: *43 free: 00005CE0436090A0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 hc free: 0000000000000000 +2025/08/19 10:34:53 [debug] 349771#349771: *43 hc busy: 0000000000000000 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 tcp_nodelay +2025/08/19 10:34:53 [debug] 349771#349771: *43 reusable connection: 1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 event timer add: 6: 65000:180891332 +2025/08/19 10:34:53 [debug] 349771#349771: *43 post event 00005CE04364A320 +2025/08/19 10:34:53 [debug] 349771#349771: timer delta: 6 +2025/08/19 10:34:53 [debug] 349771#349771: posted event 00005CE04364A320 +2025/08/19 10:34:53 [debug] 349771#349771: *43 delete posted event 00005CE04364A320 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http keepalive handler +2025/08/19 10:34:53 [debug] 349771#349771: *43 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:53 [debug] 349771#349771: *43 recv: eof:0, avail:0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 free: 00005CE0436090A0 +2025/08/19 10:34:53 [debug] 349771#349771: worker cycle +2025/08/19 10:34:53 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:34:53 [debug] 349771#349771: epoll: fd:6 ev:2005 d:000075EA426D11E1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 http keepalive handler +2025/08/19 10:34:53 [debug] 349771#349771: *43 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:53 [debug] 349771#349771: *43 recv: eof:1, avail:-1 +2025/08/19 10:34:53 [debug] 349771#349771: *43 recv: fd:6 0 of 1024 +2025/08/19 10:34:53 [info] 349771#349771: *43 client 127.0.0.1 closed keepalive connection +2025/08/19 10:34:53 [debug] 349771#349771: *43 close http connection: 6 +2025/08/19 10:34:53 [debug] 349771#349771: *43 event timer del: 6: 180891332 +2025/08/19 10:34:53 [debug] 349771#349771: *43 reusable connection: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 free: 00005CE0436090A0 +2025/08/19 10:34:53 [debug] 349771#349771: *43 free: 00005CE043606840, unused: 120 +2025/08/19 10:34:53 [debug] 349771#349771: timer delta: 4 +2025/08/19 10:34:53 [debug] 349771#349771: worker cycle +2025/08/19 10:34:53 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:34:53 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:34:53 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:34:53 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:34:53 [debug] 349771#349771: *45 accept: 127.0.0.1:55696 fd:6 +2025/08/19 10:34:53 [debug] 349771#349771: *45 event timer add: 6: 60000:180886342 +2025/08/19 10:34:53 [debug] 349771#349771: *45 reusable connection: 1 +2025/08/19 10:34:53 [debug] 349771#349771: *45 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:34:53 [debug] 349771#349771: timer delta: 6 +2025/08/19 10:34:53 [debug] 349771#349771: worker cycle +2025/08/19 10:34:53 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:34:53 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E0 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http wait request handler +2025/08/19 10:34:53 [debug] 349771#349771: *45 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:53 [debug] 349771#349771: *45 recv: eof:0, avail:-1 +2025/08/19 10:34:53 [debug] 349771#349771: *45 recv: fd:6 142 of 1024 +2025/08/19 10:34:53 [debug] 349771#349771: *45 reusable connection: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *45 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http process request line +2025/08/19 10:34:53 [debug] 349771#349771: *45 http request line: "GET /545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de HTTP/1.1" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http uri: "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http args: "" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http exten: "" +2025/08/19 10:34:53 [debug] 349771#349771: *45 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http process request header line +2025/08/19 10:34:53 [debug] 349771#349771: *45 http header: "Host: localhost:9001" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http header: "Accept: */*" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http header done +2025/08/19 10:34:53 [debug] 349771#349771: *45 event timer del: 6: 180886342 +2025/08/19 10:34:53 [debug] 349771#349771: *45 generic phase: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *45 rewrite phase: 1 +2025/08/19 10:34:53 [debug] 349771#349771: *45 test location: "/health" +2025/08/19 10:34:53 [debug] 349771#349771: *45 test location: "/debug/list" +2025/08/19 10:34:53 [debug] 349771#349771: *45 test location: "/" +2025/08/19 10:34:53 [debug] 349771#349771: *45 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:34:53 [debug] 349771#349771: *45 using configuration "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http cl:-1 max:104857600 +2025/08/19 10:34:53 [debug] 349771#349771: *45 rewrite phase: 3 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script var +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script var: "GET" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script value: "HEAD" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script equal +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script equal: no +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script if +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script if: false +2025/08/19 10:34:53 [debug] 349771#349771: *45 post rewrite phase: 4 +2025/08/19 10:34:53 [debug] 349771#349771: *45 generic phase: 5 +2025/08/19 10:34:53 [debug] 349771#349771: *45 generic phase: 6 +2025/08/19 10:34:53 [debug] 349771#349771: *45 generic phase: 7 +2025/08/19 10:34:53 [debug] 349771#349771: *45 access phase: 8 +2025/08/19 10:34:53 [debug] 349771#349771: *45 access phase: 9 +2025/08/19 10:34:53 [debug] 349771#349771: *45 access phase: 10 +2025/08/19 10:34:53 [debug] 349771#349771: *45 post access phase: 11 +2025/08/19 10:34:53 [debug] 349771#349771: *45 generic phase: 12 +2025/08/19 10:34:53 [debug] 349771#349771: *45 try files handler +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: "/" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script capture: "545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: ".jpg" +2025/08/19 10:34:53 [debug] 349771#349771: *45 trying to use file: "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.jpg" "./blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.jpg" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: "/" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script capture: "545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: ".jpeg" +2025/08/19 10:34:53 [debug] 349771#349771: *45 trying to use file: "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.jpeg" "./blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.jpeg" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: "/" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script capture: "545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: ".png" +2025/08/19 10:34:53 [debug] 349771#349771: *45 trying to use file: "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.png" "./blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.png" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: "/" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script capture: "545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: ".webp" +2025/08/19 10:34:53 [debug] 349771#349771: *45 trying to use file: "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.webp" "./blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.webp" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: "/" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script capture: "545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: ".gif" +2025/08/19 10:34:53 [debug] 349771#349771: *45 trying to use file: "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.gif" "./blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.gif" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: "/" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script capture: "545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: ".pdf" +2025/08/19 10:34:53 [debug] 349771#349771: *45 trying to use file: "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.pdf" "./blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.pdf" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: "/" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script capture: "545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: ".mp4" +2025/08/19 10:34:53 [debug] 349771#349771: *45 trying to use file: "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.mp4" "./blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.mp4" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: "/" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script capture: "545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: ".mp3" +2025/08/19 10:34:53 [debug] 349771#349771: *45 trying to use file: "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.mp3" "./blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.mp3" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: "/" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script capture: "545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http script copy: ".txt" +2025/08/19 10:34:53 [debug] 349771#349771: *45 trying to use file: "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.txt" "./blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.txt" +2025/08/19 10:34:53 [debug] 349771#349771: *45 try file uri: "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.txt" +2025/08/19 10:34:53 [debug] 349771#349771: *45 generic phase: 13 +2025/08/19 10:34:53 [debug] 349771#349771: *45 content phase: 14 +2025/08/19 10:34:53 [debug] 349771#349771: *45 content phase: 15 +2025/08/19 10:34:53 [debug] 349771#349771: *45 content phase: 16 +2025/08/19 10:34:53 [debug] 349771#349771: *45 content phase: 17 +2025/08/19 10:34:53 [debug] 349771#349771: *45 content phase: 18 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http filename: "./blobs/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.txt" +2025/08/19 10:34:53 [debug] 349771#349771: *45 add cleanup: 00005CE04361AD60 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http static fd: 10 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http set discard body +2025/08/19 10:34:53 [debug] 349771#349771: *45 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:34:53 GMT +Content-Type: text/plain +Content-Length: 296 +Last-Modified: Tue, 19 Aug 2025 14:34:53 GMT +Connection: keep-alive +ETag: "68a48b8d-128" +Cache-Control: public, max-age=31536000, immutable +X-Content-Type-Options: nosniff +X-Frame-Options: DENY +X-XSS-Protection: 1; mode=block +Accept-Ranges: bytes + +2025/08/19 10:34:53 [debug] 349771#349771: *45 write new buf t:1 f:0 00005CE04361AF50, pos 00005CE04361AF50, size: 389 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http write filter: l:0 f:0 s:389 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http output filter "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.txt?" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http copy filter: "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.txt?" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http postpone filter "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.txt?" 00007FFDD38FD160 +2025/08/19 10:34:53 [debug] 349771#349771: *45 write old buf t:1 f:0 00005CE04361AF50, pos 00005CE04361AF50, size: 389 file: 0, size: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *45 write new buf t:0 f:1 0000000000000000, pos 0000000000000000, size: 0 file: 0, size: 296 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http write filter: l:1 f:0 s:685 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http write filter limit 0 +2025/08/19 10:34:53 [debug] 349771#349771: *45 tcp_nopush +2025/08/19 10:34:53 [debug] 349771#349771: *45 writev: 389 of 389 +2025/08/19 10:34:53 [debug] 349771#349771: *45 sendfile: @0 296 +2025/08/19 10:34:53 [debug] 349771#349771: *45 sendfile: 296 of 296 @0 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http write filter 0000000000000000 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http copy filter: 0 "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.txt?" +2025/08/19 10:34:53 [debug] 349771#349771: *45 http finalize request: 0, "/545a2277dd4b7a66e320e12cdd92bf6fbbe13869b5bb5d665a03c83d453ba2de.txt?" a:1, c:1 +2025/08/19 10:34:53 [debug] 349771#349771: *45 set http keepalive handler +2025/08/19 10:34:53 [debug] 349771#349771: *45 http close request +2025/08/19 10:34:53 [debug] 349771#349771: *45 http log handler +2025/08/19 10:34:53 [debug] 349771#349771: *45 run cleanup: 00005CE04361AD60 +2025/08/19 10:34:53 [debug] 349771#349771: *45 file cleanup: fd:10 +2025/08/19 10:34:53 [debug] 349771#349771: *45 free: 00005CE043624610, unused: 5 +2025/08/19 10:34:53 [debug] 349771#349771: *45 free: 00005CE04361A980, unused: 1848 +2025/08/19 10:34:53 [debug] 349771#349771: *45 free: 00005CE0436090A0 +2025/08/19 10:34:53 [debug] 349771#349771: *45 hc free: 0000000000000000 +2025/08/19 10:34:53 [debug] 349771#349771: *45 hc busy: 0000000000000000 0 +2025/08/19 10:34:53 [debug] 349771#349771: *45 reusable connection: 1 +2025/08/19 10:34:53 [debug] 349771#349771: *45 event timer add: 6: 65000:180891342 +2025/08/19 10:34:53 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:34:53 [debug] 349771#349771: worker cycle +2025/08/19 10:34:53 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:34:53 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E0 +2025/08/19 10:34:53 [debug] 349771#349771: *45 http keepalive handler +2025/08/19 10:34:53 [debug] 349771#349771: *45 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:53 [debug] 349771#349771: *45 recv: eof:1, avail:-1 +2025/08/19 10:34:53 [debug] 349771#349771: *45 recv: fd:6 0 of 1024 +2025/08/19 10:34:53 [info] 349771#349771: *45 client 127.0.0.1 closed keepalive connection +2025/08/19 10:34:53 [debug] 349771#349771: *45 close http connection: 6 +2025/08/19 10:34:53 [debug] 349771#349771: *45 event timer del: 6: 180891342 +2025/08/19 10:34:53 [debug] 349771#349771: *45 reusable connection: 0 +2025/08/19 10:34:53 [debug] 349771#349771: *45 free: 00005CE0436090A0 +2025/08/19 10:34:53 [debug] 349771#349771: *45 free: 00005CE043606840, unused: 136 +2025/08/19 10:34:53 [debug] 349771#349771: timer delta: 5 +2025/08/19 10:34:53 [debug] 349771#349771: worker cycle +2025/08/19 10:34:53 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:34:56 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:34:56 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:34:56 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *46 accept: 127.0.0.1:55702 fd:6 +2025/08/19 10:34:56 [debug] 349771#349771: *46 event timer add: 6: 60000:180889303 +2025/08/19 10:34:56 [debug] 349771#349771: *46 reusable connection: 1 +2025/08/19 10:34:56 [debug] 349771#349771: *46 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:34:56 [debug] 349771#349771: timer delta: 2956 +2025/08/19 10:34:56 [debug] 349771#349771: worker cycle +2025/08/19 10:34:56 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:34:56 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E1 +2025/08/19 10:34:56 [debug] 349771#349771: *46 http wait request handler +2025/08/19 10:34:56 [debug] 349771#349771: *46 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:56 [debug] 349771#349771: *46 recv: eof:0, avail:-1 +2025/08/19 10:34:56 [debug] 349771#349771: *46 recv: fd:6 84 of 1024 +2025/08/19 10:34:56 [debug] 349771#349771: *46 reusable connection: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *46 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *46 http process request line +2025/08/19 10:34:56 [debug] 349771#349771: *46 http request line: "GET /health HTTP/1.1" +2025/08/19 10:34:56 [debug] 349771#349771: *46 http uri: "/health" +2025/08/19 10:34:56 [debug] 349771#349771: *46 http args: "" +2025/08/19 10:34:56 [debug] 349771#349771: *46 http exten: "" +2025/08/19 10:34:56 [debug] 349771#349771: *46 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *46 http process request header line +2025/08/19 10:34:56 [debug] 349771#349771: *46 http header: "Host: localhost:9001" +2025/08/19 10:34:56 [debug] 349771#349771: *46 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:34:56 [debug] 349771#349771: *46 http header: "Accept: */*" +2025/08/19 10:34:56 [debug] 349771#349771: *46 http header done +2025/08/19 10:34:56 [debug] 349771#349771: *46 event timer del: 6: 180889303 +2025/08/19 10:34:56 [debug] 349771#349771: *46 generic phase: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *46 rewrite phase: 1 +2025/08/19 10:34:56 [debug] 349771#349771: *46 test location: "/health" +2025/08/19 10:34:56 [debug] 349771#349771: *46 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:34:56 [debug] 349771#349771: *46 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:34:56 [debug] 349771#349771: *46 using configuration "/health" +2025/08/19 10:34:56 [debug] 349771#349771: *46 http cl:-1 max:104857600 +2025/08/19 10:34:56 [debug] 349771#349771: *46 rewrite phase: 3 +2025/08/19 10:34:56 [debug] 349771#349771: *46 http set discard body +2025/08/19 10:34:56 [debug] 349771#349771: *46 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:34:56 GMT +Content-Type: application/octet-stream +Content-Length: 3 +Connection: keep-alive +Content-Type: text/plain + +2025/08/19 10:34:56 [debug] 349771#349771: *46 write new buf t:1 f:0 00005CE04361AD60, pos 00005CE04361AD60, size: 196 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *46 http write filter: l:0 f:0 s:196 +2025/08/19 10:34:56 [debug] 349771#349771: *46 http output filter "/health?" +2025/08/19 10:34:56 [debug] 349771#349771: *46 http copy filter: "/health?" +2025/08/19 10:34:56 [debug] 349771#349771: *46 http postpone filter "/health?" 00007FFDD38FD1C0 +2025/08/19 10:34:56 [debug] 349771#349771: *46 write old buf t:1 f:0 00005CE04361AD60, pos 00005CE04361AD60, size: 196 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *46 write new buf t:0 f:0 0000000000000000, pos 00005CE04363AD7A, size: 3 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *46 http write filter: l:1 f:0 s:199 +2025/08/19 10:34:56 [debug] 349771#349771: *46 http write filter limit 0 +2025/08/19 10:34:56 [debug] 349771#349771: *46 writev: 199 of 199 +2025/08/19 10:34:56 [debug] 349771#349771: *46 http write filter 0000000000000000 +2025/08/19 10:34:56 [debug] 349771#349771: *46 http copy filter: 0 "/health?" +2025/08/19 10:34:56 [debug] 349771#349771: *46 http finalize request: 0, "/health?" a:1, c:1 +2025/08/19 10:34:56 [debug] 349771#349771: *46 set http keepalive handler +2025/08/19 10:34:56 [debug] 349771#349771: *46 http close request +2025/08/19 10:34:56 [debug] 349771#349771: *46 http log handler +2025/08/19 10:34:56 [debug] 349771#349771: *46 free: 00005CE043624610, unused: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *46 free: 00005CE04361A980, unused: 2736 +2025/08/19 10:34:56 [debug] 349771#349771: *46 free: 00005CE0436090A0 +2025/08/19 10:34:56 [debug] 349771#349771: *46 hc free: 0000000000000000 +2025/08/19 10:34:56 [debug] 349771#349771: *46 hc busy: 0000000000000000 0 +2025/08/19 10:34:56 [debug] 349771#349771: *46 tcp_nodelay +2025/08/19 10:34:56 [debug] 349771#349771: *46 reusable connection: 1 +2025/08/19 10:34:56 [debug] 349771#349771: *46 event timer add: 6: 65000:180894304 +2025/08/19 10:34:56 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:34:56 [debug] 349771#349771: worker cycle +2025/08/19 10:34:56 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:34:56 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E1 +2025/08/19 10:34:56 [debug] 349771#349771: *46 http keepalive handler +2025/08/19 10:34:56 [debug] 349771#349771: *46 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:56 [debug] 349771#349771: *46 recv: eof:1, avail:-1 +2025/08/19 10:34:56 [debug] 349771#349771: *46 recv: fd:6 0 of 1024 +2025/08/19 10:34:56 [info] 349771#349771: *46 client 127.0.0.1 closed keepalive connection +2025/08/19 10:34:56 [debug] 349771#349771: *46 close http connection: 6 +2025/08/19 10:34:56 [debug] 349771#349771: *46 event timer del: 6: 180894304 +2025/08/19 10:34:56 [debug] 349771#349771: *46 reusable connection: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *46 free: 00005CE0436090A0 +2025/08/19 10:34:56 [debug] 349771#349771: *46 free: 00005CE043606840, unused: 136 +2025/08/19 10:34:56 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:34:56 [debug] 349771#349771: worker cycle +2025/08/19 10:34:56 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:34:56 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:34:56 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:34:56 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *47 accept: 127.0.0.1:55712 fd:6 +2025/08/19 10:34:56 [debug] 349771#349771: *47 event timer add: 6: 60000:180889586 +2025/08/19 10:34:56 [debug] 349771#349771: *47 reusable connection: 1 +2025/08/19 10:34:56 [debug] 349771#349771: *47 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:34:56 [debug] 349771#349771: timer delta: 282 +2025/08/19 10:34:56 [debug] 349771#349771: worker cycle +2025/08/19 10:34:56 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:34:56 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http wait request handler +2025/08/19 10:34:56 [debug] 349771#349771: *47 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:56 [debug] 349771#349771: *47 recv: eof:0, avail:-1 +2025/08/19 10:34:56 [debug] 349771#349771: *47 recv: fd:6 1024 of 1024 +2025/08/19 10:34:56 [debug] 349771#349771: *47 recv: avail:112 +2025/08/19 10:34:56 [debug] 349771#349771: *47 reusable connection: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http process request line +2025/08/19 10:34:56 [debug] 349771#349771: *47 http request line: "PUT /upload HTTP/1.1" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http uri: "/upload" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http args: "" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http exten: "" +2025/08/19 10:34:56 [debug] 349771#349771: *47 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http process request header line +2025/08/19 10:34:56 [debug] 349771#349771: *47 http header: "Host: localhost:9001" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http header: "Accept: */*" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIyOGY1Yjg3NjA3YzExMWU1NTNiOTY2MjA5ODBlNDlhZGUwN2NkMjFlNGJkOGU5MjgwMGM4ZjRlYjc2MTE1YzMyIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQwOTYsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI5ODY4MTkwMGJkOTdhYWJjNGE3ZDIzNDFiYzUyY2M4ZDY4N2U3YzdiNGRiZDA4OTNmNjQ3MDI0MjYxNGQxMTAwIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxNzY5NiJdXSwiY29udGVudCI6IiIsInNpZyI6IjM1NWMxOWU3YWU1M2Q0YjBjNWZhYTlmYzEzNDI3YTI2MmFjZGQxMWFhMmM2OGM1N2Y5YTRjNDM0YTU2NzBhNWMzYzcxOGVmOGRlMzg5MWFmYjgxODUzNDkxZDA1MDZjODgyM2Q2YjRjMWQwZTg1OGNlODc0ZTAyNjE2MDgxZTFjIn0=" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http header: "Content-Type: text/plain" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http header: "Content-Disposition: attachment; filename="test_blob_1755614096.txt"" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http header: "Content-Length: 296" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http header done +2025/08/19 10:34:56 [debug] 349771#349771: *47 event timer del: 6: 180889586 +2025/08/19 10:34:56 [debug] 349771#349771: *47 generic phase: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 rewrite phase: 1 +2025/08/19 10:34:56 [debug] 349771#349771: *47 test location: "/health" +2025/08/19 10:34:56 [debug] 349771#349771: *47 test location: "/upload" +2025/08/19 10:34:56 [debug] 349771#349771: *47 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:34:56 [debug] 349771#349771: *47 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:34:56 [debug] 349771#349771: *47 using configuration "/upload" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http cl:296 max:104857600 +2025/08/19 10:34:56 [debug] 349771#349771: *47 rewrite phase: 3 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "PUT" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script regex: "^(PUT)$" +2025/08/19 10:34:56 [notice] 349771#349771: *47 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script if +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script if: false +2025/08/19 10:34:56 [debug] 349771#349771: *47 post rewrite phase: 4 +2025/08/19 10:34:56 [debug] 349771#349771: *47 generic phase: 5 +2025/08/19 10:34:56 [debug] 349771#349771: *47 generic phase: 6 +2025/08/19 10:34:56 [debug] 349771#349771: *47 generic phase: 7 +2025/08/19 10:34:56 [debug] 349771#349771: *47 access phase: 8 +2025/08/19 10:34:56 [debug] 349771#349771: *47 access phase: 9 +2025/08/19 10:34:56 [debug] 349771#349771: *47 access phase: 10 +2025/08/19 10:34:56 [debug] 349771#349771: *47 post access phase: 11 +2025/08/19 10:34:56 [debug] 349771#349771: *47 generic phase: 12 +2025/08/19 10:34:56 [debug] 349771#349771: *47 generic phase: 13 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http client request body preread 184 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http request body content length filter +2025/08/19 10:34:56 [debug] 349771#349771: *47 http body new buf t:1 f:0 00005CE0436093E8, pos 00005CE0436093E8, size: 184 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http read client request body +2025/08/19 10:34:56 [debug] 349771#349771: *47 recv: eof:0, avail:112 +2025/08/19 10:34:56 [debug] 349771#349771: *47 recv: fd:6 112 of 112 +2025/08/19 10:34:56 [debug] 349771#349771: *47 recv: avail:0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http client request body recv 112 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http body new buf t:1 f:0 00005CE04361B410, pos 00005CE04361B410, size: 112 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http client request body rest 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http init upstream, client timer: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 10:34:56 [debug] 349771#349771: *47 posix_memalign: 00005CE043610140:4096 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "QUERY_STRING" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "QUERY_STRING: " +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "REQUEST_METHOD" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "PUT" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "CONTENT_TYPE" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "text/plain" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "CONTENT_LENGTH" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "296" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "SCRIPT_NAME" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "/upload" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "REQUEST_URI" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "/upload" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "DOCUMENT_URI" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "/upload" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "DOCUMENT_ROOT" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "./blobs" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "SERVER_PROTOCOL" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "HTTP/1.1" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "REQUEST_SCHEME" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "http" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "GATEWAY_INTERFACE" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "CGI/1.1" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "SERVER_SOFTWARE" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "nginx/" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "1.18.0" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "REMOTE_ADDR" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "127.0.0.1" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "REMOTE_PORT" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "55712" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "REMOTE_PORT: 55712" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "SERVER_ADDR" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "127.0.0.1" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "SERVER_PORT" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "9001" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "SERVER_NAME" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "localhost" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "REDIRECT_STATUS" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "200" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "SCRIPT_FILENAME" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script var: "./blobs" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http script copy: "/ginxsom.fcgi" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIyOGY1Yjg3NjA3YzExMWU1NTNiOTY2MjA5ODBlNDlhZGUwN2NkMjFlNGJkOGU5MjgwMGM4ZjRlYjc2MTE1YzMyIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQwOTYsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI5ODY4MTkwMGJkOTdhYWJjNGE3ZDIzNDFiYzUyY2M4ZDY4N2U3YzdiNGRiZDA4OTNmNjQ3MDI0MjYxNGQxMTAwIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxNzY5NiJdXSwiY29udGVudCI6IiIsInNpZyI6IjM1NWMxOWU3YWU1M2Q0YjBjNWZhYTlmYzEzNDI3YTI2MmFjZGQxMWFhMmM2OGM1N2Y5YTRjNDM0YTU2NzBhNWMzYzcxOGVmOGRlMzg5MWFmYjgxODUzNDkxZDA1MDZjODgyM2Q2YjRjMWQwZTg1OGNlODc0ZTAyNjE2MDgxZTFjIn0=" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755614096.txt"" +2025/08/19 10:34:56 [debug] 349771#349771: *47 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http cleanup add: 00005CE04361B760 +2025/08/19 10:34:56 [debug] 349771#349771: *47 get rr peer, try: 1 +2025/08/19 10:34:56 [debug] 349771#349771: *47 stream socket 10 +2025/08/19 10:34:56 [debug] 349771#349771: *47 epoll add connection: fd:10 ev:80002005 +2025/08/19 10:34:56 [debug] 349771#349771: *47 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #48 +2025/08/19 10:34:56 [debug] 349771#349771: *47 connected +2025/08/19 10:34:56 [debug] 349771#349771: *47 http upstream connect: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 posix_memalign: 00005CE0435EFF20:128 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http upstream send request +2025/08/19 10:34:56 [debug] 349771#349771: *47 http upstream send request body +2025/08/19 10:34:56 [debug] 349771#349771: *47 chain writer buf fl:0 s:1304 +2025/08/19 10:34:56 [debug] 349771#349771: *47 chain writer buf fl:0 s:184 +2025/08/19 10:34:56 [debug] 349771#349771: *47 chain writer buf fl:0 s:8 +2025/08/19 10:34:56 [debug] 349771#349771: *47 chain writer buf fl:0 s:112 +2025/08/19 10:34:56 [debug] 349771#349771: *47 chain writer buf fl:0 s:8 +2025/08/19 10:34:56 [debug] 349771#349771: *47 chain writer in: 00005CE04361B7F0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 writev: 1616 of 1616 +2025/08/19 10:34:56 [debug] 349771#349771: *47 chain writer out: 0000000000000000 +2025/08/19 10:34:56 [debug] 349771#349771: *47 event timer add: 10: 60000:180889586 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http request count:2 blk:0 +2025/08/19 10:34:56 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:34:56 [debug] 349771#349771: worker cycle +2025/08/19 10:34:56 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:34:56 [debug] 349771#349771: epoll: fd:6 ev:0004 d:000075EA426D11E0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http run request: "/upload?" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http upstream check client, write event:1, "/upload" +2025/08/19 10:34:56 [debug] 349771#349771: epoll: fd:10 ev:0004 d:000075EA426D12C8 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http upstream request: "/upload?" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http upstream dummy handler +2025/08/19 10:34:56 [debug] 349771#349771: timer delta: 3 +2025/08/19 10:34:56 [debug] 349771#349771: worker cycle +2025/08/19 10:34:56 [debug] 349771#349771: epoll timer: 59997 +2025/08/19 10:34:56 [debug] 349771#349771: epoll: fd:10 ev:2005 d:000075EA426D12C8 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http upstream request: "/upload?" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http upstream process header +2025/08/19 10:34:56 [debug] 349771#349771: *47 malloc: 00005CE043611150:4096 +2025/08/19 10:34:56 [debug] 349771#349771: *47 recv: eof:1, avail:-1 +2025/08/19 10:34:56 [debug] 349771#349771: *47 recv: fd:10 4096 of 4096 +2025/08/19 10:34:56 [debug] 349771#349771: *47 recv: avail:40 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 01 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 06 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 00 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 01 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 10 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 08 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 00 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 00 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record length: 4104 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIyOGY1Yjg3NjA3YzExMWU1NTNiOTY2MjA5ODBlNDlhZGUwN2NkMjFlNGJkOGU5MjgwMGM4ZjRlYjc2MTE1YzMyIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQwOTYsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI5ODY4MTkwMGJkOTdhYWJjNGE3ZDIzNDFiYzUyY2M4ZDY4N2U3YzdiNGRiZDA4OTNmNjQ3MDI0MjYxNGQxMTAwIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxNzY5NiJdXSwiY29udGVudCI6IiIsInNpZyI6IjM1NWMxOWU3YWU1M2Q0YjBjNWZhYTlmYzEzNDI3YTI2MmFjZGQxMWFhMmM2OGM1N2Y5YTRjNDM0YTU2NzBhNWMzYzcxOGVmOGRlMzg5MWFmYjgxODUzNDkxZDA1MDZjODgyM2Q2YjRjMWQwZTg1OGNlODc0ZTAyNjE2MDgxZTFjIn0=" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Authorization header present, length=DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiIyOGY1Yjg3NjA3YzExMWU1NTNiOTY2MjA5ODBlNDlhZGUwN2NkMjFlNGJkOGU5MjgwMGM4ZjRl..." +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"28f5b87607c111e553b96620980e49ade07cd21e4bd8e92800c8f4eb76115c32","pubkey":"79be..." +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: parse_authorization_header returned: 0" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Successfully parsed authorization header" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Event JSON: {"kind":24242,"id":"28f5b87607c111e553b96620980e49ade07cd21e4bd8e92800c8f4eb76115c32","pubkey":"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","created_at":1755614096,"tags":[["t","..." +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Successfully parsed JSON event" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Found pubkey in JSON: 79be667ef9dcbbac..." +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Copied pubkey to static buffer: 79be667ef9dcbbac..." +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Final uploader_pubkey after auth parsing: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Successfully read DEBUG: Calculated SHA-256: 98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 posix_memalign: 00005CE043612160:4096 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Saving file to: blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.txt" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Successfully saved DEBUG: Content-Disposition header: attachment; filename="test_blob_1755614096.txt"" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Looking for filename= in Content-Disposition header" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Found filename= at position 12" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Filename value starts with: "test_blob_175561409" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Processing quoted filename" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Quoted filename length: DEBUG: Extracted quoted filename: 'test_blob_1755614096.txt'" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Final filename after extraction: test_blob_1755614096.txt" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: insert_blob_metadata() called for sha256='98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100'" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Opening database at path: db/ginxsom.db" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Database opened successfully for writing" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Preparing SQL: INSERT INTO blobs (sha256, size, type, uploaded_at, uploader_pubkey, filename) VALUES (?, ?, ?, ?, ?, ?)" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: SQL prepared successfully, binding parameters" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Parameter values to bind:" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: 1. sha256 = '98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100'" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: 2. size = 296" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: 3. type = 'text/plain'" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: 4. uploaded_at = 1755614096" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: 5. uploader_pubkey = '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798'" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: 6. filename = 'test_blob_1755614096.txt'" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Binding parameter 1 (sha256)" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Binding parameter 2 (size)" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Binding parameter 3 (type)" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Binding parameter 4 (uploaded_at)" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Binding parameter 5 (uploader_pubkey)" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Binding uploader_pubkey as text: '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798'" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Binding parameter 6 (filename)" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Binding filename as text: 'test_blob_1755614096.txt'" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Parameters bound, executing INSERT" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: INSERT successful" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Database closed, returning 1" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "DEBUG: Blob metadata successfully stored in database" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "Status: 200 OK" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header: "Content-Type: application/json" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi parser: 1 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi header done +2025/08/19 10:34:56 [debug] 349771#349771: *47 posix_memalign: 00005CE043613170:4096 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *47 posix_memalign: 00005CE04367A280:4096 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *47 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:34:56 GMT +Content-Type: application/json +Transfer-Encoding: chunked +Connection: keep-alive +DEBUG: FastCGI received request +DEBUG: METHOD=PUT, URI=/upload +DEBUG: handle_upload_request called +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIyOGY1Yjg3NjA3YzExMWU1NTNiOTY2MjA5ODBlNDlhZGUwN2NkMjFlNGJkOGU5MjgwMGM4ZjRlYjc2MTE1YzMyIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQwOTYsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI5ODY4MTkwMGJkOTdhYWJjNGE3ZDIzNDFiYzUyY2M4ZDY4N2U3YzdiNGRiZDA4OTNmNjQ3MDI0MjYxNGQxMTAwIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxNzY5NiJdXSwiY29udGVudCI6IiIsInNpZyI6IjM1NWMxOWU3YWU1M2Q0YjBjNWZhYTlmYzEzNDI3YTI2MmFjZGQxMWFhMmM2OGM1N2Y5YTRjNDM0YTU2NzBhNWMzYzcxOGVmOGRlMzg5MWFmYjgxODUzNDkxZDA1MDZjODgyM2Q2YjRjMWQwZTg1OGNlODc0ZTAyNjE2MDgxZTFjIn0= +DEBUG: Authorization header present, length=DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiIyOGY1Yjg3NjA3YzExMWU1NTNiOTY2MjA5ODBlNDlhZGUwN2NkMjFlNGJkOGU5MjgwMGM4ZjRl... +DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"28f5b87607c111e553b96620980e49ade07cd21e4bd8e92800c8f4eb76115c32","pubkey":"79be... +DEBUG: parse_authorization_header returned: 0 +DEBUG: Successfully parsed authorization header +DEBUG: Event JSON: {"kind":24242,"id":"28f5b87607c111e553b96620980e49ade07cd21e4bd8e92800c8f4eb76115c32","pubkey":"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","created_at":1755614096,"tags":[["t","... +DEBUG: Successfully parsed JSON event +DEBUG: Found pubkey in JSON: 79be667ef9dcbbac... +DEBUG: Copied pubkey to static buffer: 79be667ef9dcbbac... +DEBUG: Final uploader_pubkey after auth parsing: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 +DEBUG: Successfully read DEBUG: Calculated SHA-256: 98681900bd97aabc4a7d2341bc52cc8d687e7c +2025/08/19 10:34:56 [debug] 349771#349771: *47 write new buf t:1 f:0 00005CE04367A2A0, pos 00005CE04367A2A0, size: 3991 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http write filter: l:0 f:0 s:3991 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http write filter limit 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 writev: 3991 of 3991 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http write filter 0000000000000000 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http cacheable: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http upstream process upstream +2025/08/19 10:34:56 [debug] 349771#349771: *47 pipe read upstream: 1 +2025/08/19 10:34:56 [debug] 349771#349771: *47 pipe preread: 295 +2025/08/19 10:34:56 [debug] 349771#349771: *47 input buf #0 00005CE043612029 +2025/08/19 10:34:56 [debug] 349771#349771: *47 input buf 00005CE043612029 295 +2025/08/19 10:34:56 [debug] 349771#349771: *47 malloc: 00005CE04367B290:4096 +2025/08/19 10:34:56 [debug] 349771#349771: *47 readv: eof:1, avail:40 +2025/08/19 10:34:56 [debug] 349771#349771: *47 readv: 1, last:4096 +2025/08/19 10:34:56 [debug] 349771#349771: *47 readv: avail:0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 pipe recv chain: 40 +2025/08/19 10:34:56 [debug] 349771#349771: *47 readv: eof:1, avail:0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 readv: 1, last:4056 +2025/08/19 10:34:56 [debug] 349771#349771: *47 pipe recv chain: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 pipe buf in s:1 t:1 f:0 00005CE043611150, pos 00005CE043612029, size: 295 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 pipe buf free s:0 t:1 f:0 00005CE04367B290, pos 00005CE04367B290, size: 40 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 pipe length: -1 +2025/08/19 10:34:56 [debug] 349771#349771: *47 input buf #1 00005CE04367B290 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 01 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 06 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 00 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 01 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 00 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 00 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 00 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 00 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record length: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi closed stdout +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 01 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 03 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 00 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 01 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 00 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 08 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 00 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record byte: 00 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi record length: 8 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http fastcgi sent end request +2025/08/19 10:34:56 [debug] 349771#349771: *47 input buf 00005CE04367B290 16 +2025/08/19 10:34:56 [debug] 349771#349771: *47 pipe write downstream: 1 +2025/08/19 10:34:56 [debug] 349771#349771: *47 pipe write downstream flush in +2025/08/19 10:34:56 [debug] 349771#349771: *47 http output filter "/upload?" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http copy filter: "/upload?" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http postpone filter "/upload?" 00005CE04361B7B0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http chunk: 295 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http chunk: 16 +2025/08/19 10:34:56 [debug] 349771#349771: *47 write new buf t:1 f:0 00005CE043613BB0, pos 00005CE043613BB0, size: 5 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 write new buf t:1 f:0 00005CE043611150, pos 00005CE043612029, size: 295 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 write new buf t:1 f:0 00005CE04367B290, pos 00005CE04367B290, size: 16 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 write new buf t:0 f:0 0000000000000000, pos 00005CE037AC92E8, size: 2 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http write filter: l:0 f:0 s:318 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http copy filter: 0 "/upload?" +2025/08/19 10:34:56 [debug] 349771#349771: *47 pipe write downstream done +2025/08/19 10:34:56 [debug] 349771#349771: *47 event timer: 10, old: 180889586, new: 180889591 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http upstream exit: 0000000000000000 +2025/08/19 10:34:56 [debug] 349771#349771: *47 finalize http upstream request: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 finalize http fastcgi request +2025/08/19 10:34:56 [debug] 349771#349771: *47 free rr peer 1 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 close http upstream connection: 10 +2025/08/19 10:34:56 [debug] 349771#349771: *47 free: 00005CE0435EFF20, unused: 48 +2025/08/19 10:34:56 [debug] 349771#349771: *47 event timer del: 10: 180889586 +2025/08/19 10:34:56 [debug] 349771#349771: *47 reusable connection: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http upstream temp fd: -1 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http output filter "/upload?" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http copy filter: "/upload?" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http postpone filter "/upload?" 00005CE043613C98 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http chunk: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 write old buf t:1 f:0 00005CE043613BB0, pos 00005CE043613BB0, size: 5 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 write old buf t:1 f:0 00005CE043611150, pos 00005CE043612029, size: 295 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 write old buf t:1 f:0 00005CE04367B290, pos 00005CE04367B290, size: 16 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 write old buf t:0 f:0 0000000000000000, pos 00005CE037AC92E8, size: 2 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 write new buf t:0 f:0 0000000000000000, pos 00005CE037AC92E5, size: 5 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http write filter: l:1 f:0 s:323 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http write filter limit 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 writev: 323 of 323 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http write filter 0000000000000000 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http copy filter: 0 "/upload?" +2025/08/19 10:34:56 [debug] 349771#349771: *47 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 10:34:56 [debug] 349771#349771: *47 set http keepalive handler +2025/08/19 10:34:56 [debug] 349771#349771: *47 http close request +2025/08/19 10:34:56 [debug] 349771#349771: *47 http log handler +2025/08/19 10:34:56 [debug] 349771#349771: *47 free: 00005CE04367B290 +2025/08/19 10:34:56 [debug] 349771#349771: *47 free: 00005CE043611150 +2025/08/19 10:34:56 [debug] 349771#349771: *47 free: 00005CE043624610, unused: 3 +2025/08/19 10:34:56 [debug] 349771#349771: *47 free: 00005CE04361A980, unused: 8 +2025/08/19 10:34:56 [debug] 349771#349771: *47 free: 00005CE043610140, unused: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 free: 00005CE043612160, unused: 8 +2025/08/19 10:34:56 [debug] 349771#349771: *47 free: 00005CE043613170, unused: 986 +2025/08/19 10:34:56 [debug] 349771#349771: *47 free: 00005CE04367A280, unused: 73 +2025/08/19 10:34:56 [debug] 349771#349771: *47 free: 00005CE0436090A0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 hc free: 0000000000000000 +2025/08/19 10:34:56 [debug] 349771#349771: *47 hc busy: 0000000000000000 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 tcp_nodelay +2025/08/19 10:34:56 [debug] 349771#349771: *47 reusable connection: 1 +2025/08/19 10:34:56 [debug] 349771#349771: *47 event timer add: 6: 65000:180894591 +2025/08/19 10:34:56 [debug] 349771#349771: *47 post event 00005CE04364A320 +2025/08/19 10:34:56 [debug] 349771#349771: timer delta: 2 +2025/08/19 10:34:56 [debug] 349771#349771: posted event 00005CE04364A320 +2025/08/19 10:34:56 [debug] 349771#349771: *47 delete posted event 00005CE04364A320 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http keepalive handler +2025/08/19 10:34:56 [debug] 349771#349771: *47 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:56 [debug] 349771#349771: *47 recv: eof:0, avail:0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 free: 00005CE0436090A0 +2025/08/19 10:34:56 [debug] 349771#349771: worker cycle +2025/08/19 10:34:56 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:34:56 [debug] 349771#349771: epoll: fd:6 ev:2005 d:000075EA426D11E0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 http keepalive handler +2025/08/19 10:34:56 [debug] 349771#349771: *47 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:56 [debug] 349771#349771: *47 recv: eof:1, avail:-1 +2025/08/19 10:34:56 [debug] 349771#349771: *47 recv: fd:6 0 of 1024 +2025/08/19 10:34:56 [info] 349771#349771: *47 client 127.0.0.1 closed keepalive connection +2025/08/19 10:34:56 [debug] 349771#349771: *47 close http connection: 6 +2025/08/19 10:34:56 [debug] 349771#349771: *47 event timer del: 6: 180894591 +2025/08/19 10:34:56 [debug] 349771#349771: *47 reusable connection: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 free: 00005CE0436090A0 +2025/08/19 10:34:56 [debug] 349771#349771: *47 free: 00005CE043606840, unused: 120 +2025/08/19 10:34:56 [debug] 349771#349771: timer delta: 2 +2025/08/19 10:34:56 [debug] 349771#349771: worker cycle +2025/08/19 10:34:56 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:34:56 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:34:56 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:34:56 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *49 accept: 127.0.0.1:55718 fd:6 +2025/08/19 10:34:56 [debug] 349771#349771: *49 event timer add: 6: 60000:180889599 +2025/08/19 10:34:56 [debug] 349771#349771: *49 reusable connection: 1 +2025/08/19 10:34:56 [debug] 349771#349771: *49 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:34:56 [debug] 349771#349771: timer delta: 6 +2025/08/19 10:34:56 [debug] 349771#349771: worker cycle +2025/08/19 10:34:56 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:34:56 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E1 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http wait request handler +2025/08/19 10:34:56 [debug] 349771#349771: *49 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:56 [debug] 349771#349771: *49 recv: eof:0, avail:-1 +2025/08/19 10:34:56 [debug] 349771#349771: *49 recv: fd:6 142 of 1024 +2025/08/19 10:34:56 [debug] 349771#349771: *49 reusable connection: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *49 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http process request line +2025/08/19 10:34:56 [debug] 349771#349771: *49 http request line: "GET /98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100 HTTP/1.1" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http uri: "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http args: "" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http exten: "" +2025/08/19 10:34:56 [debug] 349771#349771: *49 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http process request header line +2025/08/19 10:34:56 [debug] 349771#349771: *49 http header: "Host: localhost:9001" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http header: "Accept: */*" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http header done +2025/08/19 10:34:56 [debug] 349771#349771: *49 event timer del: 6: 180889599 +2025/08/19 10:34:56 [debug] 349771#349771: *49 generic phase: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *49 rewrite phase: 1 +2025/08/19 10:34:56 [debug] 349771#349771: *49 test location: "/health" +2025/08/19 10:34:56 [debug] 349771#349771: *49 test location: "/debug/list" +2025/08/19 10:34:56 [debug] 349771#349771: *49 test location: "/" +2025/08/19 10:34:56 [debug] 349771#349771: *49 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:34:56 [debug] 349771#349771: *49 using configuration "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http cl:-1 max:104857600 +2025/08/19 10:34:56 [debug] 349771#349771: *49 rewrite phase: 3 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script var +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script var: "GET" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script value: "HEAD" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script equal +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script equal: no +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script if +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script if: false +2025/08/19 10:34:56 [debug] 349771#349771: *49 post rewrite phase: 4 +2025/08/19 10:34:56 [debug] 349771#349771: *49 generic phase: 5 +2025/08/19 10:34:56 [debug] 349771#349771: *49 generic phase: 6 +2025/08/19 10:34:56 [debug] 349771#349771: *49 generic phase: 7 +2025/08/19 10:34:56 [debug] 349771#349771: *49 access phase: 8 +2025/08/19 10:34:56 [debug] 349771#349771: *49 access phase: 9 +2025/08/19 10:34:56 [debug] 349771#349771: *49 access phase: 10 +2025/08/19 10:34:56 [debug] 349771#349771: *49 post access phase: 11 +2025/08/19 10:34:56 [debug] 349771#349771: *49 generic phase: 12 +2025/08/19 10:34:56 [debug] 349771#349771: *49 try files handler +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: "/" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script capture: "98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: ".jpg" +2025/08/19 10:34:56 [debug] 349771#349771: *49 trying to use file: "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.jpg" "./blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.jpg" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: "/" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script capture: "98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: ".jpeg" +2025/08/19 10:34:56 [debug] 349771#349771: *49 trying to use file: "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.jpeg" "./blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.jpeg" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: "/" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script capture: "98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: ".png" +2025/08/19 10:34:56 [debug] 349771#349771: *49 trying to use file: "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.png" "./blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.png" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: "/" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script capture: "98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: ".webp" +2025/08/19 10:34:56 [debug] 349771#349771: *49 trying to use file: "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.webp" "./blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.webp" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: "/" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script capture: "98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: ".gif" +2025/08/19 10:34:56 [debug] 349771#349771: *49 trying to use file: "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.gif" "./blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.gif" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: "/" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script capture: "98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: ".pdf" +2025/08/19 10:34:56 [debug] 349771#349771: *49 trying to use file: "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.pdf" "./blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.pdf" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: "/" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script capture: "98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: ".mp4" +2025/08/19 10:34:56 [debug] 349771#349771: *49 trying to use file: "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.mp4" "./blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.mp4" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: "/" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script capture: "98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: ".mp3" +2025/08/19 10:34:56 [debug] 349771#349771: *49 trying to use file: "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.mp3" "./blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.mp3" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: "/" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script capture: "98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http script copy: ".txt" +2025/08/19 10:34:56 [debug] 349771#349771: *49 trying to use file: "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.txt" "./blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.txt" +2025/08/19 10:34:56 [debug] 349771#349771: *49 try file uri: "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.txt" +2025/08/19 10:34:56 [debug] 349771#349771: *49 generic phase: 13 +2025/08/19 10:34:56 [debug] 349771#349771: *49 content phase: 14 +2025/08/19 10:34:56 [debug] 349771#349771: *49 content phase: 15 +2025/08/19 10:34:56 [debug] 349771#349771: *49 content phase: 16 +2025/08/19 10:34:56 [debug] 349771#349771: *49 content phase: 17 +2025/08/19 10:34:56 [debug] 349771#349771: *49 content phase: 18 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http filename: "./blobs/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.txt" +2025/08/19 10:34:56 [debug] 349771#349771: *49 add cleanup: 00005CE04361AD60 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http static fd: 10 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http set discard body +2025/08/19 10:34:56 [debug] 349771#349771: *49 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:34:56 GMT +Content-Type: text/plain +Content-Length: 296 +Last-Modified: Tue, 19 Aug 2025 14:34:56 GMT +Connection: keep-alive +ETag: "68a48b90-128" +Cache-Control: public, max-age=31536000, immutable +X-Content-Type-Options: nosniff +X-Frame-Options: DENY +X-XSS-Protection: 1; mode=block +Accept-Ranges: bytes + +2025/08/19 10:34:56 [debug] 349771#349771: *49 write new buf t:1 f:0 00005CE04361AF50, pos 00005CE04361AF50, size: 389 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http write filter: l:0 f:0 s:389 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http output filter "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.txt?" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http copy filter: "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.txt?" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http postpone filter "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.txt?" 00007FFDD38FD160 +2025/08/19 10:34:56 [debug] 349771#349771: *49 write old buf t:1 f:0 00005CE04361AF50, pos 00005CE04361AF50, size: 389 file: 0, size: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *49 write new buf t:0 f:1 0000000000000000, pos 0000000000000000, size: 0 file: 0, size: 296 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http write filter: l:1 f:0 s:685 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http write filter limit 0 +2025/08/19 10:34:56 [debug] 349771#349771: *49 tcp_nopush +2025/08/19 10:34:56 [debug] 349771#349771: *49 writev: 389 of 389 +2025/08/19 10:34:56 [debug] 349771#349771: *49 sendfile: @0 296 +2025/08/19 10:34:56 [debug] 349771#349771: *49 sendfile: 296 of 296 @0 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http write filter 0000000000000000 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http copy filter: 0 "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.txt?" +2025/08/19 10:34:56 [debug] 349771#349771: *49 http finalize request: 0, "/98681900bd97aabc4a7d2341bc52cc8d687e7c7b4dbd0893f6470242614d1100.txt?" a:1, c:1 +2025/08/19 10:34:56 [debug] 349771#349771: *49 set http keepalive handler +2025/08/19 10:34:56 [debug] 349771#349771: *49 http close request +2025/08/19 10:34:56 [debug] 349771#349771: *49 http log handler +2025/08/19 10:34:56 [debug] 349771#349771: *49 run cleanup: 00005CE04361AD60 +2025/08/19 10:34:56 [debug] 349771#349771: *49 file cleanup: fd:10 +2025/08/19 10:34:56 [debug] 349771#349771: *49 free: 00005CE043624610, unused: 5 +2025/08/19 10:34:56 [debug] 349771#349771: *49 free: 00005CE04361A980, unused: 1848 +2025/08/19 10:34:56 [debug] 349771#349771: *49 free: 00005CE0436090A0 +2025/08/19 10:34:56 [debug] 349771#349771: *49 hc free: 0000000000000000 +2025/08/19 10:34:56 [debug] 349771#349771: *49 hc busy: 0000000000000000 0 +2025/08/19 10:34:56 [debug] 349771#349771: *49 reusable connection: 1 +2025/08/19 10:34:56 [debug] 349771#349771: *49 event timer add: 6: 65000:180894599 +2025/08/19 10:34:56 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:34:56 [debug] 349771#349771: worker cycle +2025/08/19 10:34:56 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:34:56 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E1 +2025/08/19 10:34:56 [debug] 349771#349771: *49 http keepalive handler +2025/08/19 10:34:56 [debug] 349771#349771: *49 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:56 [debug] 349771#349771: *49 recv: eof:1, avail:-1 +2025/08/19 10:34:56 [debug] 349771#349771: *49 recv: fd:6 0 of 1024 +2025/08/19 10:34:56 [info] 349771#349771: *49 client 127.0.0.1 closed keepalive connection +2025/08/19 10:34:56 [debug] 349771#349771: *49 close http connection: 6 +2025/08/19 10:34:56 [debug] 349771#349771: *49 event timer del: 6: 180894599 +2025/08/19 10:34:56 [debug] 349771#349771: *49 reusable connection: 0 +2025/08/19 10:34:56 [debug] 349771#349771: *49 free: 00005CE0436090A0 +2025/08/19 10:34:56 [debug] 349771#349771: *49 free: 00005CE043606840, unused: 136 +2025/08/19 10:34:56 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:34:56 [debug] 349771#349771: worker cycle +2025/08/19 10:34:56 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:34:57 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:34:57 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:34:57 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *50 accept: 127.0.0.1:55724 fd:6 +2025/08/19 10:34:57 [debug] 349771#349771: *50 event timer add: 6: 60000:180890470 +2025/08/19 10:34:57 [debug] 349771#349771: *50 reusable connection: 1 +2025/08/19 10:34:57 [debug] 349771#349771: *50 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:34:57 [debug] 349771#349771: timer delta: 870 +2025/08/19 10:34:57 [debug] 349771#349771: worker cycle +2025/08/19 10:34:57 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:34:57 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 http wait request handler +2025/08/19 10:34:57 [debug] 349771#349771: *50 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:57 [debug] 349771#349771: *50 recv: eof:0, avail:-1 +2025/08/19 10:34:57 [debug] 349771#349771: *50 recv: fd:6 84 of 1024 +2025/08/19 10:34:57 [debug] 349771#349771: *50 reusable connection: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *50 http process request line +2025/08/19 10:34:57 [debug] 349771#349771: *50 http request line: "GET /health HTTP/1.1" +2025/08/19 10:34:57 [debug] 349771#349771: *50 http uri: "/health" +2025/08/19 10:34:57 [debug] 349771#349771: *50 http args: "" +2025/08/19 10:34:57 [debug] 349771#349771: *50 http exten: "" +2025/08/19 10:34:57 [debug] 349771#349771: *50 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *50 http process request header line +2025/08/19 10:34:57 [debug] 349771#349771: *50 http header: "Host: localhost:9001" +2025/08/19 10:34:57 [debug] 349771#349771: *50 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:34:57 [debug] 349771#349771: *50 http header: "Accept: */*" +2025/08/19 10:34:57 [debug] 349771#349771: *50 http header done +2025/08/19 10:34:57 [debug] 349771#349771: *50 event timer del: 6: 180890470 +2025/08/19 10:34:57 [debug] 349771#349771: *50 generic phase: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 rewrite phase: 1 +2025/08/19 10:34:57 [debug] 349771#349771: *50 test location: "/health" +2025/08/19 10:34:57 [debug] 349771#349771: *50 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:34:57 [debug] 349771#349771: *50 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:34:57 [debug] 349771#349771: *50 using configuration "/health" +2025/08/19 10:34:57 [debug] 349771#349771: *50 http cl:-1 max:104857600 +2025/08/19 10:34:57 [debug] 349771#349771: *50 rewrite phase: 3 +2025/08/19 10:34:57 [debug] 349771#349771: *50 http set discard body +2025/08/19 10:34:57 [debug] 349771#349771: *50 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:34:57 GMT +Content-Type: application/octet-stream +Content-Length: 3 +Connection: keep-alive +Content-Type: text/plain + +2025/08/19 10:34:57 [debug] 349771#349771: *50 write new buf t:1 f:0 00005CE04361AD60, pos 00005CE04361AD60, size: 196 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 http write filter: l:0 f:0 s:196 +2025/08/19 10:34:57 [debug] 349771#349771: *50 http output filter "/health?" +2025/08/19 10:34:57 [debug] 349771#349771: *50 http copy filter: "/health?" +2025/08/19 10:34:57 [debug] 349771#349771: *50 http postpone filter "/health?" 00007FFDD38FD1C0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 write old buf t:1 f:0 00005CE04361AD60, pos 00005CE04361AD60, size: 196 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 write new buf t:0 f:0 0000000000000000, pos 00005CE04363AD7A, size: 3 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 http write filter: l:1 f:0 s:199 +2025/08/19 10:34:57 [debug] 349771#349771: *50 http write filter limit 0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 writev: 199 of 199 +2025/08/19 10:34:57 [debug] 349771#349771: *50 http write filter 0000000000000000 +2025/08/19 10:34:57 [debug] 349771#349771: *50 http copy filter: 0 "/health?" +2025/08/19 10:34:57 [debug] 349771#349771: *50 http finalize request: 0, "/health?" a:1, c:1 +2025/08/19 10:34:57 [debug] 349771#349771: *50 set http keepalive handler +2025/08/19 10:34:57 [debug] 349771#349771: *50 http close request +2025/08/19 10:34:57 [debug] 349771#349771: *50 http log handler +2025/08/19 10:34:57 [debug] 349771#349771: *50 free: 00005CE043624610, unused: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 free: 00005CE04361A980, unused: 2736 +2025/08/19 10:34:57 [debug] 349771#349771: *50 free: 00005CE0436090A0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 hc free: 0000000000000000 +2025/08/19 10:34:57 [debug] 349771#349771: *50 hc busy: 0000000000000000 0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 tcp_nodelay +2025/08/19 10:34:57 [debug] 349771#349771: *50 reusable connection: 1 +2025/08/19 10:34:57 [debug] 349771#349771: *50 event timer add: 6: 65000:180895470 +2025/08/19 10:34:57 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:34:57 [debug] 349771#349771: worker cycle +2025/08/19 10:34:57 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:34:57 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 http keepalive handler +2025/08/19 10:34:57 [debug] 349771#349771: *50 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:57 [debug] 349771#349771: *50 recv: eof:1, avail:-1 +2025/08/19 10:34:57 [debug] 349771#349771: *50 recv: fd:6 0 of 1024 +2025/08/19 10:34:57 [info] 349771#349771: *50 client 127.0.0.1 closed keepalive connection +2025/08/19 10:34:57 [debug] 349771#349771: *50 close http connection: 6 +2025/08/19 10:34:57 [debug] 349771#349771: *50 event timer del: 6: 180895470 +2025/08/19 10:34:57 [debug] 349771#349771: *50 reusable connection: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 free: 00005CE0436090A0 +2025/08/19 10:34:57 [debug] 349771#349771: *50 free: 00005CE043606840, unused: 136 +2025/08/19 10:34:57 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:34:57 [debug] 349771#349771: worker cycle +2025/08/19 10:34:57 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:34:57 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:34:57 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:34:57 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *51 accept: 127.0.0.1:55726 fd:6 +2025/08/19 10:34:57 [debug] 349771#349771: *51 event timer add: 6: 60000:180890782 +2025/08/19 10:34:57 [debug] 349771#349771: *51 reusable connection: 1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:34:57 [debug] 349771#349771: timer delta: 311 +2025/08/19 10:34:57 [debug] 349771#349771: worker cycle +2025/08/19 10:34:57 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:34:57 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http wait request handler +2025/08/19 10:34:57 [debug] 349771#349771: *51 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:57 [debug] 349771#349771: *51 recv: eof:0, avail:-1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 recv: fd:6 1024 of 1024 +2025/08/19 10:34:57 [debug] 349771#349771: *51 recv: avail:112 +2025/08/19 10:34:57 [debug] 349771#349771: *51 reusable connection: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http process request line +2025/08/19 10:34:57 [debug] 349771#349771: *51 http request line: "PUT /upload HTTP/1.1" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http uri: "/upload" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http args: "" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http exten: "" +2025/08/19 10:34:57 [debug] 349771#349771: *51 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http process request header line +2025/08/19 10:34:57 [debug] 349771#349771: *51 http header: "Host: localhost:9001" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http header: "Accept: */*" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI3NzI3MmU4ZTA5MzE4YjVhZjljNjcyOGYwNTE3YjhlNTIyN2U5NTlhNGM5NmI4ZjE0Mjg0YjllNjAyZjRjMTU5IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQwOTcsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCIyMjkxNzA3ODMzN2E5ZGYxMTk5NzliOGRmMmJiYjU5YWFmY2M0MjE2MWM1MGJkNzg4MWU2OGUyNzM2OWYzNDNjIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxNzY5NyJdXSwiY29udGVudCI6IiIsInNpZyI6Ijg0OTA5NDE5NjEwMjlmNmJiYjAwZmUwMDZmMDQ0ZjAxODQxNTQ5ZjA1ZWE1ODVhYmViMjBmNDQxMDk2M2I4Nzk2YzgzZmNjMDlmZDhjZGEwNmNkYWYxNzYwZWNkOGExM2FmZmFmYjAzMjQ4ZTNiYzk5OTUzYTdlNTVjYzJiNmMxIn0=" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http header: "Content-Type: text/plain" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http header: "Content-Disposition: attachment; filename="test_blob_1755614097.txt"" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http header: "Content-Length: 296" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http header done +2025/08/19 10:34:57 [debug] 349771#349771: *51 event timer del: 6: 180890782 +2025/08/19 10:34:57 [debug] 349771#349771: *51 generic phase: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 rewrite phase: 1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 test location: "/health" +2025/08/19 10:34:57 [debug] 349771#349771: *51 test location: "/upload" +2025/08/19 10:34:57 [debug] 349771#349771: *51 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:34:57 [debug] 349771#349771: *51 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:34:57 [debug] 349771#349771: *51 using configuration "/upload" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http cl:296 max:104857600 +2025/08/19 10:34:57 [debug] 349771#349771: *51 rewrite phase: 3 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "PUT" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script regex: "^(PUT)$" +2025/08/19 10:34:57 [notice] 349771#349771: *51 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script if +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script if: false +2025/08/19 10:34:57 [debug] 349771#349771: *51 post rewrite phase: 4 +2025/08/19 10:34:57 [debug] 349771#349771: *51 generic phase: 5 +2025/08/19 10:34:57 [debug] 349771#349771: *51 generic phase: 6 +2025/08/19 10:34:57 [debug] 349771#349771: *51 generic phase: 7 +2025/08/19 10:34:57 [debug] 349771#349771: *51 access phase: 8 +2025/08/19 10:34:57 [debug] 349771#349771: *51 access phase: 9 +2025/08/19 10:34:57 [debug] 349771#349771: *51 access phase: 10 +2025/08/19 10:34:57 [debug] 349771#349771: *51 post access phase: 11 +2025/08/19 10:34:57 [debug] 349771#349771: *51 generic phase: 12 +2025/08/19 10:34:57 [debug] 349771#349771: *51 generic phase: 13 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http client request body preread 184 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http request body content length filter +2025/08/19 10:34:57 [debug] 349771#349771: *51 http body new buf t:1 f:0 00005CE0436093E8, pos 00005CE0436093E8, size: 184 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http read client request body +2025/08/19 10:34:57 [debug] 349771#349771: *51 recv: eof:0, avail:112 +2025/08/19 10:34:57 [debug] 349771#349771: *51 recv: fd:6 112 of 112 +2025/08/19 10:34:57 [debug] 349771#349771: *51 recv: avail:0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http client request body recv 112 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http body new buf t:1 f:0 00005CE04361B410, pos 00005CE04361B410, size: 112 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http client request body rest 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http init upstream, client timer: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 10:34:57 [debug] 349771#349771: *51 posix_memalign: 00005CE043610140:4096 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "QUERY_STRING" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "QUERY_STRING: " +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "REQUEST_METHOD" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "PUT" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "CONTENT_TYPE" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "text/plain" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "CONTENT_LENGTH" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "296" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "SCRIPT_NAME" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "/upload" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "REQUEST_URI" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "/upload" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "DOCUMENT_URI" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "/upload" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "DOCUMENT_ROOT" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "./blobs" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "SERVER_PROTOCOL" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "HTTP/1.1" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "REQUEST_SCHEME" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "http" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "GATEWAY_INTERFACE" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "CGI/1.1" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "SERVER_SOFTWARE" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "nginx/" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "1.18.0" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "REMOTE_ADDR" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "127.0.0.1" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "REMOTE_PORT" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "55726" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "REMOTE_PORT: 55726" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "SERVER_ADDR" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "127.0.0.1" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "SERVER_PORT" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "9001" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "SERVER_NAME" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "localhost" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "REDIRECT_STATUS" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "200" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "SCRIPT_FILENAME" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script var: "./blobs" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http script copy: "/ginxsom.fcgi" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI3NzI3MmU4ZTA5MzE4YjVhZjljNjcyOGYwNTE3YjhlNTIyN2U5NTlhNGM5NmI4ZjE0Mjg0YjllNjAyZjRjMTU5IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQwOTcsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCIyMjkxNzA3ODMzN2E5ZGYxMTk5NzliOGRmMmJiYjU5YWFmY2M0MjE2MWM1MGJkNzg4MWU2OGUyNzM2OWYzNDNjIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxNzY5NyJdXSwiY29udGVudCI6IiIsInNpZyI6Ijg0OTA5NDE5NjEwMjlmNmJiYjAwZmUwMDZmMDQ0ZjAxODQxNTQ5ZjA1ZWE1ODVhYmViMjBmNDQxMDk2M2I4Nzk2YzgzZmNjMDlmZDhjZGEwNmNkYWYxNzYwZWNkOGExM2FmZmFmYjAzMjQ4ZTNiYzk5OTUzYTdlNTVjYzJiNmMxIn0=" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755614097.txt"" +2025/08/19 10:34:57 [debug] 349771#349771: *51 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http cleanup add: 00005CE04361B760 +2025/08/19 10:34:57 [debug] 349771#349771: *51 get rr peer, try: 1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 stream socket 10 +2025/08/19 10:34:57 [debug] 349771#349771: *51 epoll add connection: fd:10 ev:80002005 +2025/08/19 10:34:57 [debug] 349771#349771: *51 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #52 +2025/08/19 10:34:57 [debug] 349771#349771: *51 connected +2025/08/19 10:34:57 [debug] 349771#349771: *51 http upstream connect: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 posix_memalign: 00005CE0435EFF20:128 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http upstream send request +2025/08/19 10:34:57 [debug] 349771#349771: *51 http upstream send request body +2025/08/19 10:34:57 [debug] 349771#349771: *51 chain writer buf fl:0 s:1304 +2025/08/19 10:34:57 [debug] 349771#349771: *51 chain writer buf fl:0 s:184 +2025/08/19 10:34:57 [debug] 349771#349771: *51 chain writer buf fl:0 s:8 +2025/08/19 10:34:57 [debug] 349771#349771: *51 chain writer buf fl:0 s:112 +2025/08/19 10:34:57 [debug] 349771#349771: *51 chain writer buf fl:0 s:8 +2025/08/19 10:34:57 [debug] 349771#349771: *51 chain writer in: 00005CE04361B7F0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 writev: 1616 of 1616 +2025/08/19 10:34:57 [debug] 349771#349771: *51 chain writer out: 0000000000000000 +2025/08/19 10:34:57 [debug] 349771#349771: *51 event timer add: 10: 60000:180890782 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http request count:2 blk:0 +2025/08/19 10:34:57 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:34:57 [debug] 349771#349771: worker cycle +2025/08/19 10:34:57 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:34:57 [debug] 349771#349771: epoll: fd:6 ev:0004 d:000075EA426D11E1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http run request: "/upload?" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http upstream check client, write event:1, "/upload" +2025/08/19 10:34:57 [debug] 349771#349771: epoll: fd:10 ev:0004 d:000075EA426D12C9 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http upstream request: "/upload?" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http upstream dummy handler +2025/08/19 10:34:57 [debug] 349771#349771: timer delta: 2 +2025/08/19 10:34:57 [debug] 349771#349771: worker cycle +2025/08/19 10:34:57 [debug] 349771#349771: epoll timer: 59998 +2025/08/19 10:34:57 [debug] 349771#349771: epoll: fd:10 ev:2005 d:000075EA426D12C9 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http upstream request: "/upload?" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http upstream process header +2025/08/19 10:34:57 [debug] 349771#349771: *51 malloc: 00005CE043611150:4096 +2025/08/19 10:34:57 [debug] 349771#349771: *51 recv: eof:1, avail:-1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 recv: fd:10 4096 of 4096 +2025/08/19 10:34:57 [debug] 349771#349771: *51 recv: avail:40 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 01 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 06 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 00 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 01 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 10 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 08 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 00 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 00 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record length: 4104 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI3NzI3MmU4ZTA5MzE4YjVhZjljNjcyOGYwNTE3YjhlNTIyN2U5NTlhNGM5NmI4ZjE0Mjg0YjllNjAyZjRjMTU5IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQwOTcsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCIyMjkxNzA3ODMzN2E5ZGYxMTk5NzliOGRmMmJiYjU5YWFmY2M0MjE2MWM1MGJkNzg4MWU2OGUyNzM2OWYzNDNjIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxNzY5NyJdXSwiY29udGVudCI6IiIsInNpZyI6Ijg0OTA5NDE5NjEwMjlmNmJiYjAwZmUwMDZmMDQ0ZjAxODQxNTQ5ZjA1ZWE1ODVhYmViMjBmNDQxMDk2M2I4Nzk2YzgzZmNjMDlmZDhjZGEwNmNkYWYxNzYwZWNkOGExM2FmZmFmYjAzMjQ4ZTNiYzk5OTUzYTdlNTVjYzJiNmMxIn0=" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Authorization header present, length=DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiI3NzI3MmU4ZTA5MzE4YjVhZjljNjcyOGYwNTE3YjhlNTIyN2U5NTlhNGM5NmI4ZjE0Mjg0Yjll..." +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"77272e8e09318b5af9c6728f0517b8e5227e959a4c96b8f14284b9e602f4c159","pubkey":"79be..." +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: parse_authorization_header returned: 0" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Successfully parsed authorization header" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Event JSON: {"kind":24242,"id":"77272e8e09318b5af9c6728f0517b8e5227e959a4c96b8f14284b9e602f4c159","pubkey":"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","created_at":1755614097,"tags":[["t","..." +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Successfully parsed JSON event" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Found pubkey in JSON: 79be667ef9dcbbac..." +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Copied pubkey to static buffer: 79be667ef9dcbbac..." +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Final uploader_pubkey after auth parsing: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Successfully read DEBUG: Calculated SHA-256: 22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 posix_memalign: 00005CE043612160:4096 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Saving file to: blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.txt" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Successfully saved DEBUG: Content-Disposition header: attachment; filename="test_blob_1755614097.txt"" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Looking for filename= in Content-Disposition header" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Found filename= at position 12" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Filename value starts with: "test_blob_175561409" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Processing quoted filename" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Quoted filename length: DEBUG: Extracted quoted filename: 'test_blob_1755614097.txt'" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Final filename after extraction: test_blob_1755614097.txt" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: insert_blob_metadata() called for sha256='22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c'" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Opening database at path: db/ginxsom.db" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Database opened successfully for writing" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Preparing SQL: INSERT INTO blobs (sha256, size, type, uploaded_at, uploader_pubkey, filename) VALUES (?, ?, ?, ?, ?, ?)" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: SQL prepared successfully, binding parameters" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Parameter values to bind:" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: 1. sha256 = '22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c'" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: 2. size = 296" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: 3. type = 'text/plain'" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: 4. uploaded_at = 1755614097" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: 5. uploader_pubkey = '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798'" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: 6. filename = 'test_blob_1755614097.txt'" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Binding parameter 1 (sha256)" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Binding parameter 2 (size)" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Binding parameter 3 (type)" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Binding parameter 4 (uploaded_at)" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Binding parameter 5 (uploader_pubkey)" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Binding uploader_pubkey as text: '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798'" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Binding parameter 6 (filename)" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Binding filename as text: 'test_blob_1755614097.txt'" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Parameters bound, executing INSERT" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: INSERT successful" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Database closed, returning 1" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "DEBUG: Blob metadata successfully stored in database" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "Status: 200 OK" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header: "Content-Type: application/json" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi parser: 1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi header done +2025/08/19 10:34:57 [debug] 349771#349771: *51 posix_memalign: 00005CE043613170:4096 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *51 posix_memalign: 00005CE04367A280:4096 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *51 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:34:57 GMT +Content-Type: application/json +Transfer-Encoding: chunked +Connection: keep-alive +DEBUG: FastCGI received request +DEBUG: METHOD=PUT, URI=/upload +DEBUG: handle_upload_request called +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI3NzI3MmU4ZTA5MzE4YjVhZjljNjcyOGYwNTE3YjhlNTIyN2U5NTlhNGM5NmI4ZjE0Mjg0YjllNjAyZjRjMTU5IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQwOTcsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCIyMjkxNzA3ODMzN2E5ZGYxMTk5NzliOGRmMmJiYjU5YWFmY2M0MjE2MWM1MGJkNzg4MWU2OGUyNzM2OWYzNDNjIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxNzY5NyJdXSwiY29udGVudCI6IiIsInNpZyI6Ijg0OTA5NDE5NjEwMjlmNmJiYjAwZmUwMDZmMDQ0ZjAxODQxNTQ5ZjA1ZWE1ODVhYmViMjBmNDQxMDk2M2I4Nzk2YzgzZmNjMDlmZDhjZGEwNmNkYWYxNzYwZWNkOGExM2FmZmFmYjAzMjQ4ZTNiYzk5OTUzYTdlNTVjYzJiNmMxIn0= +DEBUG: Authorization header present, length=DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiI3NzI3MmU4ZTA5MzE4YjVhZjljNjcyOGYwNTE3YjhlNTIyN2U5NTlhNGM5NmI4ZjE0Mjg0Yjll... +DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"77272e8e09318b5af9c6728f0517b8e5227e959a4c96b8f14284b9e602f4c159","pubkey":"79be... +DEBUG: parse_authorization_header returned: 0 +DEBUG: Successfully parsed authorization header +DEBUG: Event JSON: {"kind":24242,"id":"77272e8e09318b5af9c6728f0517b8e5227e959a4c96b8f14284b9e602f4c159","pubkey":"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","created_at":1755614097,"tags":[["t","... +DEBUG: Successfully parsed JSON event +DEBUG: Found pubkey in JSON: 79be667ef9dcbbac... +DEBUG: Copied pubkey to static buffer: 79be667ef9dcbbac... +DEBUG: Final uploader_pubkey after auth parsing: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 +DEBUG: Successfully read DEBUG: Calculated SHA-256: 22917078337a9df119979b8df2bbb59aafcc42 +2025/08/19 10:34:57 [debug] 349771#349771: *51 write new buf t:1 f:0 00005CE04367A2A0, pos 00005CE04367A2A0, size: 3991 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http write filter: l:0 f:0 s:3991 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http write filter limit 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 writev: 3991 of 3991 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http write filter 0000000000000000 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http cacheable: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http upstream process upstream +2025/08/19 10:34:57 [debug] 349771#349771: *51 pipe read upstream: 1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 pipe preread: 295 +2025/08/19 10:34:57 [debug] 349771#349771: *51 input buf #0 00005CE043612029 +2025/08/19 10:34:57 [debug] 349771#349771: *51 input buf 00005CE043612029 295 +2025/08/19 10:34:57 [debug] 349771#349771: *51 malloc: 00005CE04367B290:4096 +2025/08/19 10:34:57 [debug] 349771#349771: *51 readv: eof:1, avail:40 +2025/08/19 10:34:57 [debug] 349771#349771: *51 readv: 1, last:4096 +2025/08/19 10:34:57 [debug] 349771#349771: *51 readv: avail:0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 pipe recv chain: 40 +2025/08/19 10:34:57 [debug] 349771#349771: *51 readv: eof:1, avail:0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 readv: 1, last:4056 +2025/08/19 10:34:57 [debug] 349771#349771: *51 pipe recv chain: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 pipe buf in s:1 t:1 f:0 00005CE043611150, pos 00005CE043612029, size: 295 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 pipe buf free s:0 t:1 f:0 00005CE04367B290, pos 00005CE04367B290, size: 40 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 pipe length: -1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 input buf #1 00005CE04367B290 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 01 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 06 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 00 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 01 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 00 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 00 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 00 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 00 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record length: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi closed stdout +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 01 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 03 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 00 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 01 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 00 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 08 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 00 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record byte: 00 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi record length: 8 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http fastcgi sent end request +2025/08/19 10:34:57 [debug] 349771#349771: *51 input buf 00005CE04367B290 16 +2025/08/19 10:34:57 [debug] 349771#349771: *51 pipe write downstream: 1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 pipe write downstream flush in +2025/08/19 10:34:57 [debug] 349771#349771: *51 http output filter "/upload?" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http copy filter: "/upload?" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http postpone filter "/upload?" 00005CE04361B7B0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http chunk: 295 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http chunk: 16 +2025/08/19 10:34:57 [debug] 349771#349771: *51 write new buf t:1 f:0 00005CE043613BB0, pos 00005CE043613BB0, size: 5 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 write new buf t:1 f:0 00005CE043611150, pos 00005CE043612029, size: 295 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 write new buf t:1 f:0 00005CE04367B290, pos 00005CE04367B290, size: 16 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 write new buf t:0 f:0 0000000000000000, pos 00005CE037AC92E8, size: 2 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http write filter: l:0 f:0 s:318 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http copy filter: 0 "/upload?" +2025/08/19 10:34:57 [debug] 349771#349771: *51 pipe write downstream done +2025/08/19 10:34:57 [debug] 349771#349771: *51 event timer: 10, old: 180890782, new: 180890788 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http upstream exit: 0000000000000000 +2025/08/19 10:34:57 [debug] 349771#349771: *51 finalize http upstream request: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 finalize http fastcgi request +2025/08/19 10:34:57 [debug] 349771#349771: *51 free rr peer 1 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 close http upstream connection: 10 +2025/08/19 10:34:57 [debug] 349771#349771: *51 free: 00005CE0435EFF20, unused: 48 +2025/08/19 10:34:57 [debug] 349771#349771: *51 event timer del: 10: 180890782 +2025/08/19 10:34:57 [debug] 349771#349771: *51 reusable connection: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http upstream temp fd: -1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http output filter "/upload?" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http copy filter: "/upload?" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http postpone filter "/upload?" 00005CE043613C98 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http chunk: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 write old buf t:1 f:0 00005CE043613BB0, pos 00005CE043613BB0, size: 5 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 write old buf t:1 f:0 00005CE043611150, pos 00005CE043612029, size: 295 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 write old buf t:1 f:0 00005CE04367B290, pos 00005CE04367B290, size: 16 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 write old buf t:0 f:0 0000000000000000, pos 00005CE037AC92E8, size: 2 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 write new buf t:0 f:0 0000000000000000, pos 00005CE037AC92E5, size: 5 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http write filter: l:1 f:0 s:323 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http write filter limit 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 writev: 323 of 323 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http write filter 0000000000000000 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http copy filter: 0 "/upload?" +2025/08/19 10:34:57 [debug] 349771#349771: *51 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 set http keepalive handler +2025/08/19 10:34:57 [debug] 349771#349771: *51 http close request +2025/08/19 10:34:57 [debug] 349771#349771: *51 http log handler +2025/08/19 10:34:57 [debug] 349771#349771: *51 free: 00005CE04367B290 +2025/08/19 10:34:57 [debug] 349771#349771: *51 free: 00005CE043611150 +2025/08/19 10:34:57 [debug] 349771#349771: *51 free: 00005CE043624610, unused: 3 +2025/08/19 10:34:57 [debug] 349771#349771: *51 free: 00005CE04361A980, unused: 8 +2025/08/19 10:34:57 [debug] 349771#349771: *51 free: 00005CE043610140, unused: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 free: 00005CE043612160, unused: 8 +2025/08/19 10:34:57 [debug] 349771#349771: *51 free: 00005CE043613170, unused: 986 +2025/08/19 10:34:57 [debug] 349771#349771: *51 free: 00005CE04367A280, unused: 73 +2025/08/19 10:34:57 [debug] 349771#349771: *51 free: 00005CE0436090A0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 hc free: 0000000000000000 +2025/08/19 10:34:57 [debug] 349771#349771: *51 hc busy: 0000000000000000 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 tcp_nodelay +2025/08/19 10:34:57 [debug] 349771#349771: *51 reusable connection: 1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 event timer add: 6: 65000:180895788 +2025/08/19 10:34:57 [debug] 349771#349771: *51 post event 00005CE04364A320 +2025/08/19 10:34:57 [debug] 349771#349771: timer delta: 4 +2025/08/19 10:34:57 [debug] 349771#349771: posted event 00005CE04364A320 +2025/08/19 10:34:57 [debug] 349771#349771: *51 delete posted event 00005CE04364A320 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http keepalive handler +2025/08/19 10:34:57 [debug] 349771#349771: *51 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:57 [debug] 349771#349771: *51 recv: eof:0, avail:0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 free: 00005CE0436090A0 +2025/08/19 10:34:57 [debug] 349771#349771: worker cycle +2025/08/19 10:34:57 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:34:57 [debug] 349771#349771: epoll: fd:6 ev:2005 d:000075EA426D11E1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 http keepalive handler +2025/08/19 10:34:57 [debug] 349771#349771: *51 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:57 [debug] 349771#349771: *51 recv: eof:1, avail:-1 +2025/08/19 10:34:57 [debug] 349771#349771: *51 recv: fd:6 0 of 1024 +2025/08/19 10:34:57 [info] 349771#349771: *51 client 127.0.0.1 closed keepalive connection +2025/08/19 10:34:57 [debug] 349771#349771: *51 close http connection: 6 +2025/08/19 10:34:57 [debug] 349771#349771: *51 event timer del: 6: 180895788 +2025/08/19 10:34:57 [debug] 349771#349771: *51 reusable connection: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 free: 00005CE0436090A0 +2025/08/19 10:34:57 [debug] 349771#349771: *51 free: 00005CE043606840, unused: 120 +2025/08/19 10:34:57 [debug] 349771#349771: timer delta: 3 +2025/08/19 10:34:57 [debug] 349771#349771: worker cycle +2025/08/19 10:34:57 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:34:57 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:34:57 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:34:57 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *53 accept: 127.0.0.1:55734 fd:6 +2025/08/19 10:34:57 [debug] 349771#349771: *53 event timer add: 6: 60000:180890803 +2025/08/19 10:34:57 [debug] 349771#349771: *53 reusable connection: 1 +2025/08/19 10:34:57 [debug] 349771#349771: *53 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:34:57 [debug] 349771#349771: timer delta: 12 +2025/08/19 10:34:57 [debug] 349771#349771: worker cycle +2025/08/19 10:34:57 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:34:57 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E0 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http wait request handler +2025/08/19 10:34:57 [debug] 349771#349771: *53 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:57 [debug] 349771#349771: *53 recv: eof:0, avail:-1 +2025/08/19 10:34:57 [debug] 349771#349771: *53 recv: fd:6 142 of 1024 +2025/08/19 10:34:57 [debug] 349771#349771: *53 reusable connection: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *53 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http process request line +2025/08/19 10:34:57 [debug] 349771#349771: *53 http request line: "GET /22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c HTTP/1.1" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http uri: "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http args: "" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http exten: "" +2025/08/19 10:34:57 [debug] 349771#349771: *53 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http process request header line +2025/08/19 10:34:57 [debug] 349771#349771: *53 http header: "Host: localhost:9001" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http header: "Accept: */*" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http header done +2025/08/19 10:34:57 [debug] 349771#349771: *53 event timer del: 6: 180890803 +2025/08/19 10:34:57 [debug] 349771#349771: *53 generic phase: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *53 rewrite phase: 1 +2025/08/19 10:34:57 [debug] 349771#349771: *53 test location: "/health" +2025/08/19 10:34:57 [debug] 349771#349771: *53 test location: "/debug/list" +2025/08/19 10:34:57 [debug] 349771#349771: *53 test location: "/" +2025/08/19 10:34:57 [debug] 349771#349771: *53 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:34:57 [debug] 349771#349771: *53 using configuration "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http cl:-1 max:104857600 +2025/08/19 10:34:57 [debug] 349771#349771: *53 rewrite phase: 3 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script var +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script var: "GET" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script value: "HEAD" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script equal +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script equal: no +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script if +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script if: false +2025/08/19 10:34:57 [debug] 349771#349771: *53 post rewrite phase: 4 +2025/08/19 10:34:57 [debug] 349771#349771: *53 generic phase: 5 +2025/08/19 10:34:57 [debug] 349771#349771: *53 generic phase: 6 +2025/08/19 10:34:57 [debug] 349771#349771: *53 generic phase: 7 +2025/08/19 10:34:57 [debug] 349771#349771: *53 access phase: 8 +2025/08/19 10:34:57 [debug] 349771#349771: *53 access phase: 9 +2025/08/19 10:34:57 [debug] 349771#349771: *53 access phase: 10 +2025/08/19 10:34:57 [debug] 349771#349771: *53 post access phase: 11 +2025/08/19 10:34:57 [debug] 349771#349771: *53 generic phase: 12 +2025/08/19 10:34:57 [debug] 349771#349771: *53 try files handler +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: "/" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script capture: "22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: ".jpg" +2025/08/19 10:34:57 [debug] 349771#349771: *53 trying to use file: "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.jpg" "./blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.jpg" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: "/" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script capture: "22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: ".jpeg" +2025/08/19 10:34:57 [debug] 349771#349771: *53 trying to use file: "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.jpeg" "./blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.jpeg" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: "/" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script capture: "22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: ".png" +2025/08/19 10:34:57 [debug] 349771#349771: *53 trying to use file: "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.png" "./blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.png" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: "/" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script capture: "22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: ".webp" +2025/08/19 10:34:57 [debug] 349771#349771: *53 trying to use file: "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.webp" "./blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.webp" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: "/" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script capture: "22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: ".gif" +2025/08/19 10:34:57 [debug] 349771#349771: *53 trying to use file: "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.gif" "./blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.gif" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: "/" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script capture: "22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: ".pdf" +2025/08/19 10:34:57 [debug] 349771#349771: *53 trying to use file: "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.pdf" "./blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.pdf" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: "/" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script capture: "22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: ".mp4" +2025/08/19 10:34:57 [debug] 349771#349771: *53 trying to use file: "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.mp4" "./blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.mp4" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: "/" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script capture: "22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: ".mp3" +2025/08/19 10:34:57 [debug] 349771#349771: *53 trying to use file: "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.mp3" "./blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.mp3" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: "/" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script capture: "22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http script copy: ".txt" +2025/08/19 10:34:57 [debug] 349771#349771: *53 trying to use file: "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.txt" "./blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.txt" +2025/08/19 10:34:57 [debug] 349771#349771: *53 try file uri: "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.txt" +2025/08/19 10:34:57 [debug] 349771#349771: *53 generic phase: 13 +2025/08/19 10:34:57 [debug] 349771#349771: *53 content phase: 14 +2025/08/19 10:34:57 [debug] 349771#349771: *53 content phase: 15 +2025/08/19 10:34:57 [debug] 349771#349771: *53 content phase: 16 +2025/08/19 10:34:57 [debug] 349771#349771: *53 content phase: 17 +2025/08/19 10:34:57 [debug] 349771#349771: *53 content phase: 18 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http filename: "./blobs/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.txt" +2025/08/19 10:34:57 [debug] 349771#349771: *53 add cleanup: 00005CE04361AD60 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http static fd: 10 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http set discard body +2025/08/19 10:34:57 [debug] 349771#349771: *53 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:34:57 GMT +Content-Type: text/plain +Content-Length: 296 +Last-Modified: Tue, 19 Aug 2025 14:34:57 GMT +Connection: keep-alive +ETag: "68a48b91-128" +Cache-Control: public, max-age=31536000, immutable +X-Content-Type-Options: nosniff +X-Frame-Options: DENY +X-XSS-Protection: 1; mode=block +Accept-Ranges: bytes + +2025/08/19 10:34:57 [debug] 349771#349771: *53 write new buf t:1 f:0 00005CE04361AF50, pos 00005CE04361AF50, size: 389 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http write filter: l:0 f:0 s:389 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http output filter "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.txt?" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http copy filter: "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.txt?" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http postpone filter "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.txt?" 00007FFDD38FD160 +2025/08/19 10:34:57 [debug] 349771#349771: *53 write old buf t:1 f:0 00005CE04361AF50, pos 00005CE04361AF50, size: 389 file: 0, size: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *53 write new buf t:0 f:1 0000000000000000, pos 0000000000000000, size: 0 file: 0, size: 296 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http write filter: l:1 f:0 s:685 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http write filter limit 0 +2025/08/19 10:34:57 [debug] 349771#349771: *53 tcp_nopush +2025/08/19 10:34:57 [debug] 349771#349771: *53 writev: 389 of 389 +2025/08/19 10:34:57 [debug] 349771#349771: *53 sendfile: @0 296 +2025/08/19 10:34:57 [debug] 349771#349771: *53 sendfile: 296 of 296 @0 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http write filter 0000000000000000 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http copy filter: 0 "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.txt?" +2025/08/19 10:34:57 [debug] 349771#349771: *53 http finalize request: 0, "/22917078337a9df119979b8df2bbb59aafcc42161c50bd7881e68e27369f343c.txt?" a:1, c:1 +2025/08/19 10:34:57 [debug] 349771#349771: *53 set http keepalive handler +2025/08/19 10:34:57 [debug] 349771#349771: *53 http close request +2025/08/19 10:34:57 [debug] 349771#349771: *53 http log handler +2025/08/19 10:34:57 [debug] 349771#349771: *53 run cleanup: 00005CE04361AD60 +2025/08/19 10:34:57 [debug] 349771#349771: *53 file cleanup: fd:10 +2025/08/19 10:34:57 [debug] 349771#349771: *53 free: 00005CE043624610, unused: 5 +2025/08/19 10:34:57 [debug] 349771#349771: *53 free: 00005CE04361A980, unused: 1848 +2025/08/19 10:34:57 [debug] 349771#349771: *53 free: 00005CE0436090A0 +2025/08/19 10:34:57 [debug] 349771#349771: *53 hc free: 0000000000000000 +2025/08/19 10:34:57 [debug] 349771#349771: *53 hc busy: 0000000000000000 0 +2025/08/19 10:34:57 [debug] 349771#349771: *53 reusable connection: 1 +2025/08/19 10:34:57 [debug] 349771#349771: *53 event timer add: 6: 65000:180895803 +2025/08/19 10:34:57 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:34:57 [debug] 349771#349771: worker cycle +2025/08/19 10:34:57 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:34:57 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E0 +2025/08/19 10:34:57 [debug] 349771#349771: *53 http keepalive handler +2025/08/19 10:34:57 [debug] 349771#349771: *53 malloc: 00005CE0436090A0:1024 +2025/08/19 10:34:57 [debug] 349771#349771: *53 recv: eof:1, avail:-1 +2025/08/19 10:34:57 [debug] 349771#349771: *53 recv: fd:6 0 of 1024 +2025/08/19 10:34:57 [info] 349771#349771: *53 client 127.0.0.1 closed keepalive connection +2025/08/19 10:34:57 [debug] 349771#349771: *53 close http connection: 6 +2025/08/19 10:34:57 [debug] 349771#349771: *53 event timer del: 6: 180895803 +2025/08/19 10:34:57 [debug] 349771#349771: *53 reusable connection: 0 +2025/08/19 10:34:57 [debug] 349771#349771: *53 free: 00005CE0436090A0 +2025/08/19 10:34:57 [debug] 349771#349771: *53 free: 00005CE043606840, unused: 136 +2025/08/19 10:34:57 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:34:57 [debug] 349771#349771: worker cycle +2025/08/19 10:34:57 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:44:56 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:44:56 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:44:56 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *54 accept: 127.0.0.1:60708 fd:6 +2025/08/19 10:44:56 [debug] 349771#349771: *54 event timer add: 6: 60000:181489727 +2025/08/19 10:44:56 [debug] 349771#349771: *54 reusable connection: 1 +2025/08/19 10:44:56 [debug] 349771#349771: *54 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:44:56 [debug] 349771#349771: timer delta: 598923 +2025/08/19 10:44:56 [debug] 349771#349771: worker cycle +2025/08/19 10:44:56 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:44:56 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E1 +2025/08/19 10:44:56 [debug] 349771#349771: *54 http wait request handler +2025/08/19 10:44:56 [debug] 349771#349771: *54 malloc: 00005CE0436090A0:1024 +2025/08/19 10:44:56 [debug] 349771#349771: *54 recv: eof:0, avail:-1 +2025/08/19 10:44:56 [debug] 349771#349771: *54 recv: fd:6 84 of 1024 +2025/08/19 10:44:56 [debug] 349771#349771: *54 reusable connection: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *54 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *54 http process request line +2025/08/19 10:44:56 [debug] 349771#349771: *54 http request line: "GET /health HTTP/1.1" +2025/08/19 10:44:56 [debug] 349771#349771: *54 http uri: "/health" +2025/08/19 10:44:56 [debug] 349771#349771: *54 http args: "" +2025/08/19 10:44:56 [debug] 349771#349771: *54 http exten: "" +2025/08/19 10:44:56 [debug] 349771#349771: *54 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *54 http process request header line +2025/08/19 10:44:56 [debug] 349771#349771: *54 http header: "Host: localhost:9001" +2025/08/19 10:44:56 [debug] 349771#349771: *54 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:44:56 [debug] 349771#349771: *54 http header: "Accept: */*" +2025/08/19 10:44:56 [debug] 349771#349771: *54 http header done +2025/08/19 10:44:56 [debug] 349771#349771: *54 event timer del: 6: 181489727 +2025/08/19 10:44:56 [debug] 349771#349771: *54 generic phase: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *54 rewrite phase: 1 +2025/08/19 10:44:56 [debug] 349771#349771: *54 test location: "/health" +2025/08/19 10:44:56 [debug] 349771#349771: *54 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:44:56 [debug] 349771#349771: *54 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:44:56 [debug] 349771#349771: *54 using configuration "/health" +2025/08/19 10:44:56 [debug] 349771#349771: *54 http cl:-1 max:104857600 +2025/08/19 10:44:56 [debug] 349771#349771: *54 rewrite phase: 3 +2025/08/19 10:44:56 [debug] 349771#349771: *54 http set discard body +2025/08/19 10:44:56 [debug] 349771#349771: *54 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:44:56 GMT +Content-Type: application/octet-stream +Content-Length: 3 +Connection: keep-alive +Content-Type: text/plain + +2025/08/19 10:44:56 [debug] 349771#349771: *54 write new buf t:1 f:0 00005CE04361AD60, pos 00005CE04361AD60, size: 196 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *54 http write filter: l:0 f:0 s:196 +2025/08/19 10:44:56 [debug] 349771#349771: *54 http output filter "/health?" +2025/08/19 10:44:56 [debug] 349771#349771: *54 http copy filter: "/health?" +2025/08/19 10:44:56 [debug] 349771#349771: *54 http postpone filter "/health?" 00007FFDD38FD1C0 +2025/08/19 10:44:56 [debug] 349771#349771: *54 write old buf t:1 f:0 00005CE04361AD60, pos 00005CE04361AD60, size: 196 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *54 write new buf t:0 f:0 0000000000000000, pos 00005CE04363AD7A, size: 3 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *54 http write filter: l:1 f:0 s:199 +2025/08/19 10:44:56 [debug] 349771#349771: *54 http write filter limit 0 +2025/08/19 10:44:56 [debug] 349771#349771: *54 writev: 199 of 199 +2025/08/19 10:44:56 [debug] 349771#349771: *54 http write filter 0000000000000000 +2025/08/19 10:44:56 [debug] 349771#349771: *54 http copy filter: 0 "/health?" +2025/08/19 10:44:56 [debug] 349771#349771: *54 http finalize request: 0, "/health?" a:1, c:1 +2025/08/19 10:44:56 [debug] 349771#349771: *54 set http keepalive handler +2025/08/19 10:44:56 [debug] 349771#349771: *54 http close request +2025/08/19 10:44:56 [debug] 349771#349771: *54 http log handler +2025/08/19 10:44:56 [debug] 349771#349771: *54 free: 00005CE043624610, unused: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *54 free: 00005CE04361A980, unused: 2736 +2025/08/19 10:44:56 [debug] 349771#349771: *54 free: 00005CE0436090A0 +2025/08/19 10:44:56 [debug] 349771#349771: *54 hc free: 0000000000000000 +2025/08/19 10:44:56 [debug] 349771#349771: *54 hc busy: 0000000000000000 0 +2025/08/19 10:44:56 [debug] 349771#349771: *54 tcp_nodelay +2025/08/19 10:44:56 [debug] 349771#349771: *54 reusable connection: 1 +2025/08/19 10:44:56 [debug] 349771#349771: *54 event timer add: 6: 65000:181494727 +2025/08/19 10:44:56 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:44:56 [debug] 349771#349771: worker cycle +2025/08/19 10:44:56 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:44:56 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E1 +2025/08/19 10:44:56 [debug] 349771#349771: *54 http keepalive handler +2025/08/19 10:44:56 [debug] 349771#349771: *54 malloc: 00005CE0436090A0:1024 +2025/08/19 10:44:56 [debug] 349771#349771: *54 recv: eof:1, avail:-1 +2025/08/19 10:44:56 [debug] 349771#349771: *54 recv: fd:6 0 of 1024 +2025/08/19 10:44:56 [info] 349771#349771: *54 client 127.0.0.1 closed keepalive connection +2025/08/19 10:44:56 [debug] 349771#349771: *54 close http connection: 6 +2025/08/19 10:44:56 [debug] 349771#349771: *54 event timer del: 6: 181494727 +2025/08/19 10:44:56 [debug] 349771#349771: *54 reusable connection: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *54 free: 00005CE0436090A0 +2025/08/19 10:44:56 [debug] 349771#349771: *54 free: 00005CE043606840, unused: 136 +2025/08/19 10:44:56 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:44:56 [debug] 349771#349771: worker cycle +2025/08/19 10:44:56 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:44:56 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:44:56 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:44:56 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *55 accept: 127.0.0.1:60722 fd:6 +2025/08/19 10:44:56 [debug] 349771#349771: *55 event timer add: 6: 60000:181490036 +2025/08/19 10:44:56 [debug] 349771#349771: *55 reusable connection: 1 +2025/08/19 10:44:56 [debug] 349771#349771: *55 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:44:56 [debug] 349771#349771: timer delta: 308 +2025/08/19 10:44:56 [debug] 349771#349771: worker cycle +2025/08/19 10:44:56 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:44:56 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http wait request handler +2025/08/19 10:44:56 [debug] 349771#349771: *55 malloc: 00005CE0436090A0:1024 +2025/08/19 10:44:56 [debug] 349771#349771: *55 recv: eof:0, avail:-1 +2025/08/19 10:44:56 [debug] 349771#349771: *55 recv: fd:6 1024 of 1024 +2025/08/19 10:44:56 [debug] 349771#349771: *55 recv: avail:112 +2025/08/19 10:44:56 [debug] 349771#349771: *55 reusable connection: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http process request line +2025/08/19 10:44:56 [debug] 349771#349771: *55 http request line: "PUT /upload HTTP/1.1" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http uri: "/upload" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http args: "" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http exten: "" +2025/08/19 10:44:56 [debug] 349771#349771: *55 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http process request header line +2025/08/19 10:44:56 [debug] 349771#349771: *55 http header: "Host: localhost:9001" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http header: "Accept: */*" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIxOTYyYjRkMjI0NjliNTY4YzVjZWI5ZDY0MGZhZTEyODk4NjcyYWNkOWI0NDIwZjIwMmMxMTU0Yzg4ZWExNjYyIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQ2OTYsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJiM2JhYzFlMDdmYTYxZjQ2NjhjMDkyMGIzNDkzYTU3MTY0MmUxMGMxNGUxMzI1OTU4ZWFhYzZkN2U4NWUxZmIxIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxODI5NiJdXSwiY29udGVudCI6IiIsInNpZyI6IjkzOTQwMWNiMDIwODAwMTUxNDQxNWRlY2I5NDcyOGY2M2EwNTE5ZDExYmE4MWIyNmU4ZGRiYjlkNThlNDhhZjM2N2Y5MDhlY2VhOWQzNjQ2MTBlZjRmOGM5ZDI4NTM2YWNhNzlhOTlkZWY0ZWRmNjMyMzU5OWFkNDhkZTdmMmMxIn0=" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http header: "Content-Type: text/plain" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http header: "Content-Disposition: attachment; filename="test_blob_1755614696.txt"" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http header: "Content-Length: 296" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http header done +2025/08/19 10:44:56 [debug] 349771#349771: *55 event timer del: 6: 181490036 +2025/08/19 10:44:56 [debug] 349771#349771: *55 generic phase: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 rewrite phase: 1 +2025/08/19 10:44:56 [debug] 349771#349771: *55 test location: "/health" +2025/08/19 10:44:56 [debug] 349771#349771: *55 test location: "/upload" +2025/08/19 10:44:56 [debug] 349771#349771: *55 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:44:56 [debug] 349771#349771: *55 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:44:56 [debug] 349771#349771: *55 using configuration "/upload" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http cl:296 max:104857600 +2025/08/19 10:44:56 [debug] 349771#349771: *55 rewrite phase: 3 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "PUT" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script regex: "^(PUT)$" +2025/08/19 10:44:56 [notice] 349771#349771: *55 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script if +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script if: false +2025/08/19 10:44:56 [debug] 349771#349771: *55 post rewrite phase: 4 +2025/08/19 10:44:56 [debug] 349771#349771: *55 generic phase: 5 +2025/08/19 10:44:56 [debug] 349771#349771: *55 generic phase: 6 +2025/08/19 10:44:56 [debug] 349771#349771: *55 generic phase: 7 +2025/08/19 10:44:56 [debug] 349771#349771: *55 access phase: 8 +2025/08/19 10:44:56 [debug] 349771#349771: *55 access phase: 9 +2025/08/19 10:44:56 [debug] 349771#349771: *55 access phase: 10 +2025/08/19 10:44:56 [debug] 349771#349771: *55 post access phase: 11 +2025/08/19 10:44:56 [debug] 349771#349771: *55 generic phase: 12 +2025/08/19 10:44:56 [debug] 349771#349771: *55 generic phase: 13 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http client request body preread 184 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http request body content length filter +2025/08/19 10:44:56 [debug] 349771#349771: *55 http body new buf t:1 f:0 00005CE0436093E8, pos 00005CE0436093E8, size: 184 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http read client request body +2025/08/19 10:44:56 [debug] 349771#349771: *55 recv: eof:0, avail:112 +2025/08/19 10:44:56 [debug] 349771#349771: *55 recv: fd:6 112 of 112 +2025/08/19 10:44:56 [debug] 349771#349771: *55 recv: avail:0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http client request body recv 112 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http body new buf t:1 f:0 00005CE04361B410, pos 00005CE04361B410, size: 112 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http client request body rest 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http init upstream, client timer: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 10:44:56 [debug] 349771#349771: *55 posix_memalign: 00005CE043610140:4096 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "QUERY_STRING" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "QUERY_STRING: " +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "REQUEST_METHOD" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "PUT" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "CONTENT_TYPE" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "text/plain" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "CONTENT_LENGTH" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "296" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "SCRIPT_NAME" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "/upload" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "REQUEST_URI" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "/upload" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "DOCUMENT_URI" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "/upload" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "DOCUMENT_ROOT" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "./blobs" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "SERVER_PROTOCOL" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "HTTP/1.1" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "REQUEST_SCHEME" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "http" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "GATEWAY_INTERFACE" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "CGI/1.1" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "SERVER_SOFTWARE" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "nginx/" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "1.18.0" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "REMOTE_ADDR" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "127.0.0.1" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "REMOTE_PORT" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "60722" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "REMOTE_PORT: 60722" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "SERVER_ADDR" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "127.0.0.1" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "SERVER_PORT" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "9001" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "SERVER_NAME" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "localhost" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "REDIRECT_STATUS" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "200" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "SCRIPT_FILENAME" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script var: "./blobs" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http script copy: "/ginxsom.fcgi" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIxOTYyYjRkMjI0NjliNTY4YzVjZWI5ZDY0MGZhZTEyODk4NjcyYWNkOWI0NDIwZjIwMmMxMTU0Yzg4ZWExNjYyIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQ2OTYsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJiM2JhYzFlMDdmYTYxZjQ2NjhjMDkyMGIzNDkzYTU3MTY0MmUxMGMxNGUxMzI1OTU4ZWFhYzZkN2U4NWUxZmIxIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxODI5NiJdXSwiY29udGVudCI6IiIsInNpZyI6IjkzOTQwMWNiMDIwODAwMTUxNDQxNWRlY2I5NDcyOGY2M2EwNTE5ZDExYmE4MWIyNmU4ZGRiYjlkNThlNDhhZjM2N2Y5MDhlY2VhOWQzNjQ2MTBlZjRmOGM5ZDI4NTM2YWNhNzlhOTlkZWY0ZWRmNjMyMzU5OWFkNDhkZTdmMmMxIn0=" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755614696.txt"" +2025/08/19 10:44:56 [debug] 349771#349771: *55 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http cleanup add: 00005CE04361B760 +2025/08/19 10:44:56 [debug] 349771#349771: *55 get rr peer, try: 1 +2025/08/19 10:44:56 [debug] 349771#349771: *55 stream socket 10 +2025/08/19 10:44:56 [debug] 349771#349771: *55 epoll add connection: fd:10 ev:80002005 +2025/08/19 10:44:56 [debug] 349771#349771: *55 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #56 +2025/08/19 10:44:56 [debug] 349771#349771: *55 connected +2025/08/19 10:44:56 [debug] 349771#349771: *55 http upstream connect: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 posix_memalign: 00005CE0435EFF20:128 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http upstream send request +2025/08/19 10:44:56 [debug] 349771#349771: *55 http upstream send request body +2025/08/19 10:44:56 [debug] 349771#349771: *55 chain writer buf fl:0 s:1304 +2025/08/19 10:44:56 [debug] 349771#349771: *55 chain writer buf fl:0 s:184 +2025/08/19 10:44:56 [debug] 349771#349771: *55 chain writer buf fl:0 s:8 +2025/08/19 10:44:56 [debug] 349771#349771: *55 chain writer buf fl:0 s:112 +2025/08/19 10:44:56 [debug] 349771#349771: *55 chain writer buf fl:0 s:8 +2025/08/19 10:44:56 [debug] 349771#349771: *55 chain writer in: 00005CE04361B7F0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 writev: 1616 of 1616 +2025/08/19 10:44:56 [debug] 349771#349771: *55 chain writer out: 0000000000000000 +2025/08/19 10:44:56 [debug] 349771#349771: *55 event timer add: 10: 60000:181490036 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http request count:2 blk:0 +2025/08/19 10:44:56 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:44:56 [debug] 349771#349771: worker cycle +2025/08/19 10:44:56 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:44:56 [debug] 349771#349771: epoll: fd:6 ev:0004 d:000075EA426D11E0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http run request: "/upload?" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http upstream check client, write event:1, "/upload" +2025/08/19 10:44:56 [debug] 349771#349771: epoll: fd:10 ev:0004 d:000075EA426D12C8 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http upstream request: "/upload?" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http upstream dummy handler +2025/08/19 10:44:56 [debug] 349771#349771: timer delta: 2 +2025/08/19 10:44:56 [debug] 349771#349771: worker cycle +2025/08/19 10:44:56 [debug] 349771#349771: epoll timer: 59998 +2025/08/19 10:44:56 [debug] 349771#349771: epoll: fd:10 ev:2005 d:000075EA426D12C8 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http upstream request: "/upload?" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http upstream process header +2025/08/19 10:44:56 [debug] 349771#349771: *55 malloc: 00005CE043611150:4096 +2025/08/19 10:44:56 [debug] 349771#349771: *55 recv: eof:1, avail:-1 +2025/08/19 10:44:56 [debug] 349771#349771: *55 recv: fd:10 4096 of 4096 +2025/08/19 10:44:56 [debug] 349771#349771: *55 recv: avail:40 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 01 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 06 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 00 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 01 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 10 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 08 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 00 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 00 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record length: 4104 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIxOTYyYjRkMjI0NjliNTY4YzVjZWI5ZDY0MGZhZTEyODk4NjcyYWNkOWI0NDIwZjIwMmMxMTU0Yzg4ZWExNjYyIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQ2OTYsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJiM2JhYzFlMDdmYTYxZjQ2NjhjMDkyMGIzNDkzYTU3MTY0MmUxMGMxNGUxMzI1OTU4ZWFhYzZkN2U4NWUxZmIxIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxODI5NiJdXSwiY29udGVudCI6IiIsInNpZyI6IjkzOTQwMWNiMDIwODAwMTUxNDQxNWRlY2I5NDcyOGY2M2EwNTE5ZDExYmE4MWIyNmU4ZGRiYjlkNThlNDhhZjM2N2Y5MDhlY2VhOWQzNjQ2MTBlZjRmOGM5ZDI4NTM2YWNhNzlhOTlkZWY0ZWRmNjMyMzU5OWFkNDhkZTdmMmMxIn0=" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Authorization header present, length=DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiIxOTYyYjRkMjI0NjliNTY4YzVjZWI5ZDY0MGZhZTEyODk4NjcyYWNkOWI0NDIwZjIwMmMxMTU0..." +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"1962b4d22469b568c5ceb9d640fae12898672acd9b4420f202c1154c88ea1662","pubkey":"79be..." +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: parse_authorization_header returned: 0" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Successfully parsed authorization header" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Event JSON: {"kind":24242,"id":"1962b4d22469b568c5ceb9d640fae12898672acd9b4420f202c1154c88ea1662","pubkey":"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","created_at":1755614696,"tags":[["t","..." +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Successfully parsed JSON event" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Found pubkey in JSON: 79be667ef9dcbbac..." +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Copied pubkey to static buffer: 79be667ef9dcbbac..." +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Final uploader_pubkey after auth parsing: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Successfully read DEBUG: Calculated SHA-256: b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 posix_memalign: 00005CE043612160:4096 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Saving file to: blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.txt" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Successfully saved DEBUG: Content-Disposition header: attachment; filename="test_blob_1755614696.txt"" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Looking for filename= in Content-Disposition header" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Found filename= at position 12" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Filename value starts with: "test_blob_175561469" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Processing quoted filename" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Quoted filename length: DEBUG: Extracted quoted filename: 'test_blob_1755614696.txt'" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Final filename after extraction: test_blob_1755614696.txt" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: insert_blob_metadata() called for sha256='b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1'" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Opening database at path: db/ginxsom.db" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Database opened successfully for writing" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Preparing SQL: INSERT INTO blobs (sha256, size, type, uploaded_at, uploader_pubkey, filename) VALUES (?, ?, ?, ?, ?, ?)" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: SQL prepared successfully, binding parameters" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Parameter values to bind:" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: 1. sha256 = 'b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1'" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: 2. size = 296" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: 3. type = 'text/plain'" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: 4. uploaded_at = 1755614696" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: 5. uploader_pubkey = '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798'" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: 6. filename = 'test_blob_1755614696.txt'" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Binding parameter 1 (sha256)" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Binding parameter 2 (size)" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Binding parameter 3 (type)" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Binding parameter 4 (uploaded_at)" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Binding parameter 5 (uploader_pubkey)" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Binding uploader_pubkey as text: '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798'" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Binding parameter 6 (filename)" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Binding filename as text: 'test_blob_1755614696.txt'" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Parameters bound, executing INSERT" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: INSERT successful" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Database closed, returning 1" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "DEBUG: Blob metadata successfully stored in database" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "Status: 200 OK" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header: "Content-Type: application/json" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi parser: 1 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi header done +2025/08/19 10:44:56 [debug] 349771#349771: *55 posix_memalign: 00005CE043613170:4096 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *55 posix_memalign: 00005CE04367A280:4096 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *55 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:44:56 GMT +Content-Type: application/json +Transfer-Encoding: chunked +Connection: keep-alive +DEBUG: FastCGI received request +DEBUG: METHOD=PUT, URI=/upload +DEBUG: handle_upload_request called +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIxOTYyYjRkMjI0NjliNTY4YzVjZWI5ZDY0MGZhZTEyODk4NjcyYWNkOWI0NDIwZjIwMmMxMTU0Yzg4ZWExNjYyIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MTQ2OTYsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJiM2JhYzFlMDdmYTYxZjQ2NjhjMDkyMGIzNDkzYTU3MTY0MmUxMGMxNGUxMzI1OTU4ZWFhYzZkN2U4NWUxZmIxIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYxODI5NiJdXSwiY29udGVudCI6IiIsInNpZyI6IjkzOTQwMWNiMDIwODAwMTUxNDQxNWRlY2I5NDcyOGY2M2EwNTE5ZDExYmE4MWIyNmU4ZGRiYjlkNThlNDhhZjM2N2Y5MDhlY2VhOWQzNjQ2MTBlZjRmOGM5ZDI4NTM2YWNhNzlhOTlkZWY0ZWRmNjMyMzU5OWFkNDhkZTdmMmMxIn0= +DEBUG: Authorization header present, length=DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiIxOTYyYjRkMjI0NjliNTY4YzVjZWI5ZDY0MGZhZTEyODk4NjcyYWNkOWI0NDIwZjIwMmMxMTU0... +DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"1962b4d22469b568c5ceb9d640fae12898672acd9b4420f202c1154c88ea1662","pubkey":"79be... +DEBUG: parse_authorization_header returned: 0 +DEBUG: Successfully parsed authorization header +DEBUG: Event JSON: {"kind":24242,"id":"1962b4d22469b568c5ceb9d640fae12898672acd9b4420f202c1154c88ea1662","pubkey":"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","created_at":1755614696,"tags":[["t","... +DEBUG: Successfully parsed JSON event +DEBUG: Found pubkey in JSON: 79be667ef9dcbbac... +DEBUG: Copied pubkey to static buffer: 79be667ef9dcbbac... +DEBUG: Final uploader_pubkey after auth parsing: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 +DEBUG: Successfully read DEBUG: Calculated SHA-256: b3bac1e07fa61f4668c0920b3493a571642e10 +2025/08/19 10:44:56 [debug] 349771#349771: *55 write new buf t:1 f:0 00005CE04367A2A0, pos 00005CE04367A2A0, size: 3991 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http write filter: l:0 f:0 s:3991 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http write filter limit 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 writev: 3991 of 3991 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http write filter 0000000000000000 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http cacheable: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http upstream process upstream +2025/08/19 10:44:56 [debug] 349771#349771: *55 pipe read upstream: 1 +2025/08/19 10:44:56 [debug] 349771#349771: *55 pipe preread: 295 +2025/08/19 10:44:56 [debug] 349771#349771: *55 input buf #0 00005CE043612029 +2025/08/19 10:44:56 [debug] 349771#349771: *55 input buf 00005CE043612029 295 +2025/08/19 10:44:56 [debug] 349771#349771: *55 malloc: 00005CE04367B290:4096 +2025/08/19 10:44:56 [debug] 349771#349771: *55 readv: eof:1, avail:40 +2025/08/19 10:44:56 [debug] 349771#349771: *55 readv: 1, last:4096 +2025/08/19 10:44:56 [debug] 349771#349771: *55 readv: avail:0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 pipe recv chain: 40 +2025/08/19 10:44:56 [debug] 349771#349771: *55 readv: eof:1, avail:0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 readv: 1, last:4056 +2025/08/19 10:44:56 [debug] 349771#349771: *55 pipe recv chain: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 pipe buf in s:1 t:1 f:0 00005CE043611150, pos 00005CE043612029, size: 295 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 pipe buf free s:0 t:1 f:0 00005CE04367B290, pos 00005CE04367B290, size: 40 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 pipe length: -1 +2025/08/19 10:44:56 [debug] 349771#349771: *55 input buf #1 00005CE04367B290 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 01 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 06 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 00 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 01 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 00 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 00 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 00 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 00 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record length: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi closed stdout +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 01 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 03 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 00 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 01 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 00 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 08 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 00 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record byte: 00 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi record length: 8 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http fastcgi sent end request +2025/08/19 10:44:56 [debug] 349771#349771: *55 input buf 00005CE04367B290 16 +2025/08/19 10:44:56 [debug] 349771#349771: *55 pipe write downstream: 1 +2025/08/19 10:44:56 [debug] 349771#349771: *55 pipe write downstream flush in +2025/08/19 10:44:56 [debug] 349771#349771: *55 http output filter "/upload?" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http copy filter: "/upload?" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http postpone filter "/upload?" 00005CE04361B7B0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http chunk: 295 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http chunk: 16 +2025/08/19 10:44:56 [debug] 349771#349771: *55 write new buf t:1 f:0 00005CE043613BB0, pos 00005CE043613BB0, size: 5 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 write new buf t:1 f:0 00005CE043611150, pos 00005CE043612029, size: 295 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 write new buf t:1 f:0 00005CE04367B290, pos 00005CE04367B290, size: 16 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 write new buf t:0 f:0 0000000000000000, pos 00005CE037AC92E8, size: 2 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http write filter: l:0 f:0 s:318 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http copy filter: 0 "/upload?" +2025/08/19 10:44:56 [debug] 349771#349771: *55 pipe write downstream done +2025/08/19 10:44:56 [debug] 349771#349771: *55 event timer: 10, old: 181490036, new: 181490041 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http upstream exit: 0000000000000000 +2025/08/19 10:44:56 [debug] 349771#349771: *55 finalize http upstream request: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 finalize http fastcgi request +2025/08/19 10:44:56 [debug] 349771#349771: *55 free rr peer 1 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 close http upstream connection: 10 +2025/08/19 10:44:56 [debug] 349771#349771: *55 free: 00005CE0435EFF20, unused: 48 +2025/08/19 10:44:56 [debug] 349771#349771: *55 event timer del: 10: 181490036 +2025/08/19 10:44:56 [debug] 349771#349771: *55 reusable connection: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http upstream temp fd: -1 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http output filter "/upload?" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http copy filter: "/upload?" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http postpone filter "/upload?" 00005CE043613C98 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http chunk: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 write old buf t:1 f:0 00005CE043613BB0, pos 00005CE043613BB0, size: 5 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 write old buf t:1 f:0 00005CE043611150, pos 00005CE043612029, size: 295 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 write old buf t:1 f:0 00005CE04367B290, pos 00005CE04367B290, size: 16 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 write old buf t:0 f:0 0000000000000000, pos 00005CE037AC92E8, size: 2 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 write new buf t:0 f:0 0000000000000000, pos 00005CE037AC92E5, size: 5 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http write filter: l:1 f:0 s:323 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http write filter limit 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 writev: 323 of 323 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http write filter 0000000000000000 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http copy filter: 0 "/upload?" +2025/08/19 10:44:56 [debug] 349771#349771: *55 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 10:44:56 [debug] 349771#349771: *55 set http keepalive handler +2025/08/19 10:44:56 [debug] 349771#349771: *55 http close request +2025/08/19 10:44:56 [debug] 349771#349771: *55 http log handler +2025/08/19 10:44:56 [debug] 349771#349771: *55 free: 00005CE04367B290 +2025/08/19 10:44:56 [debug] 349771#349771: *55 free: 00005CE043611150 +2025/08/19 10:44:56 [debug] 349771#349771: *55 free: 00005CE043624610, unused: 3 +2025/08/19 10:44:56 [debug] 349771#349771: *55 free: 00005CE04361A980, unused: 8 +2025/08/19 10:44:56 [debug] 349771#349771: *55 free: 00005CE043610140, unused: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 free: 00005CE043612160, unused: 8 +2025/08/19 10:44:56 [debug] 349771#349771: *55 free: 00005CE043613170, unused: 986 +2025/08/19 10:44:56 [debug] 349771#349771: *55 free: 00005CE04367A280, unused: 73 +2025/08/19 10:44:56 [debug] 349771#349771: *55 free: 00005CE0436090A0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 hc free: 0000000000000000 +2025/08/19 10:44:56 [debug] 349771#349771: *55 hc busy: 0000000000000000 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 tcp_nodelay +2025/08/19 10:44:56 [debug] 349771#349771: *55 reusable connection: 1 +2025/08/19 10:44:56 [debug] 349771#349771: *55 event timer add: 6: 65000:181495041 +2025/08/19 10:44:56 [debug] 349771#349771: *55 post event 00005CE04364A320 +2025/08/19 10:44:56 [debug] 349771#349771: timer delta: 3 +2025/08/19 10:44:56 [debug] 349771#349771: posted event 00005CE04364A320 +2025/08/19 10:44:56 [debug] 349771#349771: *55 delete posted event 00005CE04364A320 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http keepalive handler +2025/08/19 10:44:56 [debug] 349771#349771: *55 malloc: 00005CE0436090A0:1024 +2025/08/19 10:44:56 [debug] 349771#349771: *55 recv: eof:0, avail:0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 free: 00005CE0436090A0 +2025/08/19 10:44:56 [debug] 349771#349771: worker cycle +2025/08/19 10:44:56 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:44:56 [debug] 349771#349771: epoll: fd:6 ev:2005 d:000075EA426D11E0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 http keepalive handler +2025/08/19 10:44:56 [debug] 349771#349771: *55 malloc: 00005CE0436090A0:1024 +2025/08/19 10:44:56 [debug] 349771#349771: *55 recv: eof:1, avail:-1 +2025/08/19 10:44:56 [debug] 349771#349771: *55 recv: fd:6 0 of 1024 +2025/08/19 10:44:56 [info] 349771#349771: *55 client 127.0.0.1 closed keepalive connection +2025/08/19 10:44:56 [debug] 349771#349771: *55 close http connection: 6 +2025/08/19 10:44:56 [debug] 349771#349771: *55 event timer del: 6: 181495041 +2025/08/19 10:44:56 [debug] 349771#349771: *55 reusable connection: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 free: 00005CE0436090A0 +2025/08/19 10:44:56 [debug] 349771#349771: *55 free: 00005CE043606840, unused: 120 +2025/08/19 10:44:56 [debug] 349771#349771: timer delta: 2 +2025/08/19 10:44:56 [debug] 349771#349771: worker cycle +2025/08/19 10:44:56 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:44:56 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:44:56 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:44:56 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *57 accept: 127.0.0.1:60728 fd:6 +2025/08/19 10:44:56 [debug] 349771#349771: *57 event timer add: 6: 60000:181490051 +2025/08/19 10:44:56 [debug] 349771#349771: *57 reusable connection: 1 +2025/08/19 10:44:56 [debug] 349771#349771: *57 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:44:56 [debug] 349771#349771: timer delta: 8 +2025/08/19 10:44:56 [debug] 349771#349771: worker cycle +2025/08/19 10:44:56 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:44:56 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E1 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http wait request handler +2025/08/19 10:44:56 [debug] 349771#349771: *57 malloc: 00005CE0436090A0:1024 +2025/08/19 10:44:56 [debug] 349771#349771: *57 recv: eof:0, avail:-1 +2025/08/19 10:44:56 [debug] 349771#349771: *57 recv: fd:6 142 of 1024 +2025/08/19 10:44:56 [debug] 349771#349771: *57 reusable connection: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *57 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http process request line +2025/08/19 10:44:56 [debug] 349771#349771: *57 http request line: "GET /b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1 HTTP/1.1" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http uri: "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http args: "" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http exten: "" +2025/08/19 10:44:56 [debug] 349771#349771: *57 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http process request header line +2025/08/19 10:44:56 [debug] 349771#349771: *57 http header: "Host: localhost:9001" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http header: "Accept: */*" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http header done +2025/08/19 10:44:56 [debug] 349771#349771: *57 event timer del: 6: 181490051 +2025/08/19 10:44:56 [debug] 349771#349771: *57 generic phase: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *57 rewrite phase: 1 +2025/08/19 10:44:56 [debug] 349771#349771: *57 test location: "/health" +2025/08/19 10:44:56 [debug] 349771#349771: *57 test location: "/debug/list" +2025/08/19 10:44:56 [debug] 349771#349771: *57 test location: "/" +2025/08/19 10:44:56 [debug] 349771#349771: *57 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:44:56 [debug] 349771#349771: *57 using configuration "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http cl:-1 max:104857600 +2025/08/19 10:44:56 [debug] 349771#349771: *57 rewrite phase: 3 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script var +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script var: "GET" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script value: "HEAD" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script equal +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script equal: no +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script if +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script if: false +2025/08/19 10:44:56 [debug] 349771#349771: *57 post rewrite phase: 4 +2025/08/19 10:44:56 [debug] 349771#349771: *57 generic phase: 5 +2025/08/19 10:44:56 [debug] 349771#349771: *57 generic phase: 6 +2025/08/19 10:44:56 [debug] 349771#349771: *57 generic phase: 7 +2025/08/19 10:44:56 [debug] 349771#349771: *57 access phase: 8 +2025/08/19 10:44:56 [debug] 349771#349771: *57 access phase: 9 +2025/08/19 10:44:56 [debug] 349771#349771: *57 access phase: 10 +2025/08/19 10:44:56 [debug] 349771#349771: *57 post access phase: 11 +2025/08/19 10:44:56 [debug] 349771#349771: *57 generic phase: 12 +2025/08/19 10:44:56 [debug] 349771#349771: *57 try files handler +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: "/" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script capture: "b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: ".jpg" +2025/08/19 10:44:56 [debug] 349771#349771: *57 trying to use file: "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.jpg" "./blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.jpg" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: "/" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script capture: "b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: ".jpeg" +2025/08/19 10:44:56 [debug] 349771#349771: *57 trying to use file: "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.jpeg" "./blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.jpeg" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: "/" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script capture: "b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: ".png" +2025/08/19 10:44:56 [debug] 349771#349771: *57 trying to use file: "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.png" "./blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.png" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: "/" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script capture: "b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: ".webp" +2025/08/19 10:44:56 [debug] 349771#349771: *57 trying to use file: "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.webp" "./blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.webp" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: "/" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script capture: "b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: ".gif" +2025/08/19 10:44:56 [debug] 349771#349771: *57 trying to use file: "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.gif" "./blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.gif" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: "/" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script capture: "b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: ".pdf" +2025/08/19 10:44:56 [debug] 349771#349771: *57 trying to use file: "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.pdf" "./blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.pdf" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: "/" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script capture: "b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: ".mp4" +2025/08/19 10:44:56 [debug] 349771#349771: *57 trying to use file: "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.mp4" "./blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.mp4" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: "/" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script capture: "b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: ".mp3" +2025/08/19 10:44:56 [debug] 349771#349771: *57 trying to use file: "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.mp3" "./blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.mp3" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: "/" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script capture: "b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http script copy: ".txt" +2025/08/19 10:44:56 [debug] 349771#349771: *57 trying to use file: "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.txt" "./blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.txt" +2025/08/19 10:44:56 [debug] 349771#349771: *57 try file uri: "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.txt" +2025/08/19 10:44:56 [debug] 349771#349771: *57 generic phase: 13 +2025/08/19 10:44:56 [debug] 349771#349771: *57 content phase: 14 +2025/08/19 10:44:56 [debug] 349771#349771: *57 content phase: 15 +2025/08/19 10:44:56 [debug] 349771#349771: *57 content phase: 16 +2025/08/19 10:44:56 [debug] 349771#349771: *57 content phase: 17 +2025/08/19 10:44:56 [debug] 349771#349771: *57 content phase: 18 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http filename: "./blobs/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.txt" +2025/08/19 10:44:56 [debug] 349771#349771: *57 add cleanup: 00005CE04361AD60 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http static fd: 10 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http set discard body +2025/08/19 10:44:56 [debug] 349771#349771: *57 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:44:56 GMT +Content-Type: text/plain +Content-Length: 296 +Last-Modified: Tue, 19 Aug 2025 14:44:56 GMT +Connection: keep-alive +ETag: "68a48de8-128" +Cache-Control: public, max-age=31536000, immutable +X-Content-Type-Options: nosniff +X-Frame-Options: DENY +X-XSS-Protection: 1; mode=block +Accept-Ranges: bytes + +2025/08/19 10:44:56 [debug] 349771#349771: *57 write new buf t:1 f:0 00005CE04361AF50, pos 00005CE04361AF50, size: 389 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http write filter: l:0 f:0 s:389 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http output filter "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.txt?" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http copy filter: "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.txt?" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http postpone filter "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.txt?" 00007FFDD38FD160 +2025/08/19 10:44:56 [debug] 349771#349771: *57 write old buf t:1 f:0 00005CE04361AF50, pos 00005CE04361AF50, size: 389 file: 0, size: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *57 write new buf t:0 f:1 0000000000000000, pos 0000000000000000, size: 0 file: 0, size: 296 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http write filter: l:1 f:0 s:685 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http write filter limit 0 +2025/08/19 10:44:56 [debug] 349771#349771: *57 tcp_nopush +2025/08/19 10:44:56 [debug] 349771#349771: *57 writev: 389 of 389 +2025/08/19 10:44:56 [debug] 349771#349771: *57 sendfile: @0 296 +2025/08/19 10:44:56 [debug] 349771#349771: *57 sendfile: 296 of 296 @0 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http write filter 0000000000000000 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http copy filter: 0 "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.txt?" +2025/08/19 10:44:56 [debug] 349771#349771: *57 http finalize request: 0, "/b3bac1e07fa61f4668c0920b3493a571642e10c14e1325958eaac6d7e85e1fb1.txt?" a:1, c:1 +2025/08/19 10:44:56 [debug] 349771#349771: *57 set http keepalive handler +2025/08/19 10:44:56 [debug] 349771#349771: *57 http close request +2025/08/19 10:44:56 [debug] 349771#349771: *57 http log handler +2025/08/19 10:44:56 [debug] 349771#349771: *57 run cleanup: 00005CE04361AD60 +2025/08/19 10:44:56 [debug] 349771#349771: *57 file cleanup: fd:10 +2025/08/19 10:44:56 [debug] 349771#349771: *57 free: 00005CE043624610, unused: 5 +2025/08/19 10:44:56 [debug] 349771#349771: *57 free: 00005CE04361A980, unused: 1848 +2025/08/19 10:44:56 [debug] 349771#349771: *57 free: 00005CE0436090A0 +2025/08/19 10:44:56 [debug] 349771#349771: *57 hc free: 0000000000000000 +2025/08/19 10:44:56 [debug] 349771#349771: *57 hc busy: 0000000000000000 0 +2025/08/19 10:44:56 [debug] 349771#349771: *57 reusable connection: 1 +2025/08/19 10:44:56 [debug] 349771#349771: *57 event timer add: 6: 65000:181495052 +2025/08/19 10:44:56 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:44:56 [debug] 349771#349771: worker cycle +2025/08/19 10:44:56 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:44:56 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E1 +2025/08/19 10:44:56 [debug] 349771#349771: *57 http keepalive handler +2025/08/19 10:44:56 [debug] 349771#349771: *57 malloc: 00005CE0436090A0:1024 +2025/08/19 10:44:56 [debug] 349771#349771: *57 recv: eof:1, avail:-1 +2025/08/19 10:44:56 [debug] 349771#349771: *57 recv: fd:6 0 of 1024 +2025/08/19 10:44:56 [info] 349771#349771: *57 client 127.0.0.1 closed keepalive connection +2025/08/19 10:44:56 [debug] 349771#349771: *57 close http connection: 6 +2025/08/19 10:44:56 [debug] 349771#349771: *57 event timer del: 6: 181495052 +2025/08/19 10:44:56 [debug] 349771#349771: *57 reusable connection: 0 +2025/08/19 10:44:56 [debug] 349771#349771: *57 free: 00005CE0436090A0 +2025/08/19 10:44:56 [debug] 349771#349771: *57 free: 00005CE043606840, unused: 136 +2025/08/19 10:44:56 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:44:56 [debug] 349771#349771: worker cycle +2025/08/19 10:44:56 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:55:42 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:55:42 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *58 accept: 127.0.0.1:60878 fd:6 +2025/08/19 10:55:42 [debug] 349771#349771: *58 event timer add: 6: 60000:182135664 +2025/08/19 10:55:42 [debug] 349771#349771: *58 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *58 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 645611 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 http wait request handler +2025/08/19 10:55:42 [debug] 349771#349771: *58 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *58 recv: eof:0, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *58 recv: fd:6 147 of 1024 +2025/08/19 10:55:42 [debug] 349771#349771: *58 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *58 http process request line +2025/08/19 10:55:42 [debug] 349771#349771: *58 http request line: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1" +2025/08/19 10:55:42 [debug] 349771#349771: *58 http uri: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:55:42 [debug] 349771#349771: *58 http args: "" +2025/08/19 10:55:42 [debug] 349771#349771: *58 http exten: "" +2025/08/19 10:55:42 [debug] 349771#349771: *58 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *58 http process request header line +2025/08/19 10:55:42 [debug] 349771#349771: *58 http header: "Host: localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *58 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:55:42 [debug] 349771#349771: *58 http header: "Accept: */*" +2025/08/19 10:55:42 [debug] 349771#349771: *58 http header done +2025/08/19 10:55:42 [debug] 349771#349771: *58 event timer del: 6: 182135664 +2025/08/19 10:55:42 [debug] 349771#349771: *58 generic phase: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 rewrite phase: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *58 test location: "/health" +2025/08/19 10:55:42 [debug] 349771#349771: *58 test location: "/upload" +2025/08/19 10:55:42 [debug] 349771#349771: *58 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:55:42 [debug] 349771#349771: *58 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:55:42 [debug] 349771#349771: *58 using configuration "" +2025/08/19 10:55:42 [debug] 349771#349771: *58 http cl:-1 max:104857600 +2025/08/19 10:55:42 [debug] 349771#349771: *58 rewrite phase: 3 +2025/08/19 10:55:42 [debug] 349771#349771: *58 post rewrite phase: 4 +2025/08/19 10:55:42 [debug] 349771#349771: *58 generic phase: 5 +2025/08/19 10:55:42 [debug] 349771#349771: *58 generic phase: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *58 generic phase: 7 +2025/08/19 10:55:42 [debug] 349771#349771: *58 access phase: 8 +2025/08/19 10:55:42 [debug] 349771#349771: *58 access phase: 9 +2025/08/19 10:55:42 [debug] 349771#349771: *58 access phase: 10 +2025/08/19 10:55:42 [debug] 349771#349771: *58 post access phase: 11 +2025/08/19 10:55:42 [debug] 349771#349771: *58 generic phase: 12 +2025/08/19 10:55:42 [debug] 349771#349771: *58 generic phase: 13 +2025/08/19 10:55:42 [debug] 349771#349771: *58 content phase: 14 +2025/08/19 10:55:42 [debug] 349771#349771: *58 content phase: 15 +2025/08/19 10:55:42 [debug] 349771#349771: *58 content phase: 16 +2025/08/19 10:55:42 [debug] 349771#349771: *58 content phase: 17 +2025/08/19 10:55:42 [debug] 349771#349771: *58 content phase: 18 +2025/08/19 10:55:42 [debug] 349771#349771: *58 http filename: "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:55:42 [debug] 349771#349771: *58 add cleanup: 00005CE0436254B8 +2025/08/19 10:55:42 [error] 349771#349771: *58 open() "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" failed (2: No such file or directory), client: 127.0.0.1, server: localhost, request: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1", host: "localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *58 http finalize request: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *58 http special response: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 10:55:42 [debug] 349771#349771: *58 http set discard body +2025/08/19 10:55:42 [debug] 349771#349771: *58 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:55:42 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 10:55:42 [debug] 349771#349771: *58 write new buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 http write filter: l:0 f:0 s:164 +2025/08/19 10:55:42 [debug] 349771#349771: *58 http output filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 10:55:42 [debug] 349771#349771: *58 http copy filter: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 10:55:42 [debug] 349771#349771: *58 http postpone filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" 00005CE043625600 +2025/08/19 10:55:42 [debug] 349771#349771: *58 write old buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08580, size: 100 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08C80, size: 62 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 http write filter: l:1 f:0 s:326 +2025/08/19 10:55:42 [debug] 349771#349771: *58 http write filter limit 0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 writev: 326 of 326 +2025/08/19 10:55:42 [debug] 349771#349771: *58 http write filter 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *58 http copy filter: 0 "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 10:55:42 [debug] 349771#349771: *58 http finalize request: 0, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *58 set http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *58 http close request +2025/08/19 10:55:42 [debug] 349771#349771: *58 http log handler +2025/08/19 10:55:42 [debug] 349771#349771: *58 free: 00005CE043624610, unused: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 free: 00005CE04361A980, unused: 2571 +2025/08/19 10:55:42 [debug] 349771#349771: *58 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 hc free: 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *58 hc busy: 0000000000000000 0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 tcp_nodelay +2025/08/19 10:55:42 [debug] 349771#349771: *58 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *58 event timer add: 6: 65000:182140665 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *58 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *58 recv: eof:1, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *58 recv: fd:6 0 of 1024 +2025/08/19 10:55:42 [info] 349771#349771: *58 client 127.0.0.1 closed keepalive connection +2025/08/19 10:55:42 [debug] 349771#349771: *58 close http connection: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *58 event timer del: 6: 182140665 +2025/08/19 10:55:42 [debug] 349771#349771: *58 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *58 free: 00005CE043606840, unused: 136 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:55:42 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:55:42 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *59 accept: 127.0.0.1:60890 fd:6 +2025/08/19 10:55:42 [debug] 349771#349771: *59 event timer add: 6: 60000:182135700 +2025/08/19 10:55:42 [debug] 349771#349771: *59 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *59 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 34 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E1 +2025/08/19 10:55:42 [debug] 349771#349771: *59 http wait request handler +2025/08/19 10:55:42 [debug] 349771#349771: *59 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *59 recv: eof:0, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *59 recv: fd:6 550 of 1024 +2025/08/19 10:55:42 [debug] 349771#349771: *59 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *59 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *59 http process request line +2025/08/19 10:55:42 [debug] 349771#349771: *59 http request line: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1" +2025/08/19 10:55:42 [debug] 349771#349771: *59 http uri: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:55:42 [debug] 349771#349771: *59 http args: "" +2025/08/19 10:55:42 [debug] 349771#349771: *59 http exten: "" +2025/08/19 10:55:42 [debug] 349771#349771: *59 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *59 http process request header line +2025/08/19 10:55:42 [debug] 349771#349771: *59 http header: "Host: localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *59 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:55:42 [debug] 349771#349771: *59 http header: "Accept: */*" +2025/08/19 10:55:42 [debug] 349771#349771: *59 http header: "Authorization: Nostr ewogICJpZCI6ICJwbGFjZWhvbGRlcl9pZCIsCiAgInB1YmtleSI6ICI3OWJlNjY3ZWY5ZGNiYmFjNTVhMDYyOTVjZTg3MGIwNzAyOWJmY2RiMmRjZTI4ZDk1OWYyODE1YjE2ZjgxNzk4IiwKICAia2luZCI6IDI0MjQyLAogICJjb250ZW50IjogIkxpc3QgQmxvYnMiLAogICJjcmVhdGVkX2F0IjogMTc1NTYxNTM0MiwKICAidGFncyI6IFsKICAgIFsidCIsICJsaXN0Il0sCiAgICBbImV4cGlyYXRpb24iLCAiMTc1NTYxODk0MiJdCiAgXSwKICAic2lnIjogInBsYWNlaG9sZGVyX3NpZ25hdHVyZSIKfQo=" +2025/08/19 10:55:42 [debug] 349771#349771: *59 http header done +2025/08/19 10:55:42 [debug] 349771#349771: *59 event timer del: 6: 182135700 +2025/08/19 10:55:42 [debug] 349771#349771: *59 generic phase: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *59 rewrite phase: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *59 test location: "/health" +2025/08/19 10:55:42 [debug] 349771#349771: *59 test location: "/upload" +2025/08/19 10:55:42 [debug] 349771#349771: *59 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:55:42 [debug] 349771#349771: *59 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:55:42 [debug] 349771#349771: *59 using configuration "" +2025/08/19 10:55:42 [debug] 349771#349771: *59 http cl:-1 max:104857600 +2025/08/19 10:55:42 [debug] 349771#349771: *59 rewrite phase: 3 +2025/08/19 10:55:42 [debug] 349771#349771: *59 post rewrite phase: 4 +2025/08/19 10:55:42 [debug] 349771#349771: *59 generic phase: 5 +2025/08/19 10:55:42 [debug] 349771#349771: *59 generic phase: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *59 generic phase: 7 +2025/08/19 10:55:42 [debug] 349771#349771: *59 access phase: 8 +2025/08/19 10:55:42 [debug] 349771#349771: *59 access phase: 9 +2025/08/19 10:55:42 [debug] 349771#349771: *59 access phase: 10 +2025/08/19 10:55:42 [debug] 349771#349771: *59 post access phase: 11 +2025/08/19 10:55:42 [debug] 349771#349771: *59 generic phase: 12 +2025/08/19 10:55:42 [debug] 349771#349771: *59 generic phase: 13 +2025/08/19 10:55:42 [debug] 349771#349771: *59 content phase: 14 +2025/08/19 10:55:42 [debug] 349771#349771: *59 content phase: 15 +2025/08/19 10:55:42 [debug] 349771#349771: *59 content phase: 16 +2025/08/19 10:55:42 [debug] 349771#349771: *59 content phase: 17 +2025/08/19 10:55:42 [debug] 349771#349771: *59 content phase: 18 +2025/08/19 10:55:42 [debug] 349771#349771: *59 http filename: "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:55:42 [debug] 349771#349771: *59 add cleanup: 00005CE0436254C8 +2025/08/19 10:55:42 [error] 349771#349771: *59 open() "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" failed (2: No such file or directory), client: 127.0.0.1, server: localhost, request: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1", host: "localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *59 http finalize request: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *59 http special response: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 10:55:42 [debug] 349771#349771: *59 http set discard body +2025/08/19 10:55:42 [debug] 349771#349771: *59 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:55:42 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 10:55:42 [debug] 349771#349771: *59 write new buf t:1 f:0 00005CE043625548, pos 00005CE043625548, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *59 http write filter: l:0 f:0 s:164 +2025/08/19 10:55:42 [debug] 349771#349771: *59 http output filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 10:55:42 [debug] 349771#349771: *59 http copy filter: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 10:55:42 [debug] 349771#349771: *59 http postpone filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" 00005CE04361AE88 +2025/08/19 10:55:42 [debug] 349771#349771: *59 write old buf t:1 f:0 00005CE043625548, pos 00005CE043625548, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *59 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08580, size: 100 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *59 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08C80, size: 62 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *59 http write filter: l:1 f:0 s:326 +2025/08/19 10:55:42 [debug] 349771#349771: *59 http write filter limit 0 +2025/08/19 10:55:42 [debug] 349771#349771: *59 writev: 326 of 326 +2025/08/19 10:55:42 [debug] 349771#349771: *59 http write filter 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *59 http copy filter: 0 "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 10:55:42 [debug] 349771#349771: *59 http finalize request: 0, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *59 set http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *59 http close request +2025/08/19 10:55:42 [debug] 349771#349771: *59 http log handler +2025/08/19 10:55:42 [debug] 349771#349771: *59 free: 00005CE043624610, unused: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *59 free: 00005CE04361A980, unused: 2555 +2025/08/19 10:55:42 [debug] 349771#349771: *59 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *59 hc free: 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *59 hc busy: 0000000000000000 0 +2025/08/19 10:55:42 [debug] 349771#349771: *59 tcp_nodelay +2025/08/19 10:55:42 [debug] 349771#349771: *59 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *59 event timer add: 6: 65000:182140700 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E1 +2025/08/19 10:55:42 [debug] 349771#349771: *59 http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *59 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *59 recv: eof:1, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *59 recv: fd:6 0 of 1024 +2025/08/19 10:55:42 [info] 349771#349771: *59 client 127.0.0.1 closed keepalive connection +2025/08/19 10:55:42 [debug] 349771#349771: *59 close http connection: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *59 event timer del: 6: 182140700 +2025/08/19 10:55:42 [debug] 349771#349771: *59 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *59 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *59 free: 00005CE043606840, unused: 136 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:55:42 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:55:42 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *60 accept: 127.0.0.1:60896 fd:6 +2025/08/19 10:55:42 [debug] 349771#349771: *60 event timer add: 6: 60000:182135721 +2025/08/19 10:55:42 [debug] 349771#349771: *60 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *60 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 20 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 http wait request handler +2025/08/19 10:55:42 [debug] 349771#349771: *60 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *60 recv: eof:0, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *60 recv: fd:6 164 of 1024 +2025/08/19 10:55:42 [debug] 349771#349771: *60 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *60 http process request line +2025/08/19 10:55:42 [debug] 349771#349771: *60 http request line: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942 HTTP/1.1" +2025/08/19 10:55:42 [debug] 349771#349771: *60 http uri: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:55:42 [debug] 349771#349771: *60 http args: "since=1755528942" +2025/08/19 10:55:42 [debug] 349771#349771: *60 http exten: "" +2025/08/19 10:55:42 [debug] 349771#349771: *60 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *60 http process request header line +2025/08/19 10:55:42 [debug] 349771#349771: *60 http header: "Host: localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *60 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:55:42 [debug] 349771#349771: *60 http header: "Accept: */*" +2025/08/19 10:55:42 [debug] 349771#349771: *60 http header done +2025/08/19 10:55:42 [debug] 349771#349771: *60 event timer del: 6: 182135721 +2025/08/19 10:55:42 [debug] 349771#349771: *60 generic phase: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 rewrite phase: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *60 test location: "/health" +2025/08/19 10:55:42 [debug] 349771#349771: *60 test location: "/upload" +2025/08/19 10:55:42 [debug] 349771#349771: *60 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:55:42 [debug] 349771#349771: *60 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:55:42 [debug] 349771#349771: *60 using configuration "" +2025/08/19 10:55:42 [debug] 349771#349771: *60 http cl:-1 max:104857600 +2025/08/19 10:55:42 [debug] 349771#349771: *60 rewrite phase: 3 +2025/08/19 10:55:42 [debug] 349771#349771: *60 post rewrite phase: 4 +2025/08/19 10:55:42 [debug] 349771#349771: *60 generic phase: 5 +2025/08/19 10:55:42 [debug] 349771#349771: *60 generic phase: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *60 generic phase: 7 +2025/08/19 10:55:42 [debug] 349771#349771: *60 access phase: 8 +2025/08/19 10:55:42 [debug] 349771#349771: *60 access phase: 9 +2025/08/19 10:55:42 [debug] 349771#349771: *60 access phase: 10 +2025/08/19 10:55:42 [debug] 349771#349771: *60 post access phase: 11 +2025/08/19 10:55:42 [debug] 349771#349771: *60 generic phase: 12 +2025/08/19 10:55:42 [debug] 349771#349771: *60 generic phase: 13 +2025/08/19 10:55:42 [debug] 349771#349771: *60 content phase: 14 +2025/08/19 10:55:42 [debug] 349771#349771: *60 content phase: 15 +2025/08/19 10:55:42 [debug] 349771#349771: *60 content phase: 16 +2025/08/19 10:55:42 [debug] 349771#349771: *60 content phase: 17 +2025/08/19 10:55:42 [debug] 349771#349771: *60 content phase: 18 +2025/08/19 10:55:42 [debug] 349771#349771: *60 http filename: "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:55:42 [debug] 349771#349771: *60 add cleanup: 00005CE0436254B8 +2025/08/19 10:55:42 [error] 349771#349771: *60 open() "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" failed (2: No such file or directory), client: 127.0.0.1, server: localhost, request: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942 HTTP/1.1", host: "localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *60 http finalize request: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *60 http special response: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942" +2025/08/19 10:55:42 [debug] 349771#349771: *60 http set discard body +2025/08/19 10:55:42 [debug] 349771#349771: *60 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:55:42 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 10:55:42 [debug] 349771#349771: *60 write new buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 http write filter: l:0 f:0 s:164 +2025/08/19 10:55:42 [debug] 349771#349771: *60 http output filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942" +2025/08/19 10:55:42 [debug] 349771#349771: *60 http copy filter: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942" +2025/08/19 10:55:42 [debug] 349771#349771: *60 http postpone filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942" 00005CE043625600 +2025/08/19 10:55:42 [debug] 349771#349771: *60 write old buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08580, size: 100 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08C80, size: 62 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 http write filter: l:1 f:0 s:326 +2025/08/19 10:55:42 [debug] 349771#349771: *60 http write filter limit 0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 writev: 326 of 326 +2025/08/19 10:55:42 [debug] 349771#349771: *60 http write filter 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *60 http copy filter: 0 "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942" +2025/08/19 10:55:42 [debug] 349771#349771: *60 http finalize request: 0, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *60 set http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *60 http close request +2025/08/19 10:55:42 [debug] 349771#349771: *60 http log handler +2025/08/19 10:55:42 [debug] 349771#349771: *60 free: 00005CE043624610, unused: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 free: 00005CE04361A980, unused: 2554 +2025/08/19 10:55:42 [debug] 349771#349771: *60 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 hc free: 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *60 hc busy: 0000000000000000 0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 tcp_nodelay +2025/08/19 10:55:42 [debug] 349771#349771: *60 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *60 event timer add: 6: 65000:182140722 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *60 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *60 recv: eof:1, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *60 recv: fd:6 0 of 1024 +2025/08/19 10:55:42 [info] 349771#349771: *60 client 127.0.0.1 closed keepalive connection +2025/08/19 10:55:42 [debug] 349771#349771: *60 close http connection: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *60 event timer del: 6: 182140722 +2025/08/19 10:55:42 [debug] 349771#349771: *60 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *60 free: 00005CE043606840, unused: 136 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:55:42 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:55:42 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *61 accept: 127.0.0.1:60898 fd:6 +2025/08/19 10:55:42 [debug] 349771#349771: *61 event timer add: 6: 60000:182135748 +2025/08/19 10:55:42 [debug] 349771#349771: *61 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *61 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 25 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E1 +2025/08/19 10:55:42 [debug] 349771#349771: *61 http wait request handler +2025/08/19 10:55:42 [debug] 349771#349771: *61 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *61 recv: eof:0, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *61 recv: fd:6 164 of 1024 +2025/08/19 10:55:42 [debug] 349771#349771: *61 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *61 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *61 http process request line +2025/08/19 10:55:42 [debug] 349771#349771: *61 http request line: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?until=1755615342 HTTP/1.1" +2025/08/19 10:55:42 [debug] 349771#349771: *61 http uri: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:55:42 [debug] 349771#349771: *61 http args: "until=1755615342" +2025/08/19 10:55:42 [debug] 349771#349771: *61 http exten: "" +2025/08/19 10:55:42 [debug] 349771#349771: *61 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *61 http process request header line +2025/08/19 10:55:42 [debug] 349771#349771: *61 http header: "Host: localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *61 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:55:42 [debug] 349771#349771: *61 http header: "Accept: */*" +2025/08/19 10:55:42 [debug] 349771#349771: *61 http header done +2025/08/19 10:55:42 [debug] 349771#349771: *61 event timer del: 6: 182135748 +2025/08/19 10:55:42 [debug] 349771#349771: *61 generic phase: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *61 rewrite phase: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *61 test location: "/health" +2025/08/19 10:55:42 [debug] 349771#349771: *61 test location: "/upload" +2025/08/19 10:55:42 [debug] 349771#349771: *61 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:55:42 [debug] 349771#349771: *61 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:55:42 [debug] 349771#349771: *61 using configuration "" +2025/08/19 10:55:42 [debug] 349771#349771: *61 http cl:-1 max:104857600 +2025/08/19 10:55:42 [debug] 349771#349771: *61 rewrite phase: 3 +2025/08/19 10:55:42 [debug] 349771#349771: *61 post rewrite phase: 4 +2025/08/19 10:55:42 [debug] 349771#349771: *61 generic phase: 5 +2025/08/19 10:55:42 [debug] 349771#349771: *61 generic phase: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *61 generic phase: 7 +2025/08/19 10:55:42 [debug] 349771#349771: *61 access phase: 8 +2025/08/19 10:55:42 [debug] 349771#349771: *61 access phase: 9 +2025/08/19 10:55:42 [debug] 349771#349771: *61 access phase: 10 +2025/08/19 10:55:42 [debug] 349771#349771: *61 post access phase: 11 +2025/08/19 10:55:42 [debug] 349771#349771: *61 generic phase: 12 +2025/08/19 10:55:42 [debug] 349771#349771: *61 generic phase: 13 +2025/08/19 10:55:42 [debug] 349771#349771: *61 content phase: 14 +2025/08/19 10:55:42 [debug] 349771#349771: *61 content phase: 15 +2025/08/19 10:55:42 [debug] 349771#349771: *61 content phase: 16 +2025/08/19 10:55:42 [debug] 349771#349771: *61 content phase: 17 +2025/08/19 10:55:42 [debug] 349771#349771: *61 content phase: 18 +2025/08/19 10:55:42 [debug] 349771#349771: *61 http filename: "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:55:42 [debug] 349771#349771: *61 add cleanup: 00005CE0436254B8 +2025/08/19 10:55:42 [error] 349771#349771: *61 open() "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" failed (2: No such file or directory), client: 127.0.0.1, server: localhost, request: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?until=1755615342 HTTP/1.1", host: "localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *61 http finalize request: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?until=1755615342" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *61 http special response: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?until=1755615342" +2025/08/19 10:55:42 [debug] 349771#349771: *61 http set discard body +2025/08/19 10:55:42 [debug] 349771#349771: *61 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:55:42 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 10:55:42 [debug] 349771#349771: *61 write new buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *61 http write filter: l:0 f:0 s:164 +2025/08/19 10:55:42 [debug] 349771#349771: *61 http output filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?until=1755615342" +2025/08/19 10:55:42 [debug] 349771#349771: *61 http copy filter: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?until=1755615342" +2025/08/19 10:55:42 [debug] 349771#349771: *61 http postpone filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?until=1755615342" 00005CE043625600 +2025/08/19 10:55:42 [debug] 349771#349771: *61 write old buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *61 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08580, size: 100 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *61 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08C80, size: 62 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *61 http write filter: l:1 f:0 s:326 +2025/08/19 10:55:42 [debug] 349771#349771: *61 http write filter limit 0 +2025/08/19 10:55:42 [debug] 349771#349771: *61 writev: 326 of 326 +2025/08/19 10:55:42 [debug] 349771#349771: *61 http write filter 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *61 http copy filter: 0 "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?until=1755615342" +2025/08/19 10:55:42 [debug] 349771#349771: *61 http finalize request: 0, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?until=1755615342" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *61 set http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *61 http close request +2025/08/19 10:55:42 [debug] 349771#349771: *61 http log handler +2025/08/19 10:55:42 [debug] 349771#349771: *61 free: 00005CE043624610, unused: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *61 free: 00005CE04361A980, unused: 2554 +2025/08/19 10:55:42 [debug] 349771#349771: *61 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *61 hc free: 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *61 hc busy: 0000000000000000 0 +2025/08/19 10:55:42 [debug] 349771#349771: *61 tcp_nodelay +2025/08/19 10:55:42 [debug] 349771#349771: *61 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *61 event timer add: 6: 65000:182140748 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E1 +2025/08/19 10:55:42 [debug] 349771#349771: *61 http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *61 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *61 recv: eof:1, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *61 recv: fd:6 0 of 1024 +2025/08/19 10:55:42 [info] 349771#349771: *61 client 127.0.0.1 closed keepalive connection +2025/08/19 10:55:42 [debug] 349771#349771: *61 close http connection: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *61 event timer del: 6: 182140748 +2025/08/19 10:55:42 [debug] 349771#349771: *61 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *61 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *61 free: 00005CE043606840, unused: 136 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:55:42 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:55:42 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *62 accept: 127.0.0.1:60902 fd:6 +2025/08/19 10:55:42 [debug] 349771#349771: *62 event timer add: 6: 60000:182135777 +2025/08/19 10:55:42 [debug] 349771#349771: *62 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *62 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 28 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 http wait request handler +2025/08/19 10:55:42 [debug] 349771#349771: *62 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *62 recv: eof:0, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *62 recv: fd:6 181 of 1024 +2025/08/19 10:55:42 [debug] 349771#349771: *62 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *62 http process request line +2025/08/19 10:55:42 [debug] 349771#349771: *62 http request line: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942&until=1755615342 HTTP/1.1" +2025/08/19 10:55:42 [debug] 349771#349771: *62 http uri: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:55:42 [debug] 349771#349771: *62 http args: "since=1755528942&until=1755615342" +2025/08/19 10:55:42 [debug] 349771#349771: *62 http exten: "" +2025/08/19 10:55:42 [debug] 349771#349771: *62 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *62 http process request header line +2025/08/19 10:55:42 [debug] 349771#349771: *62 http header: "Host: localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *62 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:55:42 [debug] 349771#349771: *62 http header: "Accept: */*" +2025/08/19 10:55:42 [debug] 349771#349771: *62 http header done +2025/08/19 10:55:42 [debug] 349771#349771: *62 event timer del: 6: 182135777 +2025/08/19 10:55:42 [debug] 349771#349771: *62 generic phase: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 rewrite phase: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *62 test location: "/health" +2025/08/19 10:55:42 [debug] 349771#349771: *62 test location: "/upload" +2025/08/19 10:55:42 [debug] 349771#349771: *62 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:55:42 [debug] 349771#349771: *62 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:55:42 [debug] 349771#349771: *62 using configuration "" +2025/08/19 10:55:42 [debug] 349771#349771: *62 http cl:-1 max:104857600 +2025/08/19 10:55:42 [debug] 349771#349771: *62 rewrite phase: 3 +2025/08/19 10:55:42 [debug] 349771#349771: *62 post rewrite phase: 4 +2025/08/19 10:55:42 [debug] 349771#349771: *62 generic phase: 5 +2025/08/19 10:55:42 [debug] 349771#349771: *62 generic phase: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *62 generic phase: 7 +2025/08/19 10:55:42 [debug] 349771#349771: *62 access phase: 8 +2025/08/19 10:55:42 [debug] 349771#349771: *62 access phase: 9 +2025/08/19 10:55:42 [debug] 349771#349771: *62 access phase: 10 +2025/08/19 10:55:42 [debug] 349771#349771: *62 post access phase: 11 +2025/08/19 10:55:42 [debug] 349771#349771: *62 generic phase: 12 +2025/08/19 10:55:42 [debug] 349771#349771: *62 generic phase: 13 +2025/08/19 10:55:42 [debug] 349771#349771: *62 content phase: 14 +2025/08/19 10:55:42 [debug] 349771#349771: *62 content phase: 15 +2025/08/19 10:55:42 [debug] 349771#349771: *62 content phase: 16 +2025/08/19 10:55:42 [debug] 349771#349771: *62 content phase: 17 +2025/08/19 10:55:42 [debug] 349771#349771: *62 content phase: 18 +2025/08/19 10:55:42 [debug] 349771#349771: *62 http filename: "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:55:42 [debug] 349771#349771: *62 add cleanup: 00005CE0436254B8 +2025/08/19 10:55:42 [error] 349771#349771: *62 open() "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" failed (2: No such file or directory), client: 127.0.0.1, server: localhost, request: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942&until=1755615342 HTTP/1.1", host: "localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *62 http finalize request: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942&until=1755615342" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *62 http special response: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942&until=1755615342" +2025/08/19 10:55:42 [debug] 349771#349771: *62 http set discard body +2025/08/19 10:55:42 [debug] 349771#349771: *62 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:55:42 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 10:55:42 [debug] 349771#349771: *62 write new buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 http write filter: l:0 f:0 s:164 +2025/08/19 10:55:42 [debug] 349771#349771: *62 http output filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942&until=1755615342" +2025/08/19 10:55:42 [debug] 349771#349771: *62 http copy filter: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942&until=1755615342" +2025/08/19 10:55:42 [debug] 349771#349771: *62 http postpone filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942&until=1755615342" 00005CE043625600 +2025/08/19 10:55:42 [debug] 349771#349771: *62 write old buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08580, size: 100 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08C80, size: 62 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 http write filter: l:1 f:0 s:326 +2025/08/19 10:55:42 [debug] 349771#349771: *62 http write filter limit 0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 writev: 326 of 326 +2025/08/19 10:55:42 [debug] 349771#349771: *62 http write filter 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *62 http copy filter: 0 "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942&until=1755615342" +2025/08/19 10:55:42 [debug] 349771#349771: *62 http finalize request: 0, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=1755528942&until=1755615342" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *62 set http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *62 http close request +2025/08/19 10:55:42 [debug] 349771#349771: *62 http log handler +2025/08/19 10:55:42 [debug] 349771#349771: *62 free: 00005CE043624610, unused: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 free: 00005CE04361A980, unused: 2537 +2025/08/19 10:55:42 [debug] 349771#349771: *62 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 hc free: 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *62 hc busy: 0000000000000000 0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 tcp_nodelay +2025/08/19 10:55:42 [debug] 349771#349771: *62 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *62 event timer add: 6: 65000:182140777 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *62 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *62 recv: eof:1, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *62 recv: fd:6 0 of 1024 +2025/08/19 10:55:42 [info] 349771#349771: *62 client 127.0.0.1 closed keepalive connection +2025/08/19 10:55:42 [debug] 349771#349771: *62 close http connection: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *62 event timer del: 6: 182140777 +2025/08/19 10:55:42 [debug] 349771#349771: *62 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *62 free: 00005CE043606840, unused: 136 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:55:42 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:55:42 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *63 accept: 127.0.0.1:60916 fd:6 +2025/08/19 10:55:42 [debug] 349771#349771: *63 event timer add: 6: 60000:182135793 +2025/08/19 10:55:42 [debug] 349771#349771: *63 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *63 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 15 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E1 +2025/08/19 10:55:42 [debug] 349771#349771: *63 http wait request handler +2025/08/19 10:55:42 [debug] 349771#349771: *63 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *63 recv: eof:0, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *63 recv: fd:6 147 of 1024 +2025/08/19 10:55:42 [debug] 349771#349771: *63 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *63 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *63 http process request line +2025/08/19 10:55:42 [debug] 349771#349771: *63 http request line: "GET /list/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef HTTP/1.1" +2025/08/19 10:55:42 [debug] 349771#349771: *63 http uri: "/list/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 10:55:42 [debug] 349771#349771: *63 http args: "" +2025/08/19 10:55:42 [debug] 349771#349771: *63 http exten: "" +2025/08/19 10:55:42 [debug] 349771#349771: *63 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *63 http process request header line +2025/08/19 10:55:42 [debug] 349771#349771: *63 http header: "Host: localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *63 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:55:42 [debug] 349771#349771: *63 http header: "Accept: */*" +2025/08/19 10:55:42 [debug] 349771#349771: *63 http header done +2025/08/19 10:55:42 [debug] 349771#349771: *63 event timer del: 6: 182135793 +2025/08/19 10:55:42 [debug] 349771#349771: *63 generic phase: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *63 rewrite phase: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *63 test location: "/health" +2025/08/19 10:55:42 [debug] 349771#349771: *63 test location: "/upload" +2025/08/19 10:55:42 [debug] 349771#349771: *63 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:55:42 [debug] 349771#349771: *63 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:55:42 [debug] 349771#349771: *63 using configuration "" +2025/08/19 10:55:42 [debug] 349771#349771: *63 http cl:-1 max:104857600 +2025/08/19 10:55:42 [debug] 349771#349771: *63 rewrite phase: 3 +2025/08/19 10:55:42 [debug] 349771#349771: *63 post rewrite phase: 4 +2025/08/19 10:55:42 [debug] 349771#349771: *63 generic phase: 5 +2025/08/19 10:55:42 [debug] 349771#349771: *63 generic phase: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *63 generic phase: 7 +2025/08/19 10:55:42 [debug] 349771#349771: *63 access phase: 8 +2025/08/19 10:55:42 [debug] 349771#349771: *63 access phase: 9 +2025/08/19 10:55:42 [debug] 349771#349771: *63 access phase: 10 +2025/08/19 10:55:42 [debug] 349771#349771: *63 post access phase: 11 +2025/08/19 10:55:42 [debug] 349771#349771: *63 generic phase: 12 +2025/08/19 10:55:42 [debug] 349771#349771: *63 generic phase: 13 +2025/08/19 10:55:42 [debug] 349771#349771: *63 content phase: 14 +2025/08/19 10:55:42 [debug] 349771#349771: *63 content phase: 15 +2025/08/19 10:55:42 [debug] 349771#349771: *63 content phase: 16 +2025/08/19 10:55:42 [debug] 349771#349771: *63 content phase: 17 +2025/08/19 10:55:42 [debug] 349771#349771: *63 content phase: 18 +2025/08/19 10:55:42 [debug] 349771#349771: *63 http filename: "./blobs/list/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 10:55:42 [debug] 349771#349771: *63 add cleanup: 00005CE0436254B8 +2025/08/19 10:55:42 [error] 349771#349771: *63 open() "./blobs/list/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" failed (2: No such file or directory), client: 127.0.0.1, server: localhost, request: "GET /list/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef HTTP/1.1", host: "localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *63 http finalize request: 404, "/list/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *63 http special response: 404, "/list/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 10:55:42 [debug] 349771#349771: *63 http set discard body +2025/08/19 10:55:42 [debug] 349771#349771: *63 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:55:42 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 10:55:42 [debug] 349771#349771: *63 write new buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *63 http write filter: l:0 f:0 s:164 +2025/08/19 10:55:42 [debug] 349771#349771: *63 http output filter "/list/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 10:55:42 [debug] 349771#349771: *63 http copy filter: "/list/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 10:55:42 [debug] 349771#349771: *63 http postpone filter "/list/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" 00005CE043625600 +2025/08/19 10:55:42 [debug] 349771#349771: *63 write old buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *63 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08580, size: 100 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *63 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08C80, size: 62 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *63 http write filter: l:1 f:0 s:326 +2025/08/19 10:55:42 [debug] 349771#349771: *63 http write filter limit 0 +2025/08/19 10:55:42 [debug] 349771#349771: *63 writev: 326 of 326 +2025/08/19 10:55:42 [debug] 349771#349771: *63 http write filter 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *63 http copy filter: 0 "/list/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 10:55:42 [debug] 349771#349771: *63 http finalize request: 0, "/list/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *63 set http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *63 http close request +2025/08/19 10:55:42 [debug] 349771#349771: *63 http log handler +2025/08/19 10:55:42 [debug] 349771#349771: *63 free: 00005CE043624610, unused: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *63 free: 00005CE04361A980, unused: 2571 +2025/08/19 10:55:42 [debug] 349771#349771: *63 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *63 hc free: 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *63 hc busy: 0000000000000000 0 +2025/08/19 10:55:42 [debug] 349771#349771: *63 tcp_nodelay +2025/08/19 10:55:42 [debug] 349771#349771: *63 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *63 event timer add: 6: 65000:182140793 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E1 +2025/08/19 10:55:42 [debug] 349771#349771: *63 http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *63 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *63 recv: eof:1, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *63 recv: fd:6 0 of 1024 +2025/08/19 10:55:42 [info] 349771#349771: *63 client 127.0.0.1 closed keepalive connection +2025/08/19 10:55:42 [debug] 349771#349771: *63 close http connection: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *63 event timer del: 6: 182140793 +2025/08/19 10:55:42 [debug] 349771#349771: *63 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *63 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *63 free: 00005CE043606840, unused: 136 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:55:42 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:55:42 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *64 accept: 127.0.0.1:60920 fd:6 +2025/08/19 10:55:42 [debug] 349771#349771: *64 event timer add: 6: 60000:182135806 +2025/08/19 10:55:42 [debug] 349771#349771: *64 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *64 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 12 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E0 +2025/08/19 10:55:42 [debug] 349771#349771: *64 http wait request handler +2025/08/19 10:55:42 [debug] 349771#349771: *64 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *64 recv: eof:0, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *64 recv: fd:6 97 of 1024 +2025/08/19 10:55:42 [debug] 349771#349771: *64 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *64 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *64 http process request line +2025/08/19 10:55:42 [debug] 349771#349771: *64 http request line: "GET /list/invalid_pubkey HTTP/1.1" +2025/08/19 10:55:42 [debug] 349771#349771: *64 http uri: "/list/invalid_pubkey" +2025/08/19 10:55:42 [debug] 349771#349771: *64 http args: "" +2025/08/19 10:55:42 [debug] 349771#349771: *64 http exten: "" +2025/08/19 10:55:42 [debug] 349771#349771: *64 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *64 http process request header line +2025/08/19 10:55:42 [debug] 349771#349771: *64 http header: "Host: localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *64 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:55:42 [debug] 349771#349771: *64 http header: "Accept: */*" +2025/08/19 10:55:42 [debug] 349771#349771: *64 http header done +2025/08/19 10:55:42 [debug] 349771#349771: *64 event timer del: 6: 182135806 +2025/08/19 10:55:42 [debug] 349771#349771: *64 generic phase: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *64 rewrite phase: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *64 test location: "/health" +2025/08/19 10:55:42 [debug] 349771#349771: *64 test location: "/upload" +2025/08/19 10:55:42 [debug] 349771#349771: *64 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:55:42 [debug] 349771#349771: *64 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:55:42 [debug] 349771#349771: *64 using configuration "" +2025/08/19 10:55:42 [debug] 349771#349771: *64 http cl:-1 max:104857600 +2025/08/19 10:55:42 [debug] 349771#349771: *64 rewrite phase: 3 +2025/08/19 10:55:42 [debug] 349771#349771: *64 post rewrite phase: 4 +2025/08/19 10:55:42 [debug] 349771#349771: *64 generic phase: 5 +2025/08/19 10:55:42 [debug] 349771#349771: *64 generic phase: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *64 generic phase: 7 +2025/08/19 10:55:42 [debug] 349771#349771: *64 access phase: 8 +2025/08/19 10:55:42 [debug] 349771#349771: *64 access phase: 9 +2025/08/19 10:55:42 [debug] 349771#349771: *64 access phase: 10 +2025/08/19 10:55:42 [debug] 349771#349771: *64 post access phase: 11 +2025/08/19 10:55:42 [debug] 349771#349771: *64 generic phase: 12 +2025/08/19 10:55:42 [debug] 349771#349771: *64 generic phase: 13 +2025/08/19 10:55:42 [debug] 349771#349771: *64 content phase: 14 +2025/08/19 10:55:42 [debug] 349771#349771: *64 content phase: 15 +2025/08/19 10:55:42 [debug] 349771#349771: *64 content phase: 16 +2025/08/19 10:55:42 [debug] 349771#349771: *64 content phase: 17 +2025/08/19 10:55:42 [debug] 349771#349771: *64 content phase: 18 +2025/08/19 10:55:42 [debug] 349771#349771: *64 http filename: "./blobs/list/invalid_pubkey" +2025/08/19 10:55:42 [debug] 349771#349771: *64 add cleanup: 00005CE043625480 +2025/08/19 10:55:42 [error] 349771#349771: *64 open() "./blobs/list/invalid_pubkey" failed (2: No such file or directory), client: 127.0.0.1, server: localhost, request: "GET /list/invalid_pubkey HTTP/1.1", host: "localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *64 http finalize request: 404, "/list/invalid_pubkey?" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *64 http special response: 404, "/list/invalid_pubkey?" +2025/08/19 10:55:42 [debug] 349771#349771: *64 http set discard body +2025/08/19 10:55:42 [debug] 349771#349771: *64 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:55:42 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 10:55:42 [debug] 349771#349771: *64 write new buf t:1 f:0 00005CE043625500, pos 00005CE043625500, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *64 http write filter: l:0 f:0 s:164 +2025/08/19 10:55:42 [debug] 349771#349771: *64 http output filter "/list/invalid_pubkey?" +2025/08/19 10:55:42 [debug] 349771#349771: *64 http copy filter: "/list/invalid_pubkey?" +2025/08/19 10:55:42 [debug] 349771#349771: *64 http postpone filter "/list/invalid_pubkey?" 00005CE0436255C8 +2025/08/19 10:55:42 [debug] 349771#349771: *64 write old buf t:1 f:0 00005CE043625500, pos 00005CE043625500, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *64 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08580, size: 100 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *64 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08C80, size: 62 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *64 http write filter: l:1 f:0 s:326 +2025/08/19 10:55:42 [debug] 349771#349771: *64 http write filter limit 0 +2025/08/19 10:55:42 [debug] 349771#349771: *64 writev: 326 of 326 +2025/08/19 10:55:42 [debug] 349771#349771: *64 http write filter 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *64 http copy filter: 0 "/list/invalid_pubkey?" +2025/08/19 10:55:42 [debug] 349771#349771: *64 http finalize request: 0, "/list/invalid_pubkey?" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *64 set http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *64 http close request +2025/08/19 10:55:42 [debug] 349771#349771: *64 http log handler +2025/08/19 10:55:42 [debug] 349771#349771: *64 free: 00005CE043624610, unused: 8 +2025/08/19 10:55:42 [debug] 349771#349771: *64 free: 00005CE04361A980, unused: 2669 +2025/08/19 10:55:42 [debug] 349771#349771: *64 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *64 hc free: 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *64 hc busy: 0000000000000000 0 +2025/08/19 10:55:42 [debug] 349771#349771: *64 tcp_nodelay +2025/08/19 10:55:42 [debug] 349771#349771: *64 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *64 event timer add: 6: 65000:182140806 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E0 +2025/08/19 10:55:42 [debug] 349771#349771: *64 http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *64 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *64 recv: eof:1, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *64 recv: fd:6 0 of 1024 +2025/08/19 10:55:42 [info] 349771#349771: *64 client 127.0.0.1 closed keepalive connection +2025/08/19 10:55:42 [debug] 349771#349771: *64 close http connection: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *64 event timer del: 6: 182140806 +2025/08/19 10:55:42 [debug] 349771#349771: *64 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *64 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *64 free: 00005CE043606840, unused: 136 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:55:42 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:55:42 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *65 accept: 127.0.0.1:60928 fd:6 +2025/08/19 10:55:42 [debug] 349771#349771: *65 event timer add: 6: 60000:182135815 +2025/08/19 10:55:42 [debug] 349771#349771: *65 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *65 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 9 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E1 +2025/08/19 10:55:42 [debug] 349771#349771: *65 http wait request handler +2025/08/19 10:55:42 [debug] 349771#349771: *65 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *65 recv: eof:0, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *65 recv: fd:6 175 of 1024 +2025/08/19 10:55:42 [debug] 349771#349771: *65 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *65 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *65 http process request line +2025/08/19 10:55:42 [debug] 349771#349771: *65 http request line: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=invalid&until=invalid HTTP/1.1" +2025/08/19 10:55:42 [debug] 349771#349771: *65 http uri: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:55:42 [debug] 349771#349771: *65 http args: "since=invalid&until=invalid" +2025/08/19 10:55:42 [debug] 349771#349771: *65 http exten: "" +2025/08/19 10:55:42 [debug] 349771#349771: *65 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:55:42 [debug] 349771#349771: *65 http process request header line +2025/08/19 10:55:42 [debug] 349771#349771: *65 http header: "Host: localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *65 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:55:42 [debug] 349771#349771: *65 http header: "Accept: */*" +2025/08/19 10:55:42 [debug] 349771#349771: *65 http header done +2025/08/19 10:55:42 [debug] 349771#349771: *65 event timer del: 6: 182135815 +2025/08/19 10:55:42 [debug] 349771#349771: *65 generic phase: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *65 rewrite phase: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *65 test location: "/health" +2025/08/19 10:55:42 [debug] 349771#349771: *65 test location: "/upload" +2025/08/19 10:55:42 [debug] 349771#349771: *65 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:55:42 [debug] 349771#349771: *65 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:55:42 [debug] 349771#349771: *65 using configuration "" +2025/08/19 10:55:42 [debug] 349771#349771: *65 http cl:-1 max:104857600 +2025/08/19 10:55:42 [debug] 349771#349771: *65 rewrite phase: 3 +2025/08/19 10:55:42 [debug] 349771#349771: *65 post rewrite phase: 4 +2025/08/19 10:55:42 [debug] 349771#349771: *65 generic phase: 5 +2025/08/19 10:55:42 [debug] 349771#349771: *65 generic phase: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *65 generic phase: 7 +2025/08/19 10:55:42 [debug] 349771#349771: *65 access phase: 8 +2025/08/19 10:55:42 [debug] 349771#349771: *65 access phase: 9 +2025/08/19 10:55:42 [debug] 349771#349771: *65 access phase: 10 +2025/08/19 10:55:42 [debug] 349771#349771: *65 post access phase: 11 +2025/08/19 10:55:42 [debug] 349771#349771: *65 generic phase: 12 +2025/08/19 10:55:42 [debug] 349771#349771: *65 generic phase: 13 +2025/08/19 10:55:42 [debug] 349771#349771: *65 content phase: 14 +2025/08/19 10:55:42 [debug] 349771#349771: *65 content phase: 15 +2025/08/19 10:55:42 [debug] 349771#349771: *65 content phase: 16 +2025/08/19 10:55:42 [debug] 349771#349771: *65 content phase: 17 +2025/08/19 10:55:42 [debug] 349771#349771: *65 content phase: 18 +2025/08/19 10:55:42 [debug] 349771#349771: *65 http filename: "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:55:42 [debug] 349771#349771: *65 add cleanup: 00005CE0436254B8 +2025/08/19 10:55:42 [error] 349771#349771: *65 open() "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" failed (2: No such file or directory), client: 127.0.0.1, server: localhost, request: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=invalid&until=invalid HTTP/1.1", host: "localhost:9001" +2025/08/19 10:55:42 [debug] 349771#349771: *65 http finalize request: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=invalid&until=invalid" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *65 http special response: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=invalid&until=invalid" +2025/08/19 10:55:42 [debug] 349771#349771: *65 http set discard body +2025/08/19 10:55:42 [debug] 349771#349771: *65 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:55:42 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 10:55:42 [debug] 349771#349771: *65 write new buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *65 http write filter: l:0 f:0 s:164 +2025/08/19 10:55:42 [debug] 349771#349771: *65 http output filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=invalid&until=invalid" +2025/08/19 10:55:42 [debug] 349771#349771: *65 http copy filter: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=invalid&until=invalid" +2025/08/19 10:55:42 [debug] 349771#349771: *65 http postpone filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=invalid&until=invalid" 00005CE043625600 +2025/08/19 10:55:42 [debug] 349771#349771: *65 write old buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *65 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08580, size: 100 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *65 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08C80, size: 62 file: 0, size: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *65 http write filter: l:1 f:0 s:326 +2025/08/19 10:55:42 [debug] 349771#349771: *65 http write filter limit 0 +2025/08/19 10:55:42 [debug] 349771#349771: *65 writev: 326 of 326 +2025/08/19 10:55:42 [debug] 349771#349771: *65 http write filter 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *65 http copy filter: 0 "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=invalid&until=invalid" +2025/08/19 10:55:42 [debug] 349771#349771: *65 http finalize request: 0, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?since=invalid&until=invalid" a:1, c:1 +2025/08/19 10:55:42 [debug] 349771#349771: *65 set http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *65 http close request +2025/08/19 10:55:42 [debug] 349771#349771: *65 http log handler +2025/08/19 10:55:42 [debug] 349771#349771: *65 free: 00005CE043624610, unused: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *65 free: 00005CE04361A980, unused: 2543 +2025/08/19 10:55:42 [debug] 349771#349771: *65 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *65 hc free: 0000000000000000 +2025/08/19 10:55:42 [debug] 349771#349771: *65 hc busy: 0000000000000000 0 +2025/08/19 10:55:42 [debug] 349771#349771: *65 tcp_nodelay +2025/08/19 10:55:42 [debug] 349771#349771: *65 reusable connection: 1 +2025/08/19 10:55:42 [debug] 349771#349771: *65 event timer add: 6: 65000:182140815 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:55:42 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E1 +2025/08/19 10:55:42 [debug] 349771#349771: *65 http keepalive handler +2025/08/19 10:55:42 [debug] 349771#349771: *65 malloc: 00005CE0436090A0:1024 +2025/08/19 10:55:42 [debug] 349771#349771: *65 recv: eof:1, avail:-1 +2025/08/19 10:55:42 [debug] 349771#349771: *65 recv: fd:6 0 of 1024 +2025/08/19 10:55:42 [info] 349771#349771: *65 client 127.0.0.1 closed keepalive connection +2025/08/19 10:55:42 [debug] 349771#349771: *65 close http connection: 6 +2025/08/19 10:55:42 [debug] 349771#349771: *65 event timer del: 6: 182140815 +2025/08/19 10:55:42 [debug] 349771#349771: *65 reusable connection: 0 +2025/08/19 10:55:42 [debug] 349771#349771: *65 free: 00005CE0436090A0 +2025/08/19 10:55:42 [debug] 349771#349771: *65 free: 00005CE043606840, unused: 136 +2025/08/19 10:55:42 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:55:42 [debug] 349771#349771: worker cycle +2025/08/19 10:55:42 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:56:40 [debug] 349771#349771: epoll: fd:5 ev:0001 d:000075EA426D1010 +2025/08/19 10:56:40 [debug] 349771#349771: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 10:56:40 [debug] 349771#349771: posix_memalign: 00005CE043606840:512 @16 +2025/08/19 10:56:40 [debug] 349771#349771: *66 accept: 127.0.0.1:51060 fd:6 +2025/08/19 10:56:40 [debug] 349771#349771: *66 event timer add: 6: 60000:182193291 +2025/08/19 10:56:40 [debug] 349771#349771: *66 reusable connection: 1 +2025/08/19 10:56:40 [debug] 349771#349771: *66 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 10:56:40 [debug] 349771#349771: timer delta: 57475 +2025/08/19 10:56:40 [debug] 349771#349771: worker cycle +2025/08/19 10:56:40 [debug] 349771#349771: epoll timer: 60000 +2025/08/19 10:56:40 [debug] 349771#349771: epoll: fd:6 ev:0001 d:000075EA426D11E0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 http wait request handler +2025/08/19 10:56:40 [debug] 349771#349771: *66 malloc: 00005CE0436090A0:1024 +2025/08/19 10:56:40 [debug] 349771#349771: *66 recv: eof:0, avail:-1 +2025/08/19 10:56:40 [debug] 349771#349771: *66 recv: fd:6 147 of 1024 +2025/08/19 10:56:40 [debug] 349771#349771: *66 reusable connection: 0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 posix_memalign: 00005CE043624610:4096 @16 +2025/08/19 10:56:40 [debug] 349771#349771: *66 http process request line +2025/08/19 10:56:40 [debug] 349771#349771: *66 http request line: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1" +2025/08/19 10:56:40 [debug] 349771#349771: *66 http uri: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:56:40 [debug] 349771#349771: *66 http args: "" +2025/08/19 10:56:40 [debug] 349771#349771: *66 http exten: "" +2025/08/19 10:56:40 [debug] 349771#349771: *66 posix_memalign: 00005CE04361A980:4096 @16 +2025/08/19 10:56:40 [debug] 349771#349771: *66 http process request header line +2025/08/19 10:56:40 [debug] 349771#349771: *66 http header: "Host: localhost:9001" +2025/08/19 10:56:40 [debug] 349771#349771: *66 http header: "User-Agent: curl/8.15.0" +2025/08/19 10:56:40 [debug] 349771#349771: *66 http header: "Accept: */*" +2025/08/19 10:56:40 [debug] 349771#349771: *66 http header done +2025/08/19 10:56:40 [debug] 349771#349771: *66 event timer del: 6: 182193291 +2025/08/19 10:56:40 [debug] 349771#349771: *66 generic phase: 0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 rewrite phase: 1 +2025/08/19 10:56:40 [debug] 349771#349771: *66 test location: "/health" +2025/08/19 10:56:40 [debug] 349771#349771: *66 test location: "/upload" +2025/08/19 10:56:40 [debug] 349771#349771: *66 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 10:56:40 [debug] 349771#349771: *66 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 10:56:40 [debug] 349771#349771: *66 using configuration "" +2025/08/19 10:56:40 [debug] 349771#349771: *66 http cl:-1 max:104857600 +2025/08/19 10:56:40 [debug] 349771#349771: *66 rewrite phase: 3 +2025/08/19 10:56:40 [debug] 349771#349771: *66 post rewrite phase: 4 +2025/08/19 10:56:40 [debug] 349771#349771: *66 generic phase: 5 +2025/08/19 10:56:40 [debug] 349771#349771: *66 generic phase: 6 +2025/08/19 10:56:40 [debug] 349771#349771: *66 generic phase: 7 +2025/08/19 10:56:40 [debug] 349771#349771: *66 access phase: 8 +2025/08/19 10:56:40 [debug] 349771#349771: *66 access phase: 9 +2025/08/19 10:56:40 [debug] 349771#349771: *66 access phase: 10 +2025/08/19 10:56:40 [debug] 349771#349771: *66 post access phase: 11 +2025/08/19 10:56:40 [debug] 349771#349771: *66 generic phase: 12 +2025/08/19 10:56:40 [debug] 349771#349771: *66 generic phase: 13 +2025/08/19 10:56:40 [debug] 349771#349771: *66 content phase: 14 +2025/08/19 10:56:40 [debug] 349771#349771: *66 content phase: 15 +2025/08/19 10:56:40 [debug] 349771#349771: *66 content phase: 16 +2025/08/19 10:56:40 [debug] 349771#349771: *66 content phase: 17 +2025/08/19 10:56:40 [debug] 349771#349771: *66 content phase: 18 +2025/08/19 10:56:40 [debug] 349771#349771: *66 http filename: "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 10:56:40 [debug] 349771#349771: *66 add cleanup: 00005CE0436254B8 +2025/08/19 10:56:40 [error] 349771#349771: *66 open() "./blobs/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" failed (2: No such file or directory), client: 127.0.0.1, server: localhost, request: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1", host: "localhost:9001" +2025/08/19 10:56:40 [debug] 349771#349771: *66 http finalize request: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" a:1, c:1 +2025/08/19 10:56:40 [debug] 349771#349771: *66 http special response: 404, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 10:56:40 [debug] 349771#349771: *66 http set discard body +2025/08/19 10:56:40 [debug] 349771#349771: *66 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 14:56:40 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 10:56:40 [debug] 349771#349771: *66 write new buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 http write filter: l:0 f:0 s:164 +2025/08/19 10:56:40 [debug] 349771#349771: *66 http output filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 10:56:40 [debug] 349771#349771: *66 http copy filter: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 10:56:40 [debug] 349771#349771: *66 http postpone filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" 00005CE043625600 +2025/08/19 10:56:40 [debug] 349771#349771: *66 write old buf t:1 f:0 00005CE043625538, pos 00005CE043625538, size: 164 file: 0, size: 0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08580, size: 100 file: 0, size: 0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 write new buf t:0 f:0 0000000000000000, pos 00005CE037B08C80, size: 62 file: 0, size: 0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 http write filter: l:1 f:0 s:326 +2025/08/19 10:56:40 [debug] 349771#349771: *66 http write filter limit 0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 writev: 326 of 326 +2025/08/19 10:56:40 [debug] 349771#349771: *66 http write filter 0000000000000000 +2025/08/19 10:56:40 [debug] 349771#349771: *66 http copy filter: 0 "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 10:56:40 [debug] 349771#349771: *66 http finalize request: 0, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" a:1, c:1 +2025/08/19 10:56:40 [debug] 349771#349771: *66 set http keepalive handler +2025/08/19 10:56:40 [debug] 349771#349771: *66 http close request +2025/08/19 10:56:40 [debug] 349771#349771: *66 http log handler +2025/08/19 10:56:40 [debug] 349771#349771: *66 free: 00005CE043624610, unused: 0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 free: 00005CE04361A980, unused: 2571 +2025/08/19 10:56:40 [debug] 349771#349771: *66 free: 00005CE0436090A0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 hc free: 0000000000000000 +2025/08/19 10:56:40 [debug] 349771#349771: *66 hc busy: 0000000000000000 0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 tcp_nodelay +2025/08/19 10:56:40 [debug] 349771#349771: *66 reusable connection: 1 +2025/08/19 10:56:40 [debug] 349771#349771: *66 event timer add: 6: 65000:182198291 +2025/08/19 10:56:40 [debug] 349771#349771: timer delta: 0 +2025/08/19 10:56:40 [debug] 349771#349771: worker cycle +2025/08/19 10:56:40 [debug] 349771#349771: epoll timer: 65000 +2025/08/19 10:56:40 [debug] 349771#349771: epoll: fd:6 ev:2001 d:000075EA426D11E0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 http keepalive handler +2025/08/19 10:56:40 [debug] 349771#349771: *66 malloc: 00005CE0436090A0:1024 +2025/08/19 10:56:40 [debug] 349771#349771: *66 recv: eof:1, avail:-1 +2025/08/19 10:56:40 [debug] 349771#349771: *66 recv: fd:6 0 of 1024 +2025/08/19 10:56:40 [info] 349771#349771: *66 client 127.0.0.1 closed keepalive connection +2025/08/19 10:56:40 [debug] 349771#349771: *66 close http connection: 6 +2025/08/19 10:56:40 [debug] 349771#349771: *66 event timer del: 6: 182198291 +2025/08/19 10:56:40 [debug] 349771#349771: *66 reusable connection: 0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 free: 00005CE0436090A0 +2025/08/19 10:56:40 [debug] 349771#349771: *66 free: 00005CE043606840, unused: 136 +2025/08/19 10:56:40 [debug] 349771#349771: timer delta: 1 +2025/08/19 10:56:40 [debug] 349771#349771: worker cycle +2025/08/19 10:56:40 [debug] 349771#349771: epoll timer: -1 +2025/08/19 10:58:13 [notice] 349770#349770: signal 15 (SIGTERM) received from 389333, exiting +2025/08/19 10:58:13 [debug] 349770#349770: wake up, sigio 0 +2025/08/19 10:58:13 [debug] 349770#349770: child: 0 349771 e:0 t:0 d:0 r:1 j:0 +2025/08/19 10:58:13 [debug] 349770#349770: termination cycle: 50 +2025/08/19 10:58:13 [debug] 349770#349770: sigsuspend +2025/08/19 10:58:13 [debug] 349771#349771: epoll: fd:7 ev:0001 d:000075EA426D10F8 +2025/08/19 10:58:13 [debug] 349771#349771: channel handler +2025/08/19 10:58:13 [debug] 349771#349771: channel: 32 +2025/08/19 10:58:13 [debug] 349771#349771: channel command: 4 +2025/08/19 10:58:13 [debug] 349771#349771: channel: -2 +2025/08/19 10:58:13 [debug] 349771#349771: timer delta: 92888 +2025/08/19 10:58:13 [notice] 349771#349771: exiting +2025/08/19 10:58:13 [debug] 349771#349771: flush files +2025/08/19 10:58:13 [debug] 349771#349771: run cleanup: 00005CE043647A48 +2025/08/19 10:58:13 [debug] 349771#349771: run cleanup: 00005CE04363EC50 +2025/08/19 10:58:13 [debug] 349771#349771: cleanup resolver +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE043648990 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE04363F7A0 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE043626730 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE043625620 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE043623600 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE04361E530 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE04361D470 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE04361C3B0 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE04360C130, unused: 0 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE043615160, unused: 0 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE04361F5F0, unused: 0 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE043627740, unused: 0 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE04362B750, unused: 1 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE04362F760, unused: 0 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE043633770, unused: 0 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE043637780, unused: 0 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE04363B790, unused: 0 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE043640970, unused: 0 +2025/08/19 10:58:13 [debug] 349771#349771: free: 00005CE043644980, unused: 3872 +2025/08/19 10:58:13 [notice] 349771#349771: exit +2025/08/19 10:58:13 [notice] 349770#349770: signal 17 (SIGCHLD) received from 349771 +2025/08/19 10:58:13 [notice] 349770#349770: worker process 349771 exited with code 0 +2025/08/19 10:58:13 [debug] 349770#349770: shmtx forced unlock +2025/08/19 10:58:13 [debug] 349770#349770: wake up, sigio 3 +2025/08/19 10:58:13 [debug] 349770#349770: reap children +2025/08/19 10:58:13 [debug] 349770#349770: child: 0 349771 e:1 t:1 d:0 r:1 j:0 +2025/08/19 10:58:13 [notice] 349770#349770: exit +2025/08/19 10:58:13 [debug] 349770#349770: close listening 0.0.0.0:9001 #5 +2025/08/19 10:58:13 [debug] 349770#349770: run cleanup: 00005CE04363EC50 +2025/08/19 10:58:13 [debug] 349770#349770: cleanup resolver +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE043648990 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE04363F7A0 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE043626730 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE043625620 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE043623600 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE04361E530 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE04361D470 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE04361C3B0 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE04360C130, unused: 0 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE043615160, unused: 0 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE04361F5F0, unused: 0 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE043627740, unused: 0 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE04362B750, unused: 1 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE04362F760, unused: 0 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE043633770, unused: 0 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE043637780, unused: 0 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE04363B790, unused: 0 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE043640970, unused: 0 +2025/08/19 10:58:13 [debug] 349770#349770: free: 00005CE043644980, unused: 3903 +2025/08/19 11:00:18 [debug] 390405#390405: bind() 0.0.0.0:9001 #5 +2025/08/19 11:00:18 [notice] 390405#390405: using the "epoll" event method +2025/08/19 11:00:18 [debug] 390405#390405: counter: 00007399280DC080, 1 +2025/08/19 11:00:18 [notice] 390405#390405: nginx/1.18.0 (Ubuntu) +2025/08/19 11:00:18 [notice] 390405#390405: OS: Linux 6.12.10-76061203-generic +2025/08/19 11:00:18 [notice] 390405#390405: getrlimit(RLIMIT_NOFILE): 1048576:1048576 +2025/08/19 11:00:18 [debug] 390406#390405: write: 6, 00007FFDF20E4780, 7, 0 +2025/08/19 11:00:18 [debug] 390406#390406: setproctitle: "nginx: master process nginx -p . -c config/local-nginx.conf" +2025/08/19 11:00:18 [notice] 390406#390406: start worker processes +2025/08/19 11:00:18 [debug] 390406#390406: channel 6:7 +2025/08/19 11:00:18 [notice] 390406#390406: start worker process 390407 +2025/08/19 11:00:18 [debug] 390406#390406: sigsuspend +2025/08/19 11:00:18 [debug] 390407#390407: add cleanup: 0000606FBB9DF7E0 +2025/08/19 11:00:18 [debug] 390407#390407: malloc: 0000606FBB999BD0:8 +2025/08/19 11:00:18 [debug] 390407#390407: notify eventfd: 9 +2025/08/19 11:00:18 [debug] 390407#390407: testing the EPOLLRDHUP flag: success +2025/08/19 11:00:18 [debug] 390407#390407: malloc: 0000606FBB9AC340:6144 +2025/08/19 11:00:18 [debug] 390407#390407: malloc: 0000739927ED4010:237568 +2025/08/19 11:00:18 [debug] 390407#390407: malloc: 0000606FBB9E5450:98304 +2025/08/19 11:00:18 [debug] 390407#390407: malloc: 0000606FBB9FD460:98304 +2025/08/19 11:00:18 [debug] 390407#390407: epoll add event: fd:5 op:1 ev:00002001 +2025/08/19 11:00:18 [debug] 390407#390407: epoll add event: fd:7 op:1 ev:00002001 +2025/08/19 11:00:18 [debug] 390407#390407: setproctitle: "nginx: worker process" +2025/08/19 11:00:18 [debug] 390407#390407: worker cycle +2025/08/19 11:00:18 [debug] 390407#390407: epoll timer: -1 +2025/08/19 11:00:46 [debug] 390407#390407: epoll: fd:5 ev:0001 d:0000739927ED4010 +2025/08/19 11:00:46 [debug] 390407#390407: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 11:00:46 [debug] 390407#390407: posix_memalign: 0000606FBB998840:512 @16 +2025/08/19 11:00:46 [debug] 390407#390407: *1 accept: 127.0.0.1:56230 fd:6 +2025/08/19 11:00:46 [debug] 390407#390407: *1 event timer add: 6: 60000:182439234 +2025/08/19 11:00:46 [debug] 390407#390407: *1 reusable connection: 1 +2025/08/19 11:00:46 [debug] 390407#390407: *1 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 11:00:46 [debug] 390407#390407: timer delta: 27677 +2025/08/19 11:00:46 [debug] 390407#390407: worker cycle +2025/08/19 11:00:46 [debug] 390407#390407: epoll timer: 60000 +2025/08/19 11:00:46 [debug] 390407#390407: epoll: fd:6 ev:0001 d:0000739927ED41E0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http wait request handler +2025/08/19 11:00:46 [debug] 390407#390407: *1 malloc: 0000606FBB99B0A0:1024 +2025/08/19 11:00:46 [debug] 390407#390407: *1 recv: eof:0, avail:-1 +2025/08/19 11:00:46 [debug] 390407#390407: *1 recv: fd:6 147 of 1024 +2025/08/19 11:00:46 [debug] 390407#390407: *1 reusable connection: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 posix_memalign: 0000606FBB9B77E0:4096 @16 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http process request line +2025/08/19 11:00:46 [debug] 390407#390407: *1 http request line: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http uri: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http args: "" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http exten: "" +2025/08/19 11:00:46 [debug] 390407#390407: *1 posix_memalign: 0000606FBB9ADB50:4096 @16 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http process request header line +2025/08/19 11:00:46 [debug] 390407#390407: *1 http header: "Host: localhost:9001" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http header: "User-Agent: curl/8.15.0" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http header: "Accept: */*" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http header done +2025/08/19 11:00:46 [debug] 390407#390407: *1 event timer del: 6: 182439234 +2025/08/19 11:00:46 [debug] 390407#390407: *1 generic phase: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 rewrite phase: 1 +2025/08/19 11:00:46 [debug] 390407#390407: *1 test location: "/health" +2025/08/19 11:00:46 [debug] 390407#390407: *1 test location: "/upload" +2025/08/19 11:00:46 [debug] 390407#390407: *1 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 11:00:46 [debug] 390407#390407: *1 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 11:00:46 [debug] 390407#390407: *1 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 11:00:46 [debug] 390407#390407: *1 using configuration "^/list/([a-f0-9]{64}).*$" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http cl:-1 max:104857600 +2025/08/19 11:00:46 [debug] 390407#390407: *1 rewrite phase: 3 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "GET" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script regex: "^(GET)$" +2025/08/19 11:00:46 [notice] 390407#390407: *1 "^(GET)$" matches "GET", client: 127.0.0.1, server: localhost, request: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1", host: "localhost:9001" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script if +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script if: false +2025/08/19 11:00:46 [debug] 390407#390407: *1 post rewrite phase: 4 +2025/08/19 11:00:46 [debug] 390407#390407: *1 generic phase: 5 +2025/08/19 11:00:46 [debug] 390407#390407: *1 generic phase: 6 +2025/08/19 11:00:46 [debug] 390407#390407: *1 generic phase: 7 +2025/08/19 11:00:46 [debug] 390407#390407: *1 access phase: 8 +2025/08/19 11:00:46 [debug] 390407#390407: *1 access phase: 9 +2025/08/19 11:00:46 [debug] 390407#390407: *1 access phase: 10 +2025/08/19 11:00:46 [debug] 390407#390407: *1 post access phase: 11 +2025/08/19 11:00:46 [debug] 390407#390407: *1 generic phase: 12 +2025/08/19 11:00:46 [debug] 390407#390407: *1 generic phase: 13 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http init upstream, client timer: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "QUERY_STRING" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "QUERY_STRING: " +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "REQUEST_METHOD" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "GET" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "REQUEST_METHOD: GET" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "CONTENT_TYPE" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "CONTENT_TYPE: " +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "CONTENT_LENGTH" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "CONTENT_LENGTH: " +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "SCRIPT_NAME" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "SCRIPT_NAME: /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "REQUEST_URI" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "REQUEST_URI: /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "DOCUMENT_URI" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "DOCUMENT_URI: /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "DOCUMENT_ROOT" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "./blobs" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "SERVER_PROTOCOL" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "HTTP/1.1" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "REQUEST_SCHEME" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "http" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "GATEWAY_INTERFACE" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "CGI/1.1" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "SERVER_SOFTWARE" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "nginx/" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "1.18.0" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "REMOTE_ADDR" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "127.0.0.1" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "REMOTE_PORT" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "56230" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "REMOTE_PORT: 56230" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "SERVER_ADDR" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "127.0.0.1" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "SERVER_PORT" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "9001" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "SERVER_NAME" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "localhost" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "REDIRECT_STATUS" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "200" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "SCRIPT_FILENAME" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script var: "./blobs" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http script copy: "/ginxsom.fcgi" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 11:00:46 [debug] 390407#390407: *1 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http cleanup add: 0000606FBB9B87C8 +2025/08/19 11:00:46 [debug] 390407#390407: *1 get rr peer, try: 1 +2025/08/19 11:00:46 [debug] 390407#390407: *1 stream socket 10 +2025/08/19 11:00:46 [debug] 390407#390407: *1 epoll add connection: fd:10 ev:80002005 +2025/08/19 11:00:46 [debug] 390407#390407: *1 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #2 +2025/08/19 11:00:46 [debug] 390407#390407: *1 connected +2025/08/19 11:00:46 [debug] 390407#390407: *1 http upstream connect: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 posix_memalign: 0000606FBB981F20:128 @16 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http upstream send request +2025/08/19 11:00:46 [debug] 390407#390407: *1 http upstream send request body +2025/08/19 11:00:46 [debug] 390407#390407: *1 chain writer buf fl:0 s:704 +2025/08/19 11:00:46 [debug] 390407#390407: *1 chain writer in: 0000606FBB9AE8C8 +2025/08/19 11:00:46 [debug] 390407#390407: *1 writev: 704 of 704 +2025/08/19 11:00:46 [debug] 390407#390407: *1 chain writer out: 0000000000000000 +2025/08/19 11:00:46 [debug] 390407#390407: *1 event timer add: 10: 60000:182439234 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http finalize request: -4, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" a:1, c:2 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http request count:2 blk:0 +2025/08/19 11:00:46 [debug] 390407#390407: timer delta: 0 +2025/08/19 11:00:46 [debug] 390407#390407: worker cycle +2025/08/19 11:00:46 [debug] 390407#390407: epoll timer: 60000 +2025/08/19 11:00:46 [debug] 390407#390407: epoll: fd:6 ev:0004 d:0000739927ED41E0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http run request: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http upstream check client, write event:1, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:00:46 [debug] 390407#390407: epoll: fd:10 ev:2005 d:0000739927ED42C8 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http upstream request: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http upstream process header +2025/08/19 11:00:46 [debug] 390407#390407: *1 malloc: 0000606FBB9A2140:4096 +2025/08/19 11:00:46 [debug] 390407#390407: *1 recv: eof:1, avail:-1 +2025/08/19 11:00:46 [debug] 390407#390407: *1 recv: fd:10 248 of 4096 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 01 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 06 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 00 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 01 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 00 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: D4 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 04 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 00 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record length: 212 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi parser: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi parser: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi header: "DEBUG: METHOD=GET, URI=/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi parser: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 posix_memalign: 0000606FBB9A3150:4096 @16 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi header: "Status: 501 Not Implemented" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi parser: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi header: "Content-Type: text/plain" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi parser: 1 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi header done +2025/08/19 11:00:46 [debug] 390407#390407: *1 HTTP/1.1 501 Not Implemented +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 15:00:46 GMT +Content-Type: text/plain +Transfer-Encoding: chunked +Connection: keep-alive +DEBUG: FastCGI received request +DEBUG: METHOD=GET, URI=/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 + +2025/08/19 11:00:46 [debug] 390407#390407: *1 write new buf t:1 f:0 0000606FBB9A3218, pos 0000606FBB9A3218, size: 306 file: 0, size: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http write filter: l:0 f:0 s:306 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http cacheable: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http upstream process upstream +2025/08/19 11:00:46 [debug] 390407#390407: *1 pipe read upstream: 1 +2025/08/19 11:00:46 [debug] 390407#390407: *1 pipe preread: 55 +2025/08/19 11:00:46 [debug] 390407#390407: *1 readv: eof:1, avail:0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 readv: 1, last:3848 +2025/08/19 11:00:46 [debug] 390407#390407: *1 pipe recv chain: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 pipe buf free s:0 t:1 f:0 0000606FBB9A2140, pos 0000606FBB9A2201, size: 55 file: 0, size: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 pipe length: -1 +2025/08/19 11:00:46 [debug] 390407#390407: *1 input buf #0 0000606FBB9A2201 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 01 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 06 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 00 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 01 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 00 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 00 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 00 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 00 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record length: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi closed stdout +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 01 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 03 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 00 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 01 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 00 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 08 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 00 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record byte: 00 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi record length: 8 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http fastcgi sent end request +2025/08/19 11:00:46 [debug] 390407#390407: *1 input buf 0000606FBB9A2201 27 +2025/08/19 11:00:46 [debug] 390407#390407: *1 pipe write downstream: 1 +2025/08/19 11:00:46 [debug] 390407#390407: *1 pipe write downstream flush in +2025/08/19 11:00:46 [debug] 390407#390407: *1 http output filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http copy filter: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http postpone filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" 0000606FBB9A3478 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http chunk: 27 +2025/08/19 11:00:46 [debug] 390407#390407: *1 write old buf t:1 f:0 0000606FBB9A3218, pos 0000606FBB9A3218, size: 306 file: 0, size: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 write new buf t:1 f:0 0000606FBB9A35D0, pos 0000606FBB9A35D0, size: 4 file: 0, size: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 write new buf t:1 f:0 0000606FBB9A2140, pos 0000606FBB9A2201, size: 27 file: 0, size: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 write new buf t:0 f:0 0000000000000000, pos 0000606F9BF402E8, size: 2 file: 0, size: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http write filter: l:0 f:0 s:339 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http copy filter: 0 "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:00:46 [debug] 390407#390407: *1 pipe write downstream done +2025/08/19 11:00:46 [debug] 390407#390407: *1 event timer: 10, old: 182439234, new: 182439236 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http upstream exit: 0000000000000000 +2025/08/19 11:00:46 [debug] 390407#390407: *1 finalize http upstream request: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 finalize http fastcgi request +2025/08/19 11:00:46 [debug] 390407#390407: *1 free rr peer 1 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 close http upstream connection: 10 +2025/08/19 11:00:46 [debug] 390407#390407: *1 free: 0000606FBB981F20, unused: 48 +2025/08/19 11:00:46 [debug] 390407#390407: *1 event timer del: 10: 182439234 +2025/08/19 11:00:46 [debug] 390407#390407: *1 reusable connection: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http upstream temp fd: -1 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http output filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http copy filter: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http postpone filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" 00007FFDF20E43C0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http chunk: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 write old buf t:1 f:0 0000606FBB9A3218, pos 0000606FBB9A3218, size: 306 file: 0, size: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 write old buf t:1 f:0 0000606FBB9A35D0, pos 0000606FBB9A35D0, size: 4 file: 0, size: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 write old buf t:1 f:0 0000606FBB9A2140, pos 0000606FBB9A2201, size: 27 file: 0, size: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 write old buf t:0 f:0 0000000000000000, pos 0000606F9BF402E8, size: 2 file: 0, size: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 write new buf t:0 f:0 0000000000000000, pos 0000606F9BF402E5, size: 5 file: 0, size: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http write filter: l:1 f:0 s:344 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http write filter limit 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 writev: 344 of 344 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http write filter 0000000000000000 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http copy filter: 0 "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:00:46 [debug] 390407#390407: *1 http finalize request: 0, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" a:1, c:1 +2025/08/19 11:00:46 [debug] 390407#390407: *1 set http keepalive handler +2025/08/19 11:00:46 [debug] 390407#390407: *1 http close request +2025/08/19 11:00:46 [debug] 390407#390407: *1 http log handler +2025/08/19 11:00:46 [debug] 390407#390407: *1 free: 0000606FBB9A2140 +2025/08/19 11:00:46 [debug] 390407#390407: *1 free: 0000606FBB9B77E0, unused: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 free: 0000606FBB9ADB50, unused: 2 +2025/08/19 11:00:46 [debug] 390407#390407: *1 free: 0000606FBB9A3150, unused: 2395 +2025/08/19 11:00:46 [debug] 390407#390407: *1 free: 0000606FBB99B0A0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 hc free: 0000000000000000 +2025/08/19 11:00:46 [debug] 390407#390407: *1 hc busy: 0000000000000000 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 tcp_nodelay +2025/08/19 11:00:46 [debug] 390407#390407: *1 reusable connection: 1 +2025/08/19 11:00:46 [debug] 390407#390407: *1 event timer add: 6: 65000:182444236 +2025/08/19 11:00:46 [debug] 390407#390407: timer delta: 2 +2025/08/19 11:00:46 [debug] 390407#390407: worker cycle +2025/08/19 11:00:46 [debug] 390407#390407: epoll timer: 65000 +2025/08/19 11:00:46 [debug] 390407#390407: epoll: fd:6 ev:2005 d:0000739927ED41E0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 http keepalive handler +2025/08/19 11:00:46 [debug] 390407#390407: *1 malloc: 0000606FBB99B0A0:1024 +2025/08/19 11:00:46 [debug] 390407#390407: *1 recv: eof:1, avail:-1 +2025/08/19 11:00:46 [debug] 390407#390407: *1 recv: fd:6 0 of 1024 +2025/08/19 11:00:46 [info] 390407#390407: *1 client 127.0.0.1 closed keepalive connection +2025/08/19 11:00:46 [debug] 390407#390407: *1 close http connection: 6 +2025/08/19 11:00:46 [debug] 390407#390407: *1 event timer del: 6: 182444236 +2025/08/19 11:00:46 [debug] 390407#390407: *1 reusable connection: 0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 free: 0000606FBB99B0A0 +2025/08/19 11:00:46 [debug] 390407#390407: *1 free: 0000606FBB998840, unused: 120 +2025/08/19 11:00:46 [debug] 390407#390407: timer delta: 1 +2025/08/19 11:00:46 [debug] 390407#390407: worker cycle +2025/08/19 11:00:46 [debug] 390407#390407: epoll timer: -1 +2025/08/19 11:01:47 [debug] 390407#390407: epoll: fd:5 ev:0001 d:0000739927ED4010 +2025/08/19 11:01:47 [debug] 390407#390407: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 11:01:47 [debug] 390407#390407: posix_memalign: 0000606FBB998840:512 @16 +2025/08/19 11:01:47 [debug] 390407#390407: *3 accept: 127.0.0.1:50226 fd:6 +2025/08/19 11:01:47 [debug] 390407#390407: *3 event timer add: 6: 60000:182500581 +2025/08/19 11:01:47 [debug] 390407#390407: *3 reusable connection: 1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 11:01:47 [debug] 390407#390407: timer delta: 61344 +2025/08/19 11:01:47 [debug] 390407#390407: worker cycle +2025/08/19 11:01:47 [debug] 390407#390407: epoll timer: 60000 +2025/08/19 11:01:47 [debug] 390407#390407: epoll: fd:6 ev:0001 d:0000739927ED41E1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http wait request handler +2025/08/19 11:01:47 [debug] 390407#390407: *3 malloc: 0000606FBB99B0A0:1024 +2025/08/19 11:01:47 [debug] 390407#390407: *3 recv: eof:0, avail:-1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 recv: fd:6 147 of 1024 +2025/08/19 11:01:47 [debug] 390407#390407: *3 reusable connection: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 posix_memalign: 0000606FBB9B77E0:4096 @16 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http process request line +2025/08/19 11:01:47 [debug] 390407#390407: *3 http request line: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http uri: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http args: "" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http exten: "" +2025/08/19 11:01:47 [debug] 390407#390407: *3 posix_memalign: 0000606FBB9ADB50:4096 @16 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http process request header line +2025/08/19 11:01:47 [debug] 390407#390407: *3 http header: "Host: localhost:9001" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http header: "User-Agent: curl/8.15.0" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http header: "Accept: */*" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http header done +2025/08/19 11:01:47 [debug] 390407#390407: *3 event timer del: 6: 182500581 +2025/08/19 11:01:47 [debug] 390407#390407: *3 generic phase: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 rewrite phase: 1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 test location: "/health" +2025/08/19 11:01:47 [debug] 390407#390407: *3 test location: "/upload" +2025/08/19 11:01:47 [debug] 390407#390407: *3 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 11:01:47 [debug] 390407#390407: *3 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 11:01:47 [debug] 390407#390407: *3 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 11:01:47 [debug] 390407#390407: *3 using configuration "^/list/([a-f0-9]{64}).*$" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http cl:-1 max:104857600 +2025/08/19 11:01:47 [debug] 390407#390407: *3 rewrite phase: 3 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "GET" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script regex: "^(GET)$" +2025/08/19 11:01:47 [notice] 390407#390407: *3 "^(GET)$" matches "GET", client: 127.0.0.1, server: localhost, request: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1", host: "localhost:9001" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script if +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script if: false +2025/08/19 11:01:47 [debug] 390407#390407: *3 post rewrite phase: 4 +2025/08/19 11:01:47 [debug] 390407#390407: *3 generic phase: 5 +2025/08/19 11:01:47 [debug] 390407#390407: *3 generic phase: 6 +2025/08/19 11:01:47 [debug] 390407#390407: *3 generic phase: 7 +2025/08/19 11:01:47 [debug] 390407#390407: *3 access phase: 8 +2025/08/19 11:01:47 [debug] 390407#390407: *3 access phase: 9 +2025/08/19 11:01:47 [debug] 390407#390407: *3 access phase: 10 +2025/08/19 11:01:47 [debug] 390407#390407: *3 post access phase: 11 +2025/08/19 11:01:47 [debug] 390407#390407: *3 generic phase: 12 +2025/08/19 11:01:47 [debug] 390407#390407: *3 generic phase: 13 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http init upstream, client timer: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "QUERY_STRING" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "QUERY_STRING: " +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "REQUEST_METHOD" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "GET" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "REQUEST_METHOD: GET" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "CONTENT_TYPE" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "CONTENT_TYPE: " +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "CONTENT_LENGTH" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "CONTENT_LENGTH: " +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "SCRIPT_NAME" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "SCRIPT_NAME: /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "REQUEST_URI" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "REQUEST_URI: /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "DOCUMENT_URI" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "DOCUMENT_URI: /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "DOCUMENT_ROOT" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "./blobs" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "SERVER_PROTOCOL" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "HTTP/1.1" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "REQUEST_SCHEME" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "http" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "GATEWAY_INTERFACE" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "CGI/1.1" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "SERVER_SOFTWARE" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "nginx/" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "1.18.0" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "REMOTE_ADDR" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "127.0.0.1" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "REMOTE_PORT" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "50226" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "REMOTE_PORT: 50226" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "SERVER_ADDR" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "127.0.0.1" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "SERVER_PORT" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "9001" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "SERVER_NAME" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "localhost" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "REDIRECT_STATUS" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "200" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "SCRIPT_FILENAME" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script var: "./blobs" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http script copy: "/ginxsom.fcgi" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 11:01:47 [debug] 390407#390407: *3 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http cleanup add: 0000606FBB9B87C8 +2025/08/19 11:01:47 [debug] 390407#390407: *3 get rr peer, try: 1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 stream socket 10 +2025/08/19 11:01:47 [debug] 390407#390407: *3 epoll add connection: fd:10 ev:80002005 +2025/08/19 11:01:47 [debug] 390407#390407: *3 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #4 +2025/08/19 11:01:47 [debug] 390407#390407: *3 connected +2025/08/19 11:01:47 [debug] 390407#390407: *3 http upstream connect: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 posix_memalign: 0000606FBB981F20:128 @16 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http upstream send request +2025/08/19 11:01:47 [debug] 390407#390407: *3 http upstream send request body +2025/08/19 11:01:47 [debug] 390407#390407: *3 chain writer buf fl:0 s:704 +2025/08/19 11:01:47 [debug] 390407#390407: *3 chain writer in: 0000606FBB9AE8C8 +2025/08/19 11:01:47 [debug] 390407#390407: *3 writev: 704 of 704 +2025/08/19 11:01:47 [debug] 390407#390407: *3 chain writer out: 0000000000000000 +2025/08/19 11:01:47 [debug] 390407#390407: *3 event timer add: 10: 60000:182500581 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http finalize request: -4, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" a:1, c:2 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http request count:2 blk:0 +2025/08/19 11:01:47 [debug] 390407#390407: timer delta: 0 +2025/08/19 11:01:47 [debug] 390407#390407: worker cycle +2025/08/19 11:01:47 [debug] 390407#390407: epoll timer: 60000 +2025/08/19 11:01:47 [debug] 390407#390407: epoll: fd:6 ev:0004 d:0000739927ED41E1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http run request: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http upstream check client, write event:1, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:01:47 [debug] 390407#390407: epoll: fd:10 ev:0004 d:0000739927ED42C9 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http upstream request: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http upstream dummy handler +2025/08/19 11:01:47 [debug] 390407#390407: timer delta: 1 +2025/08/19 11:01:47 [debug] 390407#390407: worker cycle +2025/08/19 11:01:47 [debug] 390407#390407: epoll timer: 59999 +2025/08/19 11:01:47 [debug] 390407#390407: epoll: fd:10 ev:2005 d:0000739927ED42C9 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http upstream request: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http upstream process header +2025/08/19 11:01:47 [debug] 390407#390407: *3 malloc: 0000606FBB9A2140:4096 +2025/08/19 11:01:47 [debug] 390407#390407: *3 recv: eof:1, avail:-1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 recv: fd:10 2520 of 4096 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 01 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 06 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 00 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 01 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 09 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: B2 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 06 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 00 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record length: 2482 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi parser: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi parser: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi header: "DEBUG: METHOD=GET, URI=/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi parser: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 posix_memalign: 0000606FBB9A3150:4096 @16 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi header: "DEBUG: handle_list_request called with pubkey=79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi parser: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi header: "LOG: [2025-08-19 11:01:47] GET /list - Auth: pending - Status: 0" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi parser: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi header: "DEBUG: Query string:" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi parser: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi header: "DEBUG: SQL query: SELECT sha256, size, type, uploaded_at, filename FROM blobs WHERE uploader_pubkey = ? ORDER BY uploaded_at DESC" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi parser: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi header: "Status: 200 OK" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi parser: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi header: "Content-Type: application/json" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi parser: 1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi header done +2025/08/19 11:01:47 [debug] 390407#390407: *3 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 15:01:47 GMT +Content-Type: application/json +Transfer-Encoding: chunked +Connection: keep-alive +DEBUG: FastCGI received request +DEBUG: METHOD=GET, URI=/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 +DEBUG: handle_list_request called with pubkey=79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 +LOG: [2025-08-19 11:01:47] GET /list - Auth: pending - Status: 0 +DEBUG: Query string: +DEBUG: SQL query: SELECT sha256, size, type, uploaded_at, filename FROM blobs WHERE uploader_pubkey = ? ORDER BY uploaded_at DESC +X-Content-Type-Options: nosniff +X-Frame-Options: DENY +X-XSS-Protection: 1; mode=block + +2025/08/19 11:01:47 [debug] 390407#390407: *3 write new buf t:1 f:0 0000606FBB9A3368, pos 0000606FBB9A3368, size: 719 file: 0, size: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http write filter: l:0 f:0 s:719 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http cacheable: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http upstream process upstream +2025/08/19 11:01:47 [debug] 390407#390407: *3 pipe read upstream: 1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 pipe preread: 2002 +2025/08/19 11:01:47 [debug] 390407#390407: *3 readv: eof:1, avail:0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 readv: 1, last:1576 +2025/08/19 11:01:47 [debug] 390407#390407: *3 pipe recv chain: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 pipe buf free s:0 t:1 f:0 0000606FBB9A2140, pos 0000606FBB9A2346, size: 2002 file: 0, size: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 pipe length: -1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 input buf #0 0000606FBB9A2346 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 01 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 06 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 00 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 01 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 00 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 00 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 00 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 00 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record length: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi closed stdout +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 01 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 03 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 00 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 01 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 00 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 08 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 00 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record byte: 00 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi record length: 8 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http fastcgi sent end request +2025/08/19 11:01:47 [debug] 390407#390407: *3 input buf 0000606FBB9A2346 1972 +2025/08/19 11:01:47 [debug] 390407#390407: *3 pipe write downstream: 1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 pipe write downstream flush in +2025/08/19 11:01:47 [debug] 390407#390407: *3 http output filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http copy filter: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http postpone filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" 0000606FBB9A3760 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http chunk: 1972 +2025/08/19 11:01:47 [debug] 390407#390407: *3 write old buf t:1 f:0 0000606FBB9A3368, pos 0000606FBB9A3368, size: 719 file: 0, size: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 write new buf t:1 f:0 0000606FBB9A38B8, pos 0000606FBB9A38B8, size: 5 file: 0, size: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 write new buf t:1 f:0 0000606FBB9A2140, pos 0000606FBB9A2346, size: 1972 file: 0, size: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 write new buf t:0 f:0 0000000000000000, pos 0000606F9BF402E8, size: 2 file: 0, size: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http write filter: l:0 f:0 s:2698 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http write filter limit 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 writev: 2698 of 2698 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http write filter 0000000000000000 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http copy filter: 0 "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:01:47 [debug] 390407#390407: *3 pipe write downstream done +2025/08/19 11:01:47 [debug] 390407#390407: *3 event timer: 10, old: 182500581, new: 182500583 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http upstream exit: 0000000000000000 +2025/08/19 11:01:47 [debug] 390407#390407: *3 finalize http upstream request: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 finalize http fastcgi request +2025/08/19 11:01:47 [debug] 390407#390407: *3 free rr peer 1 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 close http upstream connection: 10 +2025/08/19 11:01:47 [debug] 390407#390407: *3 free: 0000606FBB981F20, unused: 48 +2025/08/19 11:01:47 [debug] 390407#390407: *3 event timer del: 10: 182500581 +2025/08/19 11:01:47 [debug] 390407#390407: *3 reusable connection: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http upstream temp fd: -1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http output filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http copy filter: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http postpone filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" 00007FFDF20E43C0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http chunk: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 write new buf t:0 f:0 0000000000000000, pos 0000606F9BF402E5, size: 5 file: 0, size: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http write filter: l:1 f:0 s:5 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http write filter limit 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 writev: 5 of 5 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http write filter 0000000000000000 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http copy filter: 0 "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:01:47 [debug] 390407#390407: *3 http finalize request: 0, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" a:1, c:1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 set http keepalive handler +2025/08/19 11:01:47 [debug] 390407#390407: *3 http close request +2025/08/19 11:01:47 [debug] 390407#390407: *3 http log handler +2025/08/19 11:01:47 [debug] 390407#390407: *3 free: 0000606FBB9A2140 +2025/08/19 11:01:47 [debug] 390407#390407: *3 free: 0000606FBB9B77E0, unused: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 free: 0000606FBB9ADB50, unused: 2 +2025/08/19 11:01:47 [debug] 390407#390407: *3 free: 0000606FBB9A3150, unused: 1763 +2025/08/19 11:01:47 [debug] 390407#390407: *3 free: 0000606FBB99B0A0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 hc free: 0000000000000000 +2025/08/19 11:01:47 [debug] 390407#390407: *3 hc busy: 0000000000000000 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 tcp_nodelay +2025/08/19 11:01:47 [debug] 390407#390407: *3 reusable connection: 1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 event timer add: 6: 65000:182505583 +2025/08/19 11:01:47 [debug] 390407#390407: timer delta: 1 +2025/08/19 11:01:47 [debug] 390407#390407: worker cycle +2025/08/19 11:01:47 [debug] 390407#390407: epoll timer: 65000 +2025/08/19 11:01:47 [debug] 390407#390407: epoll: fd:6 ev:2005 d:0000739927ED41E1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 http keepalive handler +2025/08/19 11:01:47 [debug] 390407#390407: *3 malloc: 0000606FBB99B0A0:1024 +2025/08/19 11:01:47 [debug] 390407#390407: *3 recv: eof:1, avail:-1 +2025/08/19 11:01:47 [debug] 390407#390407: *3 recv: fd:6 0 of 1024 +2025/08/19 11:01:47 [info] 390407#390407: *3 client 127.0.0.1 closed keepalive connection +2025/08/19 11:01:47 [debug] 390407#390407: *3 close http connection: 6 +2025/08/19 11:01:47 [debug] 390407#390407: *3 event timer del: 6: 182505583 +2025/08/19 11:01:47 [debug] 390407#390407: *3 reusable connection: 0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 free: 0000606FBB99B0A0 +2025/08/19 11:01:47 [debug] 390407#390407: *3 free: 0000606FBB998840, unused: 120 +2025/08/19 11:01:47 [debug] 390407#390407: timer delta: 0 +2025/08/19 11:01:47 [debug] 390407#390407: worker cycle +2025/08/19 11:01:47 [debug] 390407#390407: epoll timer: -1 +2025/08/19 11:02:33 [debug] 390407#390407: epoll: fd:5 ev:0001 d:0000739927ED4010 +2025/08/19 11:02:33 [debug] 390407#390407: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 11:02:33 [debug] 390407#390407: posix_memalign: 0000606FBB998840:512 @16 +2025/08/19 11:02:33 [debug] 390407#390407: *5 accept: 127.0.0.1:38198 fd:6 +2025/08/19 11:02:33 [debug] 390407#390407: *5 event timer add: 6: 60000:182546308 +2025/08/19 11:02:33 [debug] 390407#390407: *5 reusable connection: 1 +2025/08/19 11:02:33 [debug] 390407#390407: *5 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 11:02:33 [debug] 390407#390407: timer delta: 45725 +2025/08/19 11:02:33 [debug] 390407#390407: worker cycle +2025/08/19 11:02:33 [debug] 390407#390407: epoll timer: 60000 +2025/08/19 11:02:33 [debug] 390407#390407: epoll: fd:6 ev:0001 d:0000739927ED41E0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http wait request handler +2025/08/19 11:02:33 [debug] 390407#390407: *5 malloc: 0000606FBB99B0A0:1024 +2025/08/19 11:02:33 [debug] 390407#390407: *5 recv: eof:0, avail:-1 +2025/08/19 11:02:33 [debug] 390407#390407: *5 recv: fd:6 147 of 1024 +2025/08/19 11:02:33 [debug] 390407#390407: *5 reusable connection: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 posix_memalign: 0000606FBB9B77E0:4096 @16 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http process request line +2025/08/19 11:02:33 [debug] 390407#390407: *5 http request line: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http uri: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http args: "" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http exten: "" +2025/08/19 11:02:33 [debug] 390407#390407: *5 posix_memalign: 0000606FBB9ADB50:4096 @16 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http process request header line +2025/08/19 11:02:33 [debug] 390407#390407: *5 http header: "Host: localhost:9001" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http header: "User-Agent: curl/8.15.0" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http header: "Accept: */*" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http header done +2025/08/19 11:02:33 [debug] 390407#390407: *5 event timer del: 6: 182546308 +2025/08/19 11:02:33 [debug] 390407#390407: *5 generic phase: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 rewrite phase: 1 +2025/08/19 11:02:33 [debug] 390407#390407: *5 test location: "/health" +2025/08/19 11:02:33 [debug] 390407#390407: *5 test location: "/upload" +2025/08/19 11:02:33 [debug] 390407#390407: *5 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 11:02:33 [debug] 390407#390407: *5 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 11:02:33 [debug] 390407#390407: *5 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 11:02:33 [debug] 390407#390407: *5 using configuration "^/list/([a-f0-9]{64}).*$" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http cl:-1 max:104857600 +2025/08/19 11:02:33 [debug] 390407#390407: *5 rewrite phase: 3 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "GET" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script regex: "^(GET)$" +2025/08/19 11:02:33 [notice] 390407#390407: *5 "^(GET)$" matches "GET", client: 127.0.0.1, server: localhost, request: "GET /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 HTTP/1.1", host: "localhost:9001" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script if +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script if: false +2025/08/19 11:02:33 [debug] 390407#390407: *5 post rewrite phase: 4 +2025/08/19 11:02:33 [debug] 390407#390407: *5 generic phase: 5 +2025/08/19 11:02:33 [debug] 390407#390407: *5 generic phase: 6 +2025/08/19 11:02:33 [debug] 390407#390407: *5 generic phase: 7 +2025/08/19 11:02:33 [debug] 390407#390407: *5 access phase: 8 +2025/08/19 11:02:33 [debug] 390407#390407: *5 access phase: 9 +2025/08/19 11:02:33 [debug] 390407#390407: *5 access phase: 10 +2025/08/19 11:02:33 [debug] 390407#390407: *5 post access phase: 11 +2025/08/19 11:02:33 [debug] 390407#390407: *5 generic phase: 12 +2025/08/19 11:02:33 [debug] 390407#390407: *5 generic phase: 13 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http init upstream, client timer: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "QUERY_STRING" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "QUERY_STRING: " +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "REQUEST_METHOD" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "GET" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "REQUEST_METHOD: GET" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "CONTENT_TYPE" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "CONTENT_TYPE: " +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "CONTENT_LENGTH" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "CONTENT_LENGTH: " +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "SCRIPT_NAME" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "SCRIPT_NAME: /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "REQUEST_URI" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "REQUEST_URI: /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "DOCUMENT_URI" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "DOCUMENT_URI: /list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "DOCUMENT_ROOT" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "./blobs" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "SERVER_PROTOCOL" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "HTTP/1.1" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "REQUEST_SCHEME" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "http" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "GATEWAY_INTERFACE" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "CGI/1.1" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "SERVER_SOFTWARE" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "nginx/" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "1.18.0" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "REMOTE_ADDR" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "127.0.0.1" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "REMOTE_PORT" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "38198" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "REMOTE_PORT: 38198" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "SERVER_ADDR" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "127.0.0.1" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "SERVER_PORT" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "9001" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "SERVER_NAME" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "localhost" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "REDIRECT_STATUS" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "200" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "SCRIPT_FILENAME" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script var: "./blobs" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http script copy: "/ginxsom.fcgi" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 11:02:33 [debug] 390407#390407: *5 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http cleanup add: 0000606FBB9B87C8 +2025/08/19 11:02:33 [debug] 390407#390407: *5 get rr peer, try: 1 +2025/08/19 11:02:33 [debug] 390407#390407: *5 stream socket 10 +2025/08/19 11:02:33 [debug] 390407#390407: *5 epoll add connection: fd:10 ev:80002005 +2025/08/19 11:02:33 [debug] 390407#390407: *5 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #6 +2025/08/19 11:02:33 [debug] 390407#390407: *5 connected +2025/08/19 11:02:33 [debug] 390407#390407: *5 http upstream connect: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 posix_memalign: 0000606FBB981F20:128 @16 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http upstream send request +2025/08/19 11:02:33 [debug] 390407#390407: *5 http upstream send request body +2025/08/19 11:02:33 [debug] 390407#390407: *5 chain writer buf fl:0 s:704 +2025/08/19 11:02:33 [debug] 390407#390407: *5 chain writer in: 0000606FBB9AE8C8 +2025/08/19 11:02:33 [debug] 390407#390407: *5 writev: 704 of 704 +2025/08/19 11:02:33 [debug] 390407#390407: *5 chain writer out: 0000000000000000 +2025/08/19 11:02:33 [debug] 390407#390407: *5 event timer add: 10: 60000:182546308 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http finalize request: -4, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" a:1, c:2 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http request count:2 blk:0 +2025/08/19 11:02:33 [debug] 390407#390407: timer delta: 0 +2025/08/19 11:02:33 [debug] 390407#390407: worker cycle +2025/08/19 11:02:33 [debug] 390407#390407: epoll timer: 60000 +2025/08/19 11:02:33 [debug] 390407#390407: epoll: fd:6 ev:0004 d:0000739927ED41E0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http run request: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http upstream check client, write event:1, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:02:33 [debug] 390407#390407: epoll: fd:10 ev:0004 d:0000739927ED42C8 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http upstream request: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http upstream dummy handler +2025/08/19 11:02:33 [debug] 390407#390407: timer delta: 2 +2025/08/19 11:02:33 [debug] 390407#390407: worker cycle +2025/08/19 11:02:33 [debug] 390407#390407: epoll timer: 59998 +2025/08/19 11:02:33 [debug] 390407#390407: epoll: fd:10 ev:2005 d:0000739927ED42C8 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http upstream request: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http upstream process header +2025/08/19 11:02:33 [debug] 390407#390407: *5 malloc: 0000606FBB9A2140:4096 +2025/08/19 11:02:33 [debug] 390407#390407: *5 recv: eof:1, avail:-1 +2025/08/19 11:02:33 [debug] 390407#390407: *5 recv: fd:10 2520 of 4096 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 01 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 06 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 00 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 01 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 09 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: B2 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 06 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 00 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record length: 2482 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi parser: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi parser: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi header: "DEBUG: METHOD=GET, URI=/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi parser: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 posix_memalign: 0000606FBB9A3150:4096 @16 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi header: "DEBUG: handle_list_request called with pubkey=79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi parser: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi header: "LOG: [2025-08-19 11:02:33] GET /list - Auth: pending - Status: 0" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi parser: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi header: "DEBUG: Query string:" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi parser: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi header: "DEBUG: SQL query: SELECT sha256, size, type, uploaded_at, filename FROM blobs WHERE uploader_pubkey = ? ORDER BY uploaded_at DESC" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi parser: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi header: "Status: 200 OK" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi parser: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi header: "Content-Type: application/json" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi parser: 1 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi header done +2025/08/19 11:02:33 [debug] 390407#390407: *5 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 15:02:33 GMT +Content-Type: application/json +Transfer-Encoding: chunked +Connection: keep-alive +DEBUG: FastCGI received request +DEBUG: METHOD=GET, URI=/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 +DEBUG: handle_list_request called with pubkey=79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 +LOG: [2025-08-19 11:02:33] GET /list - Auth: pending - Status: 0 +DEBUG: Query string: +DEBUG: SQL query: SELECT sha256, size, type, uploaded_at, filename FROM blobs WHERE uploader_pubkey = ? ORDER BY uploaded_at DESC +X-Content-Type-Options: nosniff +X-Frame-Options: DENY +X-XSS-Protection: 1; mode=block + +2025/08/19 11:02:33 [debug] 390407#390407: *5 write new buf t:1 f:0 0000606FBB9A3368, pos 0000606FBB9A3368, size: 719 file: 0, size: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http write filter: l:0 f:0 s:719 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http cacheable: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http upstream process upstream +2025/08/19 11:02:33 [debug] 390407#390407: *5 pipe read upstream: 1 +2025/08/19 11:02:33 [debug] 390407#390407: *5 pipe preread: 2002 +2025/08/19 11:02:33 [debug] 390407#390407: *5 readv: eof:1, avail:0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 readv: 1, last:1576 +2025/08/19 11:02:33 [debug] 390407#390407: *5 pipe recv chain: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 pipe buf free s:0 t:1 f:0 0000606FBB9A2140, pos 0000606FBB9A2346, size: 2002 file: 0, size: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 pipe length: -1 +2025/08/19 11:02:33 [debug] 390407#390407: *5 input buf #0 0000606FBB9A2346 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 01 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 06 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 00 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 01 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 00 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 00 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 00 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 00 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record length: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi closed stdout +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 01 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 03 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 00 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 01 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 00 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 08 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 00 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record byte: 00 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi record length: 8 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http fastcgi sent end request +2025/08/19 11:02:33 [debug] 390407#390407: *5 input buf 0000606FBB9A2346 1972 +2025/08/19 11:02:33 [debug] 390407#390407: *5 pipe write downstream: 1 +2025/08/19 11:02:33 [debug] 390407#390407: *5 pipe write downstream flush in +2025/08/19 11:02:33 [debug] 390407#390407: *5 http output filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http copy filter: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http postpone filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" 0000606FBB9A3760 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http chunk: 1972 +2025/08/19 11:02:33 [debug] 390407#390407: *5 write old buf t:1 f:0 0000606FBB9A3368, pos 0000606FBB9A3368, size: 719 file: 0, size: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 write new buf t:1 f:0 0000606FBB9A38B8, pos 0000606FBB9A38B8, size: 5 file: 0, size: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 write new buf t:1 f:0 0000606FBB9A2140, pos 0000606FBB9A2346, size: 1972 file: 0, size: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 write new buf t:0 f:0 0000000000000000, pos 0000606F9BF402E8, size: 2 file: 0, size: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http write filter: l:0 f:0 s:2698 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http write filter limit 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 writev: 2698 of 2698 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http write filter 0000000000000000 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http copy filter: 0 "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:02:33 [debug] 390407#390407: *5 pipe write downstream done +2025/08/19 11:02:33 [debug] 390407#390407: *5 event timer: 10, old: 182546308, new: 182546310 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http upstream exit: 0000000000000000 +2025/08/19 11:02:33 [debug] 390407#390407: *5 finalize http upstream request: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 finalize http fastcgi request +2025/08/19 11:02:33 [debug] 390407#390407: *5 free rr peer 1 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 close http upstream connection: 10 +2025/08/19 11:02:33 [debug] 390407#390407: *5 free: 0000606FBB981F20, unused: 48 +2025/08/19 11:02:33 [debug] 390407#390407: *5 event timer del: 10: 182546308 +2025/08/19 11:02:33 [debug] 390407#390407: *5 reusable connection: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http upstream temp fd: -1 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http output filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http copy filter: "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http postpone filter "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" 00007FFDF20E43C0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http chunk: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 write new buf t:0 f:0 0000000000000000, pos 0000606F9BF402E5, size: 5 file: 0, size: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http write filter: l:1 f:0 s:5 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http write filter limit 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 writev: 5 of 5 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http write filter 0000000000000000 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http copy filter: 0 "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" +2025/08/19 11:02:33 [debug] 390407#390407: *5 http finalize request: 0, "/list/79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798?" a:1, c:1 +2025/08/19 11:02:33 [debug] 390407#390407: *5 set http keepalive handler +2025/08/19 11:02:33 [debug] 390407#390407: *5 http close request +2025/08/19 11:02:33 [debug] 390407#390407: *5 http log handler +2025/08/19 11:02:33 [debug] 390407#390407: *5 free: 0000606FBB9A2140 +2025/08/19 11:02:33 [debug] 390407#390407: *5 free: 0000606FBB9B77E0, unused: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 free: 0000606FBB9ADB50, unused: 2 +2025/08/19 11:02:33 [debug] 390407#390407: *5 free: 0000606FBB9A3150, unused: 1763 +2025/08/19 11:02:33 [debug] 390407#390407: *5 free: 0000606FBB99B0A0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 hc free: 0000000000000000 +2025/08/19 11:02:33 [debug] 390407#390407: *5 hc busy: 0000000000000000 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 tcp_nodelay +2025/08/19 11:02:33 [debug] 390407#390407: *5 reusable connection: 1 +2025/08/19 11:02:33 [debug] 390407#390407: *5 event timer add: 6: 65000:182551310 +2025/08/19 11:02:33 [debug] 390407#390407: timer delta: 0 +2025/08/19 11:02:33 [debug] 390407#390407: worker cycle +2025/08/19 11:02:33 [debug] 390407#390407: epoll timer: 65000 +2025/08/19 11:02:33 [debug] 390407#390407: epoll: fd:6 ev:2005 d:0000739927ED41E0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 http keepalive handler +2025/08/19 11:02:33 [debug] 390407#390407: *5 malloc: 0000606FBB99B0A0:1024 +2025/08/19 11:02:33 [debug] 390407#390407: *5 recv: eof:1, avail:-1 +2025/08/19 11:02:33 [debug] 390407#390407: *5 recv: fd:6 0 of 1024 +2025/08/19 11:02:33 [info] 390407#390407: *5 client 127.0.0.1 closed keepalive connection +2025/08/19 11:02:33 [debug] 390407#390407: *5 close http connection: 6 +2025/08/19 11:02:33 [debug] 390407#390407: *5 event timer del: 6: 182551310 +2025/08/19 11:02:33 [debug] 390407#390407: *5 reusable connection: 0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 free: 0000606FBB99B0A0 +2025/08/19 11:02:33 [debug] 390407#390407: *5 free: 0000606FBB998840, unused: 120 +2025/08/19 11:02:33 [debug] 390407#390407: timer delta: 3 +2025/08/19 11:02:33 [debug] 390407#390407: worker cycle +2025/08/19 11:02:33 [debug] 390407#390407: epoll timer: -1 diff --git a/logs/nginx.pid b/logs/nginx.pid index f6d4973..ae00c19 100644 --- a/logs/nginx.pid +++ b/logs/nginx.pid @@ -1 +1 @@ -349770 +390406 diff --git a/src/ginxsom.h b/src/ginxsom.h index 34505bd..fdd7aac 100644 --- a/src/ginxsom.h +++ b/src/ginxsom.h @@ -71,11 +71,11 @@ void handle_upload_requirements_request(void); ///////////////////////////////////////////////////////////////////////////////////////// // HTTP response helpers -void send_error_response(int status_code, const char* message); +void send_error_response(int status_code, const char* error_type, const char* message, const char* details); void send_json_response(int status_code, const char* json_content); // Logging utilities -void log_request(const char* method, const char* uri, int status_code); +void log_request(const char* method, const char* uri, const char* auth_status, int status_code); #ifdef __cplusplus } diff --git a/src/main.c b/src/main.c index 3848330..ee6d3b7 100644 --- a/src/main.c +++ b/src/main.c @@ -23,6 +23,10 @@ // Database path #define DB_PATH "db/ginxsom.db" +// Function declarations +void send_error_response(int status_code, const char* error_type, const char* message, const char* details); +void log_request(const char* method, const char* uri, const char* auth_status, int status_code); + // Blob metadata structure typedef struct { char sha256[MAX_SHA256_LEN]; @@ -511,10 +515,229 @@ int authenticate_request(const char* auth_header, const char* method, const char return NOSTR_SUCCESS; } +// Enhanced error response helper functions +void send_error_response(int status_code, const char* error_type, const char* message, const char* details) { + const char* status_text; + switch (status_code) { + case 400: status_text = "Bad Request"; break; + case 401: status_text = "Unauthorized"; break; + case 409: status_text = "Conflict"; break; + case 413: status_text = "Payload Too Large"; break; + case 500: status_text = "Internal Server Error"; break; + default: status_text = "Error"; break; + } + + printf("Status: %d %s\r\n", status_code, status_text); + printf("Content-Type: application/json\r\n\r\n"); + printf("{\n"); + printf(" \"error\": \"%s\",\n", error_type); + printf(" \"message\": \"%s\"", message); + if (details) { + printf(",\n \"details\": \"%s\"", details); + } + printf("\n}\n"); +} + +void log_request(const char* method, const char* uri, const char* auth_status, int status_code) { + time_t now = time(NULL); + struct tm* tm_info = localtime(&now); + char timestamp[64]; + strftime(timestamp, sizeof(timestamp), "%Y-%m-%d %H:%M:%S", tm_info); + + // For now, log to stdout - later can be configured to log files + printf("LOG: [%s] %s %s - Auth: %s - Status: %d\r\n", + timestamp, method ? method : "NULL", uri ? uri : "NULL", + auth_status ? auth_status : "none", status_code); +} + +// Handle GET /list/ requests +void handle_list_request(const char* pubkey) { + printf("DEBUG: handle_list_request called with pubkey=%s\r\n", pubkey ? pubkey : "NULL"); + + // Log the incoming request + log_request("GET", "/list", "pending", 0); + + // Validate pubkey format (64 hex characters) + if (!pubkey || strlen(pubkey) != 64) { + send_error_response(400, "invalid_pubkey", "Invalid pubkey format", "Pubkey must be 64 hex characters"); + log_request("GET", "/list", "none", 400); + return; + } + + // Validate hex characters + for (int i = 0; i < 64; i++) { + char c = pubkey[i]; + if (!((c >= '0' && c <= '9') || (c >= 'a' && c <= 'f') || (c >= 'A' && c <= 'F'))) { + send_error_response(400, "invalid_pubkey", "Invalid pubkey format", "Pubkey must contain only hex characters"); + log_request("GET", "/list", "none", 400); + return; + } + } + + // Get query parameters for since/until filtering + const char* query_string = getenv("QUERY_STRING"); + long since_timestamp = 0; + long until_timestamp = 0; + + if (query_string) { + printf("DEBUG: Query string: %s\r\n", query_string); + + // Parse since parameter + const char* since_param = strstr(query_string, "since="); + if (since_param) { + since_timestamp = atol(since_param + 6); + printf("DEBUG: Since timestamp: %ld\r\n", since_timestamp); + } + + // Parse until parameter + const char* until_param = strstr(query_string, "until="); + if (until_param) { + until_timestamp = atol(until_param + 6); + printf("DEBUG: Until timestamp: %ld\r\n", until_timestamp); + } + } + + // Check for optional authorization + const char* auth_header = getenv("HTTP_AUTHORIZATION"); + const char* auth_status = "none"; + + if (auth_header) { + printf("DEBUG: Authorization header provided for list request\r\n"); + int auth_result = authenticate_request(auth_header, "list", NULL); + if (auth_result != NOSTR_SUCCESS) { + send_error_response(401, "authentication_failed", "Invalid or expired authentication", + "The provided Nostr event is invalid, expired, or does not authorize this operation"); + log_request("GET", "/list", "failed", 401); + return; + } + auth_status = "authenticated"; + } + + // Query database for blobs uploaded by this pubkey + sqlite3* db; + sqlite3_stmt* stmt; + int rc; + + rc = sqlite3_open_v2(DB_PATH, &db, SQLITE_OPEN_READONLY, NULL); + if (rc) { + printf("DEBUG: Database open failed: %s\r\n", sqlite3_errmsg(db)); + send_error_response(500, "database_error", "Failed to access database", "Internal server error"); + log_request("GET", "/list", auth_status, 500); + return; + } + + // Build SQL query with optional timestamp filtering + char sql[1024]; + if (since_timestamp > 0 && until_timestamp > 0) { + snprintf(sql, sizeof(sql), + "SELECT sha256, size, type, uploaded_at, filename FROM blobs WHERE uploader_pubkey = ? AND uploaded_at >= ? AND uploaded_at <= ? ORDER BY uploaded_at DESC"); + } else if (since_timestamp > 0) { + snprintf(sql, sizeof(sql), + "SELECT sha256, size, type, uploaded_at, filename FROM blobs WHERE uploader_pubkey = ? AND uploaded_at >= ? ORDER BY uploaded_at DESC"); + } else if (until_timestamp > 0) { + snprintf(sql, sizeof(sql), + "SELECT sha256, size, type, uploaded_at, filename FROM blobs WHERE uploader_pubkey = ? AND uploaded_at <= ? ORDER BY uploaded_at DESC"); + } else { + snprintf(sql, sizeof(sql), + "SELECT sha256, size, type, uploaded_at, filename FROM blobs WHERE uploader_pubkey = ? ORDER BY uploaded_at DESC"); + } + + printf("DEBUG: SQL query: %s\r\n", sql); + + rc = sqlite3_prepare_v2(db, sql, -1, &stmt, NULL); + if (rc != SQLITE_OK) { + printf("DEBUG: SQL prepare failed: %s\r\n", sqlite3_errmsg(db)); + sqlite3_close(db); + send_error_response(500, "database_error", "Failed to prepare query", "Internal server error"); + log_request("GET", "/list", auth_status, 500); + return; + } + + // Bind parameters + sqlite3_bind_text(stmt, 1, pubkey, -1, SQLITE_STATIC); + int param_index = 2; + + if (since_timestamp > 0) { + sqlite3_bind_int64(stmt, param_index++, since_timestamp); + } + if (until_timestamp > 0) { + sqlite3_bind_int64(stmt, param_index++, until_timestamp); + } + + // Start JSON response + printf("Status: 200 OK\r\n"); + printf("Content-Type: application/json\r\n\r\n"); + printf("[\n"); + + int first_item = 1; + while ((rc = sqlite3_step(stmt)) == SQLITE_ROW) { + if (!first_item) { + printf(",\n"); + } + first_item = 0; + + const char* sha256 = (const char*)sqlite3_column_text(stmt, 0); + long size = sqlite3_column_int64(stmt, 1); + const char* type = (const char*)sqlite3_column_text(stmt, 2); + long uploaded_at = sqlite3_column_int64(stmt, 3); + const char* filename = (const char*)sqlite3_column_text(stmt, 4); + + // Determine file extension from MIME type + const char* extension = ""; + if (strstr(type, "image/jpeg")) { + extension = ".jpg"; + } else if (strstr(type, "image/webp")) { + extension = ".webp"; + } else if (strstr(type, "image/png")) { + extension = ".png"; + } else if (strstr(type, "image/gif")) { + extension = ".gif"; + } else if (strstr(type, "video/mp4")) { + extension = ".mp4"; + } else if (strstr(type, "video/webm")) { + extension = ".webm"; + } else if (strstr(type, "audio/mpeg")) { + extension = ".mp3"; + } else if (strstr(type, "audio/ogg")) { + extension = ".ogg"; + } else if (strstr(type, "text/plain")) { + extension = ".txt"; + } else { + extension = ".bin"; + } + + // Output blob descriptor JSON + printf(" {\n"); + printf(" \"url\": \"http://localhost:9001/%s%s\",\n", sha256, extension); + printf(" \"sha256\": \"%s\",\n", sha256); + printf(" \"size\": %ld,\n", size); + printf(" \"type\": \"%s\",\n", type); + printf(" \"uploaded\": %ld", uploaded_at); + + // Add optional filename if available + if (filename && strlen(filename) > 0) { + printf(",\n \"filename\": \"%s\"", filename); + } + + printf("\n }"); + } + + printf("\n]\n"); + + sqlite3_finalize(stmt); + sqlite3_close(db); + + printf("DEBUG: List request completed successfully\r\n"); + log_request("GET", "/list", auth_status, 200); +} + // Handle PUT /upload requests void handle_upload_request(void) { printf("DEBUG: handle_upload_request called\r\n"); + // Log the incoming request + log_request("PUT", "/upload", "pending", 0); + // Get HTTP headers const char* content_type = getenv("CONTENT_TYPE"); const char* content_length_str = getenv("CONTENT_LENGTH"); @@ -524,24 +747,21 @@ void handle_upload_request(void) { // Validate required headers if (!content_type) { - printf("Status: 400 Bad Request\r\n"); - printf("Content-Type: text/plain\r\n\r\n"); - printf("Content-Type header required\n"); + send_error_response(400, "missing_header", "Content-Type header required", "The Content-Type header must be specified for file uploads"); + log_request("PUT", "/upload", "none", 400); return; } if (!content_length_str) { - printf("Status: 400 Bad Request\r\n"); - printf("Content-Type: text/plain\r\n\r\n"); - printf("Content-Length header required\n"); + send_error_response(400, "missing_header", "Content-Length header required", "The Content-Length header must be specified for file uploads"); + log_request("PUT", "/upload", "none", 400); return; } long content_length = atol(content_length_str); if (content_length <= 0 || content_length > 100 * 1024 * 1024) { // 100MB limit - printf("Status: 413 Payload Too Large\r\n"); - printf("Content-Type: text/plain\r\n\r\n"); - printf("File size must be between 1 byte and 100MB\n"); + send_error_response(413, "payload_too_large", "File size must be between 1 byte and 100MB", "Maximum allowed file size is 100MB"); + log_request("PUT", "/upload", "none", 413); return; } @@ -549,54 +769,43 @@ void handle_upload_request(void) { const char* auth_header = getenv("HTTP_AUTHORIZATION"); printf("DEBUG: Raw Authorization header: %s\r\n", auth_header ? auth_header : "NULL"); - // Parse the authorization header to extract the Nostr event + // For authenticated uploads, validate the authorization const char* uploader_pubkey = NULL; - if (auth_header) { - printf("DEBUG: Authorization header present, length=%zu\r\n", strlen(auth_header)); + // Authenticate the request first (before processing file) + int auth_result = authenticate_request(auth_header, "PUT", NULL); + if (auth_result != NOSTR_SUCCESS) { + send_error_response(401, "authentication_failed", "Invalid or expired authentication", + "The provided Nostr event is invalid, expired, or does not authorize this operation"); + log_request("PUT", "/upload", "failed", 401); + return; + } - // Parse authorization header to get JSON + // Extract pubkey for metadata storage char event_json[4096]; int parse_result = parse_authorization_header(auth_header, event_json, sizeof(event_json)); - printf("DEBUG: parse_authorization_header returned: %d\r\n", parse_result); - if (parse_result == NOSTR_SUCCESS) { - printf("DEBUG: Successfully parsed authorization header\r\n"); - printf("DEBUG: Event JSON: %.200s...\r\n", event_json); - - // Parse the JSON event to extract pubkey cJSON* event = cJSON_Parse(event_json); if (event) { - printf("DEBUG: Successfully parsed JSON event\r\n"); cJSON* pubkey_json = cJSON_GetObjectItem(event, "pubkey"); if (pubkey_json && cJSON_IsString(pubkey_json)) { const char* temp_pubkey = cJSON_GetStringValue(pubkey_json); - printf("DEBUG: Found pubkey in JSON: %.16s...\r\n", temp_pubkey ? temp_pubkey : "NULL"); - - // Copy the pubkey to a static buffer to preserve it after cJSON_Delete static char pubkey_buffer[256]; if (temp_pubkey) { strncpy(pubkey_buffer, temp_pubkey, sizeof(pubkey_buffer)-1); pubkey_buffer[sizeof(pubkey_buffer)-1] = '\0'; uploader_pubkey = pubkey_buffer; - printf("DEBUG: Copied pubkey to static buffer: %.16s...\r\n", uploader_pubkey); } - } else { - printf("DEBUG: No valid 'pubkey' field found in JSON event\r\n"); } cJSON_Delete(event); - } else { - printf("DEBUG: Failed to parse JSON event\r\n"); } - } else { - printf("DEBUG: Failed to parse authorization header, error: %d\r\n", parse_result); } + log_request("PUT", "/upload", "authenticated", 0); } else { - printf("DEBUG: No authorization header provided\r\n"); + // No authentication provided - allow anonymous uploads + log_request("PUT", "/upload", "anonymous", 0); } - printf("DEBUG: Final uploader_pubkey after auth parsing: %s\r\n", uploader_pubkey ? uploader_pubkey : "NULL"); - // Read file data from stdin unsigned char* file_data = malloc(content_length); if (!file_data) { @@ -633,6 +842,18 @@ void handle_upload_request(void) { nostr_bytes_to_hex(hash, 32, sha256_hex); printf("DEBUG: Calculated SHA-256: %s\r\n", sha256_hex); + // For authenticated uploads, verify hash matches the one in the authorization event + if (auth_header) { + int auth_result = authenticate_request(auth_header, "PUT", sha256_hex); + if (auth_result != NOSTR_SUCCESS) { + free(file_data); + send_error_response(409, "hash_mismatch", "File hash does not match authorization", + "The calculated SHA-256 hash of the uploaded file does not match the hash specified in the authorization event"); + log_request("PUT", "/upload", "hash_conflict", 409); + return; + } + } + // Determine file extension from Content-Type const char* extension = ""; if (strstr(content_type, "image/jpeg")) { @@ -806,19 +1027,45 @@ int main(void) { printf("DEBUG: Extracted SHA256=%s\r\n", sha256 ? sha256 : "NULL"); if (sha256) { handle_head_request(sha256); + log_request("HEAD", request_uri, "none", 200); // Assuming success - could be enhanced to track actual status } else { printf("Status: 400 Bad Request\r\n"); printf("Content-Type: text/plain\r\n\r\n"); printf("Invalid SHA-256 hash in URI\n"); + log_request("HEAD", request_uri, "none", 400); } } else if (strcmp(request_method, "PUT") == 0 && strcmp(request_uri, "/upload") == 0) { // Handle PUT /upload requests with authentication handle_upload_request(); + } else if (strcmp(request_method, "GET") == 0 && strncmp(request_uri, "/list/", 6) == 0) { + // Handle GET /list/ requests + const char* pubkey = request_uri + 6; // Skip "/list/" + + // Extract pubkey from URI (remove query string if present) + static char pubkey_buffer[65]; + const char* query_start = strchr(pubkey, '?'); + size_t pubkey_len; + + if (query_start) { + pubkey_len = query_start - pubkey; + } else { + pubkey_len = strlen(pubkey); + } + + if (pubkey_len == 64) { // Valid pubkey length + strncpy(pubkey_buffer, pubkey, 64); + pubkey_buffer[64] = '\0'; + handle_list_request(pubkey_buffer); + } else { + send_error_response(400, "invalid_pubkey", "Invalid pubkey format", "Pubkey must be 64 hex characters"); + log_request("GET", request_uri, "none", 400); + } } else { // Other methods not implemented yet printf("Status: 501 Not Implemented\r\n"); printf("Content-Type: text/plain\r\n\r\n"); printf("Method %s not implemented\n", request_method); + log_request(request_method, request_uri, "none", 501); } }