diff --git a/IMPLEMENTATION.md b/IMPLEMENTATION.md index 23e3162..7d789fb 100644 --- a/IMPLEMENTATION.md +++ b/IMPLEMENTATION.md @@ -102,31 +102,31 @@ This document outlines the implementation plan for ginxsom, a FastCGI-based Blos - [x] Implement request logging ### 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 +- [x] Implement `GET /list/` endpoint + - [x] Extract pubkey from URL path + - [x] Query database for blobs uploaded by specified pubkey + - [x] Support `since` and `until` query parameters for date filtering + - [x] Return JSON array of blob descriptors + - [x] Handle empty results gracefully + - [x] Implement optional authorization with kind 24242 event validation + - [x] Validate `t` tag is set to "list" + - [x] Check authorization expiration + - [x] 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 +- [x] Implement `DELETE /` endpoint + - [x] Extract SHA-256 hash from URL path + - [x] Require authorization with kind 24242 event validation + - [x] Validate `t` tag is set to "delete" + - [x] Verify at least one `x` tag matches the requested hash + - [x] Check authorization expiration + - [x] Verify event signature and structure + - [x] Check blob exists in database + - [x] Verify uploader_pubkey matches authorized pubkey (ownership check) + - [x] Remove blob file from filesystem + - [x] Remove blob metadata from database + - [x] Handle file deletion errors gracefully + - [x] Return appropriate success/error responses ### 2.7 Testing & Validation - [x] Test uploads without authentication @@ -148,30 +148,179 @@ This document outlines the implementation plan for ginxsom, a FastCGI-based Blos - [ ] Authentication requirements - [ ] Rate limiting settings - [ ] Storage quota limits + - [ ] Hash-based banning/filtering -### 3.2 HEAD /upload Endpoint -- [ ] Implement `HEAD /upload` endpoint - - [ ] Return upload requirements in headers - - [ ] Handle optional Authorization header - - [ ] Return proper status codes for policy checks - - [ ] Add custom headers for requirements +### 3.2 HEAD /upload Endpoint Implementation +- [ ] Implement `HEAD /upload` endpoint for pre-flight upload validation + - [ ] Parse client headers: + - [ ] `X-SHA-256`: blob's SHA-256 hash + - [ ] `X-Content-Length`: blob size in bytes + - [ ] `X-Content-Type`: blob's MIME type + - [ ] Handle optional Authorization header (same as PUT /upload) + - [ ] Perform validation checks without file transfer: + - [ ] Validate SHA-256 format + - [ ] Check file size against limits + - [ ] Validate MIME type restrictions + - [ ] Check authentication if required + - [ ] Check if hash already exists (duplicate detection) + - [ ] Check if hash is banned + - [ ] Return appropriate HTTP status codes: + - [ ] `200 OK` - upload can proceed + - [ ] `400 Bad Request` - invalid headers + - [ ] `401 Unauthorized` - auth required + - [ ] `403 Forbidden` - not permitted (banned hash, etc.) + - [ ] `411 Length Required` - missing content length + - [ ] `413 Content Too Large` - file too large + - [ ] `415 Unsupported Media Type` - invalid MIME type + - [ ] Add `X-Reason` header with human-readable error messages -### 3.3 Upload Validation -- [ ] Implement pre-upload validation - - [ ] Check file size before processing - - [ ] Validate MIME types if restricted - - [ ] Check authentication requirements - - [ ] Verify user permissions/quotas +### 3.3 Upload Pre-validation Logic +- [ ] Create validation functions that can be shared between HEAD and PUT endpoints + - [ ] `validate_upload_headers()` - check required headers present and valid + - [ ] `check_file_size_limits()` - enforce maximum size restrictions + - [ ] `check_mime_type_allowed()` - validate against allowed types list + - [ ] `check_hash_restrictions()` - check banned hashes, duplicates + - [ ] `check_upload_permissions()` - user-specific upload rights -### 3.4 Testing & Validation -- [ ] Test upload requirements endpoint -- [ ] Test policy enforcement -- [ ] Test with various client scenarios -- [ ] Verify error responses match spec +### 3.4 DOS Protection Benefits +- [ ] Implement early rejection before file transfer: + - [ ] Authentication happens before any file data sent + - [ ] Size validation prevents large file uploads that would be rejected + - [ ] MIME type checking prevents unwanted file types + - [ ] Hash checking prevents duplicate uploads +- [ ] Update PUT /upload to use same validation functions for consistency + +### 3.5 Client Integration Support +- [ ] Update nginx configuration to properly handle HEAD requests to /upload +- [ ] Ensure FastCGI handles HEAD method for /upload endpoint +- [ ] Add CORS headers for preflight requests + +### 3.6 Testing & Validation +- [ ] Test HEAD /upload with valid headers +- [ ] Test various error scenarios (missing headers, invalid formats) +- [ ] Test authorization requirements +- [ ] Test policy enforcement (size limits, MIME types, banned hashes) +- [ ] Verify error responses match BUD-06 specification +- [ ] Test client workflow: HEAD check → PUT upload +- [ ] Verify DOS protection effectiveness --- -## Phase 4: Optional Features +## Phase 4: Advanced Authentication & Administration System + +### 4.1 Flexible Authentication Rules System + +#### 4.1.1 Database Schema Extension +- [ ] Create authentication rules tables + - [ ] `auth_rules` table: rule_type, rule_target, operation, rule_value, enabled, expires_at + - [ ] `auth_cache` table: performance caching for rule evaluation results + - [ ] Add indexes on rule_type, rule_target, operation for performance + +#### 4.1.2 Authentication Rule Types Implementation +- [ ] Basic rule types: + - [ ] `pubkey_whitelist`: Only specific pubkeys allowed + - [ ] `pubkey_blacklist`: Specific pubkeys banned + - [ ] `hash_blacklist`: Specific file hashes cannot be uploaded + - [ ] `mime_type_whitelist`: Only specific content types allowed + - [ ] `mime_type_blacklist`: Specific content types banned +- [ ] Advanced rule types: + - [ ] `rate_limit`: Limit operations per pubkey/IP per time period + - [ ] `size_limit`: Per-pubkey or global size limits + - [ ] `conditional`: Complex JSON-based rules (time-based, size-based, etc.) + +#### 4.1.3 Rule Evaluation Engine +- [ ] Core authentication functions: + - [ ] `evaluate_auth_rules()`: Main rule evaluation with caching + - [ ] `check_rule_cache()`: Performance optimization layer + - [ ] `process_rule_priority()`: Handle rule precedence and conflicts + - [ ] `update_auth_cache()`: Store evaluation results for reuse +- [ ] Integration points: + - [ ] Extend `handle_upload_request()` with rule evaluation + - [ ] Extend `handle_delete_request()` with rule evaluation + - [ ] Extend `handle_list_request()` with rule evaluation (optional) + +#### 4.1.4 Rule Management Interface +- [ ] SQL-based rule management: + - [ ] `add_auth_rule()`: Add new authentication rules + - [ ] `remove_auth_rule()`: Remove rules by ID + - [ ] `list_auth_rules()`: Query existing rules with filters + - [ ] `update_auth_rule()`: Modify existing rule parameters + +### 4.2 Nostr-Native Administrative Interface + +#### 4.2.1 Server Identity Management +- [ ] Server keypair generation and storage: + - [ ] Generate server public/private keypair on first run + - [ ] Store server pubkey in `server_config` table + - [ ] Secure private key storage (encrypted file or environment) + - [ ] Key rotation capabilities for security + +#### 4.2.2 Administrator Management System +- [ ] Administrator database schema: + - [ ] `administrators` table: pubkey, permissions, added_by, expires_at + - [ ] Permission levels: rules, config, users, stats, * (full access) + - [ ] Initial admin setup during server deployment +- [ ] Administrative functions: + - [ ] `check_admin_permissions()`: Verify admin authorization + - [ ] `add_administrator()`: Grant admin privileges + - [ ] `remove_administrator()`: Revoke admin privileges + - [ ] `list_administrators()`: Query admin list with permissions + +#### 4.2.3 Administrative Event Types +- [ ] Event kind definitions: + - [ ] Kind 30242: Administrative commands (rule_add, rule_remove, config_set, etc.) + - [ ] Kind 30243: Administrative queries (stats_get, rule_list, audit_log, etc.) + - [ ] Kind 30244: Administrative responses (command results, query data) +- [ ] Command implementations: + - [ ] Rule management: `rule_add`, `rule_remove`, `rule_update`, `rule_list` + - [ ] System management: `config_set`, `config_get`, `admin_add`, `admin_remove` + - [ ] Query operations: `stats_get`, `blob_list`, `audit_log`, `storage_cleanup` + +#### 4.2.4 Administrative Event Processing +- [ ] HTTP administrative endpoint: + - [ ] `POST /admin` with nostr event authorization + - [ ] JSON command interface with parameter validation + - [ ] Synchronous response with operation results +- [ ] Direct nostr relay integration (future enhancement): + - [ ] Subscribe to administrative events on configured relays + - [ ] Real-time event processing and response + - [ ] Publish response events back to relays + +#### 4.2.5 Administrative Audit Trail +- [ ] Administrative logging system: + - [ ] `admin_log` table: track all administrative actions + - [ ] Event ID references for nostr event traceability + - [ ] Success/failure tracking with detailed error messages + - [ ] Audit query capabilities for compliance + +#### 4.2.6 Security & Permission Framework +- [ ] Multi-level permission system: + - [ ] Granular permissions: rules, config, users, stats + - [ ] Permission inheritance and delegation + - [ ] Time-limited administrative access (expires_at) +- [ ] Authentication security: + - [ ] Strong nostr signature validation + - [ ] Administrator authorization chain verification + - [ ] Command-specific permission checks + - [ ] Rate limiting for administrative operations + +### 4.3 Integration & Testing +- [ ] Authentication system integration: + - [ ] Integrate rule evaluation into existing authentication flow + - [ ] Maintain backward compatibility with nostr-only authentication + - [ ] Performance testing with rule caching +- [ ] Administrative system testing: + - [ ] Test all administrative commands and queries + - [ ] Verify permission enforcement and security + - [ ] Test audit logging and compliance features + - [ ] Load testing for administrative operations + +--- + +## Phase 5: Optional Features +--- + +## Phase 5: Optional Features ### 4.1 User Server Lists (BUD-03) - Optional - [ ] Implement server list advertisement @@ -230,15 +379,21 @@ 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 /) +- [x] List blobs endpoint implemented (GET /list/) +- [x] Delete blob endpoint implemented (DELETE /) ### Milestone 3: Policy Compliance (Phase 3 Pending) - [ ] Upload requirements implemented - [ ] Server policies configurable - [ ] Spec compliance verified -### Milestone 4: Production Ready (Phase 4 Complete) +### Milestone 4: Advanced Authentication (Phase 4 Complete) +- [ ] Flexible authentication rules system operational +- [ ] Nostr-native administrative interface implemented +- [ ] Rule evaluation engine with caching performance +- [ ] Administrative audit trail and compliance features + +### Milestone 5: Production Ready (Phase 5 Complete) - Optional features implemented as needed - Performance optimized - Security hardened @@ -274,6 +429,51 @@ This document outlines the implementation plan for ginxsom, a FastCGI-based Blos --- +## Future Improvements + +### Upload Security & Performance Enhancements + +**Current Issue**: The existing upload flow has a DOS vulnerability where large files are loaded entirely into memory before authentication occurs. This allows unauthenticated attackers to exhaust server memory. + +**Current Flow**: +``` +Client → nginx → FastCGI ginxsom + ├─ reads entire file into memory (malloc + fread) + ├─ validates auth (after file in memory) + └─ saves to blobs/ or errors +``` + +**Proposed Solution - nginx Upload Module**: +``` +Client → nginx upload module → temp file → FastCGI ginxsom + ├─ saves to /tmp/uploads/ ├─ validates auth quickly + └─ passes metadata only ├─ moves file to blobs/ + └─ or deletes temp file +``` + +**Benefits**: +- Eliminates DOS vulnerability - nginx handles large files efficiently +- Fast auth validation - no waiting for full upload +- Leverages nginx strengths - what it's designed for +- Better scalability - memory usage independent of file size + +**Implementation Requirements**: +- nginx upload module configuration +- Temp file cleanup handling +- Modified FastCGI code to process file paths instead of stdin +- Proper error handling for temp file operations + +**Alternative Enhancement - HTTP 100 Continue**: +Could propose new Blossom BUD for two-phase upload: +1. Client sends headers with `Expect: 100-continue` + auth event +2. Server validates early (signature, expiration, pubkey) +3. Server responds `100 Continue` or `401 Unauthorized` +4. Client only sends file data if authorized + +**Priority**: Implement after core BUD compliance is complete. + +--- + ## Security Considerations - [ ] Input validation on all endpoints @@ -283,6 +483,7 @@ This document outlines the implementation plan for ginxsom, a FastCGI-based Blos - [ ] Memory safety in C implementation - [ ] Proper error message sanitization - [ ] Log security (no sensitive data) +- [ ] **Upload DOS vulnerability** - Current implementation vulnerable to memory exhaustion attacks --- diff --git a/README.md b/README.md index 11e9675..a4f0d26 100644 --- a/README.md +++ b/README.md @@ -41,19 +41,52 @@ ginxsom is a Blossom protocol server implemented as a FastCGI application that i ginxsom implements the following Blossom Upgrade Documents (BUDs): - **BUD-01**: Server requirements and blob retrieval ✅ -- **BUD-02**: Blob upload and management ✅ -- **BUD-06**: Upload requirements ✅ +- **BUD-02**: Blob upload and management ✅ *(newly completed - includes DELETE endpoint)* +- **BUD-06**: Upload requirements ⏳ *(planned - not yet implemented)* ### Supported Endpoints -| Endpoint | Method | Description | Handler | -|----------|---------|-------------|---------| -| `/` | GET | Retrieve blob | nginx → disk | -| `/` | HEAD | Check blob exists | nginx → disk | -| `/upload` | PUT | Upload new blob | nginx → FastCGI ginxsom | -| `/upload` | HEAD | Check upload requirements | nginx → FastCGI ginxsom | -| `/list/` | GET | List user's blobs | nginx → FastCGI ginxsom | -| `/` | DELETE | Delete blob | nginx → FastCGI ginxsom | +| Endpoint | Method | Description | Handler | Status | +|----------|---------|-------------|---------|---------| +| `/` | GET | Retrieve blob | nginx → disk | ✅ **Implemented** | +| `/` | HEAD | Check blob exists | nginx → FastCGI ginxsom | ✅ **Implemented** | +| `/upload` | PUT | Upload new blob | nginx → FastCGI ginxsom | ✅ **Implemented** | +| `/upload` | HEAD | Check upload requirements | nginx → FastCGI ginxsom | ⏳ **BUD-06 Planned** | +| `/list/` | GET | List user's blobs | nginx → FastCGI ginxsom | ✅ **Implemented** | +| `/` | DELETE | Delete blob | nginx → FastCGI ginxsom | ✅ **Recently Added** | + +## Recent Updates + +### BUD-02 Completion: DELETE Endpoint Implementation + +ginxsom now fully implements **BUD-02: Blob upload and management** with the recent addition of the DELETE endpoint. This completes the core blob management functionality: + +**New DELETE Endpoint Features:** +- **Authenticated Deletion**: Requires valid nostr kind 24242 event with `t` tag set to `"delete"` +- **Hash Validation**: Must include `x` tag matching the blob's SHA-256 hash +- **Ownership Verification**: Only the original uploader can delete their blobs +- **Complete Cleanup**: Removes both file from disk and metadata from database +- **Error Handling**: Proper HTTP status codes for various failure scenarios + +**Technical Implementation:** +```bash +# Delete a blob (requires nostr authorization) +curl -X DELETE http://localhost:9001/b1674191a88ec5cdd733e4240a81803105dc412d6c6708d53ab94fc248f4f553 \ + -H "Authorization: Nostr eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9..." + +# Successful deletion returns 200 OK +# Failed authorization returns 401 Unauthorized +# Blob not found returns 404 Not Found +# Wrong ownership returns 403 Forbidden +``` + +**Security Features:** +- Event signature validation using nostr cryptographic verification +- Expiration checking to prevent replay attacks +- Ownership validation via uploader_pubkey matching +- Atomic operations (both filesystem and database cleanup succeed or fail together) + +This implementation makes ginxsom a fully functional Blossom server for core blob operations (upload, retrieve, list, delete) with the remaining BUD-06 (upload requirements) planned for the next development phase. ## Installation @@ -111,6 +144,8 @@ rate_limit_uploads = 10 # per minute ### nginx Configuration +#### Production Configuration + Add to your nginx configuration: ```nginx @@ -155,6 +190,72 @@ server { } ``` +#### Local Development Configuration + +For local development, use the provided `config/local-nginx.conf`: + +```nginx +# Local development server (runs on port 9001) +server { + listen 9001; + server_name localhost; + root blobs; # Relative to project directory + + # FastCGI backend + upstream fastcgi_backend { + server unix:/tmp/ginxsom-fcgi.sock; + } + + # DELETE endpoint - requires authentication + location ~ "^/([a-f0-9]{64}).*$" { + if ($request_method != DELETE) { + return 404; + } + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root/ginxsom.fcgi; + fastcgi_pass fastcgi_backend; + } + + # Static blob serving with extension fallback + location ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" { + limit_except HEAD GET { deny all; } + + # HEAD requests go to FastCGI + if ($request_method = HEAD) { + rewrite ^/(.*)$ /fcgi-head/$1 last; + } + + # GET requests served directly with extension fallback + try_files /$1.jpg /$1.jpeg /$1.png /$1.webp /$1.gif /$1.pdf /$1.mp4 /$1.mp3 /$1.txt /$1.md =404; + } + + # Upload endpoint + location /upload { + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root/ginxsom.fcgi; + fastcgi_pass fastcgi_backend; + if ($request_method !~ ^(PUT)$ ) { return 405; } + } + + # List blobs endpoint + location ~ "^/list/([a-f0-9]{64}).*$" { + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root/ginxsom.fcgi; + fastcgi_pass fastcgi_backend; + if ($request_method !~ ^(GET)$ ) { return 405; } + } +} +``` + +Start local development with: +```bash +# Start FastCGI daemon +./start-fcgi.sh + +# Start nginx (uses local config) +./restart-nginx.sh +``` + ## Usage ### Starting the Server diff --git a/config/nginx/ginxsom.conf b/Trash/nginx/ginxsom.conf similarity index 100% rename from config/nginx/ginxsom.conf rename to Trash/nginx/ginxsom.conf diff --git a/restart-nginx.sh b/Trash/nginx/restart-nginx.sh similarity index 100% rename from restart-nginx.sh rename to Trash/nginx/restart-nginx.sh diff --git a/start-fcgi.sh b/Trash/nginx/start-fcgi.sh similarity index 100% rename from start-fcgi.sh rename to Trash/nginx/start-fcgi.sh diff --git a/build/ginxsom-fcgi b/build/ginxsom-fcgi index 14e9880..8e91478 100755 Binary files a/build/ginxsom-fcgi and b/build/ginxsom-fcgi differ diff --git a/build/main.o b/build/main.o index 8230a9a..4dc0dfb 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 b8f7bc4..c0fd855 100644 --- a/config/local-nginx.conf +++ b/config/local-nginx.conf @@ -46,6 +46,20 @@ http { add_header X-Frame-Options DENY; add_header X-XSS-Protection "1; mode=block"; + # Delete blob endpoint - DELETE / (must come first) + location ~ "^/([a-f0-9]{64}).*$" { + # Only handle DELETE method for this pattern + if ($request_method != DELETE) { + # Let other patterns handle non-DELETE requests for this path + return 404; + } + + # Pass to FastCGI application for processing + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root/ginxsom.fcgi; + fastcgi_pass fastcgi_backend; + } + # Old working regex pattern - testing rollback location ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" { limit_except HEAD GET { diff --git a/config/systemd/ginxsom.service b/config/systemd/ginxsom.service deleted file mode 100644 index 8b5b991..0000000 --- a/config/systemd/ginxsom.service +++ /dev/null @@ -1,47 +0,0 @@ -[Unit] -Description=Ginxsom Blossom Server FastCGI Application -After=network.target -Wants=network-online.target -After=network-online.target - -[Service] -Type=notify -User=ginxsom -Group=ginxsom -WorkingDirectory=/var/lib/ginxsom -ExecStart=/usr/local/bin/ginxsom --fastcgi --socket /run/ginxsom/ginxsom.sock -ExecReload=/bin/kill -HUP $MAINPID -KillMode=process -Restart=on-failure -RestartSec=5s - -# Security settings -NoNewPrivileges=true -ProtectSystem=strict -ProtectHome=true -ReadWritePaths=/var/lib/ginxsom /run/ginxsom /var/log/ginxsom -PrivateTmp=true -PrivateDevices=true -ProtectHostname=true -ProtectClock=true -ProtectKernelTunables=true -ProtectKernelModules=true -ProtectKernelLogs=true -ProtectControlGroups=true -RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6 -RestrictRealtime=true -RestrictSUIDSGID=true -LockPersonality=true -MemoryDenyWriteExecute=true - -# Resource limits -LimitNOFILE=65536 -LimitNPROC=4096 - -# Environment -Environment=GINXSOM_CONFIG=/etc/ginxsom/config.toml -Environment=GINXSOM_DATA_DIR=/var/lib/ginxsom -Environment=GINXSOM_LOG_LEVEL=info - -[Install] -WantedBy=multi-user.target diff --git a/db/ginxsom.db b/db/ginxsom.db index 4683bf3..97c7a5e 100644 Binary files a/db/ginxsom.db and b/db/ginxsom.db differ diff --git a/db/ginxsom.db.backup.1755624647 b/db/ginxsom.db.backup.1755624647 new file mode 100644 index 0000000..4683bf3 Binary files /dev/null and b/db/ginxsom.db.backup.1755624647 differ diff --git a/db/schema.sql b/db/schema.sql index 51acb33..216264b 100644 --- a/db/schema.sql +++ b/db/schema.sql @@ -65,3 +65,173 @@ SELECT FROM blobs WHERE uploaded_at > (strftime('%s', 'now') - 86400) ORDER BY uploaded_at DESC; + +-- ============================================================================ +-- AUTHENTICATION RULES SYSTEM +-- ============================================================================ + +-- Authentication rules table for flexible access control +CREATE TABLE IF NOT EXISTS auth_rules ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + rule_type TEXT NOT NULL, -- 'whitelist', 'blacklist', 'hash_blacklist', 'rate_limit', etc. + rule_target TEXT NOT NULL, -- pubkey, hash, IP, MIME type, etc. + rule_value TEXT, -- JSON for complex rules (optional) + operation TEXT NOT NULL DEFAULT '*', -- 'upload', 'delete', 'list', '*' (all operations) + enabled INTEGER NOT NULL DEFAULT 1, -- 0 = disabled, 1 = enabled + priority INTEGER NOT NULL DEFAULT 100, -- Lower numbers = higher priority (for conflict resolution) + expires_at INTEGER, -- Optional expiration timestamp + created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')), + updated_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')), + created_by TEXT, -- Admin pubkey who created this rule (optional) + description TEXT, -- Human-readable rule description + CHECK (enabled IN (0, 1)), -- Boolean constraint + CHECK (priority >= 0), -- Priority must be non-negative + CHECK (expires_at IS NULL OR expires_at > created_at) -- Expiration must be in future +); + +-- Rule evaluation cache for performance optimization +CREATE TABLE IF NOT EXISTS auth_cache ( + cache_key TEXT PRIMARY KEY, -- SHA-256 hash of request parameters + allowed INTEGER NOT NULL, -- 0 = denied, 1 = allowed + rule_id INTEGER, -- Which rule made the decision (optional) + rule_reason TEXT, -- Human-readable reason for decision + expires_at INTEGER NOT NULL, -- Cache entry expiration + created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')), + CHECK (allowed IN (0, 1)), -- Boolean constraint + FOREIGN KEY (rule_id) REFERENCES auth_rules(id) ON DELETE SET NULL +); + +-- Indexes for authentication system performance +CREATE INDEX IF NOT EXISTS idx_auth_rules_type_target ON auth_rules(rule_type, rule_target); +CREATE INDEX IF NOT EXISTS idx_auth_rules_operation ON auth_rules(operation); +CREATE INDEX IF NOT EXISTS idx_auth_rules_enabled ON auth_rules(enabled); +CREATE INDEX IF NOT EXISTS idx_auth_rules_priority ON auth_rules(priority); +CREATE INDEX IF NOT EXISTS idx_auth_rules_expires ON auth_rules(expires_at); +CREATE INDEX IF NOT EXISTS idx_auth_cache_expires ON auth_cache(expires_at); + +-- ============================================================================ +-- ADMINISTRATIVE SYSTEM +-- ============================================================================ + +-- Administrators table for nostr-based server administration +CREATE TABLE IF NOT EXISTS administrators ( + pubkey TEXT PRIMARY KEY NOT NULL, -- Nostr public key (64 hex chars) + permissions TEXT NOT NULL DEFAULT '[]', -- JSON array of permissions + added_by TEXT, -- Pubkey of admin who added this admin + added_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')), + expires_at INTEGER, -- Optional expiration timestamp + enabled INTEGER NOT NULL DEFAULT 1, -- 0 = disabled, 1 = enabled + description TEXT, -- Human-readable description + last_seen INTEGER, -- Last administrative action timestamp + CHECK (length(pubkey) = 64), -- Ensure valid pubkey length + CHECK (enabled IN (0, 1)), -- Boolean constraint + CHECK (expires_at IS NULL OR expires_at > added_at), -- Expiration must be in future + FOREIGN KEY (added_by) REFERENCES administrators(pubkey) ON DELETE SET NULL +); + +-- Administrative actions audit log +CREATE TABLE IF NOT EXISTS admin_log ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + admin_pubkey TEXT NOT NULL, -- Which admin performed the action + command TEXT NOT NULL, -- Administrative command executed + parameters TEXT, -- JSON command parameters + result TEXT, -- Success/failure result and details + timestamp INTEGER NOT NULL DEFAULT (strftime('%s', 'now')), + event_id TEXT, -- Reference to nostr event (optional) + target_table TEXT, -- Which table was affected (optional) + target_id TEXT, -- Which record was affected (optional) + ip_address TEXT, -- Client IP address (optional) + user_agent TEXT, -- Client user agent (optional) + FOREIGN KEY (admin_pubkey) REFERENCES administrators(pubkey) ON DELETE CASCADE +); + +-- Server identity and administrative configuration +INSERT OR IGNORE INTO server_config (key, value, description) VALUES + ('server_pubkey', '', 'Server nostr public key (generated on first run)'), + ('server_privkey_file', 'keys/server.key', 'Path to encrypted server private key file'), + ('admin_relays', '[]', 'JSON array of relay URLs for administrative events'), + ('admin_event_processing', 'true', 'Enable nostr-based administrative event processing'), + ('require_admin_auth', 'true', 'Require admin authorization for sensitive operations'), + ('auth_rules_enabled', 'true', 'Enable flexible authentication rules system'), + ('auth_cache_ttl', '300', 'Authentication cache TTL in seconds (5 minutes)'), + ('admin_session_timeout', '3600', 'Administrative session timeout in seconds (1 hour)'), + ('max_admin_log_entries', '10000', 'Maximum administrative log entries to retain'); + +-- Indexes for administrative system performance +CREATE INDEX IF NOT EXISTS idx_administrators_enabled ON administrators(enabled); +CREATE INDEX IF NOT EXISTS idx_administrators_expires ON administrators(expires_at); +CREATE INDEX IF NOT EXISTS idx_admin_log_timestamp ON admin_log(timestamp); +CREATE INDEX IF NOT EXISTS idx_admin_log_admin_pubkey ON admin_log(admin_pubkey); +CREATE INDEX IF NOT EXISTS idx_admin_log_command ON admin_log(command); + +-- ============================================================================ +-- VIEWS FOR ADMINISTRATIVE QUERIES +-- ============================================================================ + +-- View for active authentication rules +CREATE VIEW IF NOT EXISTS active_auth_rules AS +SELECT + id, + rule_type, + rule_target, + rule_value, + operation, + priority, + expires_at, + created_at, + created_by, + description, + CASE + WHEN expires_at IS NULL THEN 'never' + WHEN expires_at > strftime('%s', 'now') THEN 'active' + ELSE 'expired' + END as status +FROM auth_rules +WHERE enabled = 1 +ORDER BY priority ASC, created_at ASC; + +-- View for active administrators +CREATE VIEW IF NOT EXISTS active_administrators AS +SELECT + pubkey, + permissions, + added_by, + added_at, + expires_at, + description, + last_seen, + CASE + WHEN expires_at IS NULL THEN 'never' + WHEN expires_at > strftime('%s', 'now') THEN 'active' + ELSE 'expired' + END as status, + datetime(added_at, 'unixepoch') as added_datetime, + datetime(last_seen, 'unixepoch') as last_seen_datetime +FROM administrators +WHERE enabled = 1; + +-- View for recent administrative actions (last 7 days) +CREATE VIEW IF NOT EXISTS recent_admin_actions AS +SELECT + id, + admin_pubkey, + command, + parameters, + result, + timestamp, + event_id, + target_table, + target_id, + datetime(timestamp, 'unixepoch') as action_datetime +FROM admin_log +WHERE timestamp > (strftime('%s', 'now') - 604800) -- 7 days +ORDER BY timestamp DESC; + +-- View for authentication statistics +CREATE VIEW IF NOT EXISTS auth_stats AS +SELECT + (SELECT COUNT(*) FROM auth_rules WHERE enabled = 1) as active_rules, + (SELECT COUNT(*) FROM auth_rules WHERE enabled = 1 AND expires_at > strftime('%s', 'now')) as non_expired_rules, + (SELECT COUNT(*) FROM auth_cache WHERE expires_at > strftime('%s', 'now')) as cached_decisions, + (SELECT COUNT(*) FROM administrators WHERE enabled = 1) as active_admins, + (SELECT COUNT(*) FROM admin_log WHERE timestamp > (strftime('%s', 'now') - 86400)) as daily_admin_actions; diff --git a/file_put.sh b/file_put.sh new file mode 100755 index 0000000..8672a18 --- /dev/null +++ b/file_put.sh @@ -0,0 +1,250 @@ +#!/bin/bash + +# put_test.sh - Test script for Ginxsom Blossom server upload functionality +# This script simulates a user uploading a blob to ginxsom using proper Blossom authentication + +set -e # Exit on any error + +# Configuration +SERVER_URL="http://localhost:9001" +UPLOAD_ENDPOINT="${SERVER_URL}/upload" +TEST_FILE="test_blob_$(date +%s).txt" +CLEANUP_FILES=() + +# Colors for output +RED='\033[0;31m' +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +BLUE='\033[0;34m' +NC='\033[0m' # No Color + +# Cleanup function +cleanup() { + echo -e "${YELLOW}Cleaning up temporary files...${NC}" + for file in "${CLEANUP_FILES[@]}"; do + if [[ -f "$file" ]]; then + rm -f "$file" + echo "Removed: $file" + fi + done +} + +# Set up cleanup on exit +trap cleanup EXIT + +# Helper functions +log_info() { + echo -e "${BLUE}[INFO]${NC} $1" +} + +log_success() { + echo -e "${GREEN}[SUCCESS]${NC} $1" +} + +log_error() { + echo -e "${RED}[ERROR]${NC} $1" +} + +log_warning() { + echo -e "${YELLOW}[WARNING]${NC} $1" +} + +# Check prerequisites +check_prerequisites() { + log_info "Checking prerequisites..." + + # Check if nak is installed + if ! command -v nak &> /dev/null; then + log_error "nak command not found. Please install nak first." + log_info "Install with: go install github.com/fiatjaf/nak@latest" + exit 1 + fi + log_success "nak is installed" + + # Check if curl is available + if ! command -v curl &> /dev/null; then + log_error "curl command not found. Please install curl." + exit 1 + fi + log_success "curl is available" + + # Check if sha256sum is available + if ! command -v sha256sum &> /dev/null; then + log_error "sha256sum command not found." + exit 1 + fi + log_success "sha256sum is available" + + # Check if base64 is available + if ! command -v base64 &> /dev/null; then + log_error "base64 command not found." + exit 1 + fi + log_success "base64 is available" +} + +# Check if server is running +check_server() { + log_info "Checking if server is running..." + + if curl -s -f "${SERVER_URL}/health" > /dev/null 2>&1; then + log_success "Server is running at ${SERVER_URL}" + else + log_error "Server is not responding at ${SERVER_URL}" + log_info "Please start the server with: ./scripts/start-fcgi.sh && nginx -p . -c config/local-nginx.conf" + exit 1 + fi +} + +# Create test file +create_test_file() { + log_info "Creating test file: ${TEST_FILE}" + + # Create test content with timestamp and random data + cat > "${TEST_FILE}" << EOF +Test blob content for Ginxsom Blossom server +Timestamp: $(date -Iseconds) +Random data: $(openssl rand -hex 32) +Test message: Hello from put_test.sh! + +This file is used to test the upload functionality +of the Ginxsom Blossom server implementation. +EOF + + CLEANUP_FILES+=("${TEST_FILE}") + log_success "Created test file with $(wc -c < "${TEST_FILE}") bytes" +} + +# Calculate file hash +calculate_hash() { + log_info "Calculating SHA-256 hash..." + + HASH=$(sha256sum "${TEST_FILE}" | cut -d' ' -f1) + log_success "File hash: ${HASH}" +} + +# Generate nostr event +generate_nostr_event() { + log_info "Generating kind 24242 nostr event with nak..." + + # Calculate expiration time (1 hour from now) + EXPIRATION=$(date -d '+1 hour' +%s) + + # Generate the event using nak + EVENT_JSON=$(nak event -k 24242 -c "" \ + -t "t=upload" \ + -t "x=${HASH}" \ + -t "expiration=${EXPIRATION}") + + if [[ -z "$EVENT_JSON" ]]; then + log_error "Failed to generate nostr event" + exit 1 + fi + + log_success "Generated nostr event" + echo "Event JSON: $EVENT_JSON" +} + +# Create authorization header +create_auth_header() { + log_info "Creating authorization header..." + + # Base64 encode the event (without newlines) + AUTH_B64=$(echo -n "$EVENT_JSON" | base64 -w 0) + AUTH_HEADER="Nostr ${AUTH_B64}" + + log_success "Created authorization header" + echo "Auth header length: ${#AUTH_HEADER} characters" +} + +# Perform upload +perform_upload() { + log_info "Performing upload to ${UPLOAD_ENDPOINT}..." + + # Create temporary file for response + RESPONSE_FILE=$(mktemp) + CLEANUP_FILES+=("${RESPONSE_FILE}") + + # Perform the upload with verbose output + HTTP_STATUS=$(curl -s -w "%{http_code}" \ + -X PUT \ + -H "Authorization: ${AUTH_HEADER}" \ + -H "Content-Type: text/plain" \ + -H "Content-Disposition: attachment; filename=\"${TEST_FILE}\"" \ + --data-binary "@${TEST_FILE}" \ + "${UPLOAD_ENDPOINT}" \ + -o "${RESPONSE_FILE}") + + echo "HTTP Status: ${HTTP_STATUS}" + echo "Response body:" + cat "${RESPONSE_FILE}" + echo + + # Check response + case "${HTTP_STATUS}" in + 200) + log_success "Upload successful!" + ;; + 201) + log_success "Upload successful (created)!" + ;; + 400) + log_error "Bad request - check the event format" + ;; + 401) + log_error "Unauthorized - authentication failed" + ;; + 405) + log_error "Method not allowed - check nginx configuration" + ;; + 413) + log_error "Payload too large" + ;; + 501) + log_warning "Upload endpoint not yet implemented (expected for now)" + ;; + *) + log_error "Upload failed with HTTP status: ${HTTP_STATUS}" + ;; + esac +} + +# Test file retrieval +test_retrieval() { + log_info "Testing file retrieval..." + + RETRIEVAL_URL="${SERVER_URL}/${HASH}" + + if curl -s -f "${RETRIEVAL_URL}" > /dev/null 2>&1; then + log_success "File can be retrieved at: ${RETRIEVAL_URL}" + else + log_warning "File not yet available for retrieval (expected if upload processing not implemented)" + fi +} + +# Main execution +main() { + echo "=== Ginxsom Blossom Upload Test ===" + echo "Timestamp: $(date -Iseconds)" + echo + + # check_prerequisites + # check_server + create_test_file + calculate_hash + generate_nostr_event + create_auth_header + perform_upload + # test_retrieval + + echo + log_info "Test completed!" + echo "Summary:" + echo " Test file: ${TEST_FILE}" + echo " File hash: ${HASH}" + echo " Server: ${SERVER_URL}" + echo " Upload endpoint: ${UPLOAD_ENDPOINT}" +} + +# Run main function +main "$@" diff --git a/logs/access.log b/logs/access.log index 290d9ba..b565fc3 100644 --- a/logs/access.log +++ b/logs/access.log @@ -149,3 +149,33 @@ 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" +127.0.0.1 - - [19/Aug/2025:11:15:08 -0400] "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1" 403 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:11:15:08 -0400] "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1" 403 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:11:15:08 -0400] "DELETE /1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef HTTP/1.1" 403 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:11:15:08 -0400] "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1" 403 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:11:16:37 -0400] "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1" 401 266 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:11:16:38 -0400] "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1" 401 272 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:11:16:38 -0400] "DELETE /1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef HTTP/1.1" 401 272 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:11:16:38 -0400] "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1" 401 272 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:13:33:51 -0400] "PUT /upload HTTP/1.1" 401 269 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:13:33:51 -0400] "GET /ffadb0d45885063938584c0b2373bc81543ecc4c8703b376b6dea4cf7be41017 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:13:52:52 -0400] "PUT /upload HTTP/1.1" 401 269 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:13:52:52 -0400] "GET /878a63847120be9c2949845989144a0a1460b5f66a300fe04d0c7f9fa3906e75 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:13:55:05 -0400] "PUT /upload HTTP/1.1" 401 269 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:13:55:05 -0400] "GET /739bb1bc3f3c16eca0fcd336611a8e2166611bda0d477e6fc88f396758f3c4a6 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:13:56:03 -0400] "PUT /upload HTTP/1.1" 401 269 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:13:56:03 -0400] "GET /cec5ac288e7c2855df27d0907a7e05a6721f98837586a452dbc917d9494135cc HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:13:59:03 -0400] "PUT /upload HTTP/1.1" 401 269 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:13:59:03 -0400] "GET /0c4351ce17bf759fb328d6db050d4b73e6d204e8a2af82971cf5e4e3d0e44680 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:14:00:27 -0400] "PUT /upload HTTP/1.1" 401 269 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:14:00:27 -0400] "GET /813cdff4112f980d8dd28a32eb8a6ce33795a27c01112c18f94ca83a9c4a6c20 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:14:12:19 -0400] "PUT /upload HTTP/1.1" 401 242 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:14:12:19 -0400] "GET /95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:14:24:00 -0400] "PUT /upload HTTP/1.1" 502 166 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:14:24:00 -0400] "GET /2dd6a29f22fab6e9848f45cfd723a542909fbcc060218d546e9210b3436dca34 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:14:25:33 -0400] "PUT /upload HTTP/1.1" 502 166 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:14:25:33 -0400] "GET /044331c6a984e58b258343a093a0a5b961ce6c8fc27ad6c1535144814b17cf04 HTTP/1.1" 404 162 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:14:29:42 -0400] "PUT /upload HTTP/1.1" 502 166 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:14:32:12 -0400] "PUT /upload HTTP/1.1" 401 242 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:14:37:30 -0400] "PUT /upload HTTP/1.1" 401 242 "-" "curl/8.15.0" +127.0.0.1 - - [19/Aug/2025:14:47:34 -0400] "PUT /upload HTTP/1.1" 200 224 "-" "curl/8.15.0" diff --git a/logs/error.log b/logs/error.log index 5dae882..1939991 100644 --- a/logs/error.log +++ b/logs/error.log @@ -17507,3 +17507,8381 @@ X-XSS-Protection: 1; mode=block 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 +2025/08/19 11:14:52 [notice] 390406#390406: signal 15 (SIGTERM) received from 396700, exiting +2025/08/19 11:14:52 [debug] 390406#390406: wake up, sigio 0 +2025/08/19 11:14:52 [debug] 390406#390406: child: 0 390407 e:0 t:0 d:0 r:1 j:0 +2025/08/19 11:14:52 [debug] 390406#390406: termination cycle: 50 +2025/08/19 11:14:52 [debug] 390406#390406: sigsuspend +2025/08/19 11:14:52 [debug] 390407#390407: epoll: fd:7 ev:0001 d:0000739927ED40F8 +2025/08/19 11:14:52 [debug] 390407#390407: channel handler +2025/08/19 11:14:52 [debug] 390407#390407: channel: 32 +2025/08/19 11:14:52 [debug] 390407#390407: channel command: 4 +2025/08/19 11:14:52 [debug] 390407#390407: channel: -2 +2025/08/19 11:14:52 [debug] 390407#390407: timer delta: 739002 +2025/08/19 11:14:52 [notice] 390407#390407: exiting +2025/08/19 11:14:52 [debug] 390407#390407: flush files +2025/08/19 11:14:52 [debug] 390407#390407: run cleanup: 0000606FBB9DF7E0 +2025/08/19 11:14:52 [debug] 390407#390407: run cleanup: 0000606FBB9D5360 +2025/08/19 11:14:52 [debug] 390407#390407: cleanup resolver +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9E3B80 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9D6980 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9B9900 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9B87F0 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9B27C0 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9B1700 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9B0640 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9AF580 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9A7160 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB99E130, unused: 0 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9A8330, unused: 0 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9B37D0, unused: 0 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9BA910, unused: 0 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9BE920, unused: 0 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9C2930, unused: 1 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9C6940, unused: 0 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9CA950, unused: 0 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9CE960, unused: 0 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9D2970, unused: 0 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9D7B50, unused: 0 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9DBB60, unused: 872 +2025/08/19 11:14:52 [debug] 390407#390407: free: 0000606FBB9DFB70, unused: 13576 +2025/08/19 11:14:52 [notice] 390407#390407: exit +2025/08/19 11:14:52 [notice] 390406#390406: signal 17 (SIGCHLD) received from 390407 +2025/08/19 11:14:52 [notice] 390406#390406: worker process 390407 exited with code 0 +2025/08/19 11:14:52 [debug] 390406#390406: shmtx forced unlock +2025/08/19 11:14:52 [debug] 390406#390406: wake up, sigio 3 +2025/08/19 11:14:52 [debug] 390406#390406: reap children +2025/08/19 11:14:52 [debug] 390406#390406: child: 0 390407 e:1 t:1 d:0 r:1 j:0 +2025/08/19 11:14:52 [notice] 390406#390406: exit +2025/08/19 11:14:52 [debug] 390406#390406: close listening 0.0.0.0:9001 #5 +2025/08/19 11:14:52 [debug] 390406#390406: run cleanup: 0000606FBB9D5360 +2025/08/19 11:14:52 [debug] 390406#390406: cleanup resolver +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9E3B80 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9D6980 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9B9900 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9B87F0 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9B27C0 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9B1700 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9B0640 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9AF580 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9A7160 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB99E130, unused: 0 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9A8330, unused: 0 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9B37D0, unused: 0 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9BA910, unused: 0 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9BE920, unused: 0 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9C2930, unused: 1 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9C6940, unused: 0 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9CA950, unused: 0 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9CE960, unused: 0 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9D2970, unused: 0 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9D7B50, unused: 0 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9DBB60, unused: 903 +2025/08/19 11:14:52 [debug] 390406#390406: free: 0000606FBB9DFB70, unused: 13576 +2025/08/19 11:14:52 [debug] 396701#396701: bind() 0.0.0.0:9001 #5 +2025/08/19 11:14:52 [notice] 396701#396701: using the "epoll" event method +2025/08/19 11:14:52 [debug] 396701#396701: counter: 0000731799AA2080, 1 +2025/08/19 11:14:52 [notice] 396701#396701: nginx/1.18.0 (Ubuntu) +2025/08/19 11:14:52 [notice] 396701#396701: OS: Linux 6.12.10-76061203-generic +2025/08/19 11:14:52 [notice] 396701#396701: getrlimit(RLIMIT_NOFILE): 1048576:1048576 +2025/08/19 11:14:52 [debug] 396702#396701: write: 6, 00007FFF6C9F3FE0, 7, 0 +2025/08/19 11:14:52 [debug] 396702#396702: setproctitle: "nginx: master process nginx -p . -c config/local-nginx.conf" +2025/08/19 11:14:52 [notice] 396702#396702: start worker processes +2025/08/19 11:14:52 [debug] 396702#396702: channel 6:7 +2025/08/19 11:14:52 [notice] 396702#396702: start worker process 396703 +2025/08/19 11:14:52 [debug] 396702#396702: sigsuspend +2025/08/19 11:14:52 [debug] 396703#396703: add cleanup: 000059E44D567A80 +2025/08/19 11:14:52 [debug] 396703#396703: malloc: 000059E44D51ABD0:8 +2025/08/19 11:14:52 [debug] 396703#396703: notify eventfd: 9 +2025/08/19 11:14:52 [debug] 396703#396703: testing the EPOLLRDHUP flag: success +2025/08/19 11:14:52 [debug] 396703#396703: malloc: 000059E44D52D570:6144 +2025/08/19 11:14:52 [debug] 396703#396703: malloc: 000073179989A010:237568 +2025/08/19 11:14:52 [debug] 396703#396703: malloc: 000059E44D56A690:98304 +2025/08/19 11:14:52 [debug] 396703#396703: malloc: 000059E44D5826A0:98304 +2025/08/19 11:14:52 [debug] 396703#396703: epoll add event: fd:5 op:1 ev:00002001 +2025/08/19 11:14:52 [debug] 396703#396703: epoll add event: fd:7 op:1 ev:00002001 +2025/08/19 11:14:52 [debug] 396703#396703: setproctitle: "nginx: worker process" +2025/08/19 11:14:52 [debug] 396703#396703: worker cycle +2025/08/19 11:14:52 [debug] 396703#396703: epoll timer: -1 +2025/08/19 11:15:08 [debug] 396703#396703: epoll: fd:5 ev:0001 d:000073179989A010 +2025/08/19 11:15:08 [debug] 396703#396703: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 11:15:08 [debug] 396703#396703: posix_memalign: 000059E44D519840:512 @16 +2025/08/19 11:15:08 [debug] 396703#396703: *1 accept: 127.0.0.1:55920 fd:6 +2025/08/19 11:15:08 [debug] 396703#396703: *1 event timer add: 6: 60000:183301934 +2025/08/19 11:15:08 [debug] 396703#396703: *1 reusable connection: 1 +2025/08/19 11:15:08 [debug] 396703#396703: *1 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 11:15:08 [debug] 396703#396703: timer delta: 16611 +2025/08/19 11:15:08 [debug] 396703#396703: worker cycle +2025/08/19 11:15:08 [debug] 396703#396703: epoll timer: 60000 +2025/08/19 11:15:08 [debug] 396703#396703: epoll: fd:6 ev:0001 d:000073179989A1E0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 http wait request handler +2025/08/19 11:15:08 [debug] 396703#396703: *1 malloc: 000059E44D51C0A0:1024 +2025/08/19 11:15:08 [debug] 396703#396703: *1 recv: eof:0, avail:-1 +2025/08/19 11:15:08 [debug] 396703#396703: *1 recv: fd:6 145 of 1024 +2025/08/19 11:15:08 [debug] 396703#396703: *1 reusable connection: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 posix_memalign: 000059E44D538A10:4096 @16 +2025/08/19 11:15:08 [debug] 396703#396703: *1 http process request line +2025/08/19 11:15:08 [debug] 396703#396703: *1 http request line: "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1" +2025/08/19 11:15:08 [debug] 396703#396703: *1 http uri: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:15:08 [debug] 396703#396703: *1 http args: "" +2025/08/19 11:15:08 [debug] 396703#396703: *1 http exten: "" +2025/08/19 11:15:08 [debug] 396703#396703: *1 posix_memalign: 000059E44D52ED80:4096 @16 +2025/08/19 11:15:08 [debug] 396703#396703: *1 http process request header line +2025/08/19 11:15:08 [debug] 396703#396703: *1 http header: "Host: localhost:9001" +2025/08/19 11:15:08 [debug] 396703#396703: *1 http header: "User-Agent: curl/8.15.0" +2025/08/19 11:15:08 [debug] 396703#396703: *1 http header: "Accept: */*" +2025/08/19 11:15:08 [debug] 396703#396703: *1 http header done +2025/08/19 11:15:08 [debug] 396703#396703: *1 event timer del: 6: 183301934 +2025/08/19 11:15:08 [debug] 396703#396703: *1 generic phase: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 rewrite phase: 1 +2025/08/19 11:15:08 [debug] 396703#396703: *1 test location: "/health" +2025/08/19 11:15:08 [debug] 396703#396703: *1 test location: "/debug/list" +2025/08/19 11:15:08 [debug] 396703#396703: *1 test location: "/" +2025/08/19 11:15:08 [debug] 396703#396703: *1 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 11:15:08 [debug] 396703#396703: *1 using configuration "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 11:15:08 [debug] 396703#396703: *1 http cl:-1 max:104857600 +2025/08/19 11:15:08 [debug] 396703#396703: *1 rewrite phase: 3 +2025/08/19 11:15:08 [debug] 396703#396703: *1 post rewrite phase: 4 +2025/08/19 11:15:08 [debug] 396703#396703: *1 generic phase: 5 +2025/08/19 11:15:08 [debug] 396703#396703: *1 generic phase: 6 +2025/08/19 11:15:08 [debug] 396703#396703: *1 generic phase: 7 +2025/08/19 11:15:08 [debug] 396703#396703: *1 access phase: 8 +2025/08/19 11:15:08 [debug] 396703#396703: *1 access: 0100007F 00000000 00000000 +2025/08/19 11:15:08 [error] 396703#396703: *1 access forbidden by rule, client: 127.0.0.1, server: localhost, request: "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1", host: "localhost:9001" +2025/08/19 11:15:08 [debug] 396703#396703: *1 http finalize request: 403, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" a:1, c:1 +2025/08/19 11:15:08 [debug] 396703#396703: *1 http special response: 403, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:15:08 [debug] 396703#396703: *1 http set discard body +2025/08/19 11:15:08 [debug] 396703#396703: *1 HTTP/1.1 403 Forbidden +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 15:15:08 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 11:15:08 [debug] 396703#396703: *1 write new buf t:1 f:0 000059E44D5398B8, pos 000059E44D5398B8, size: 164 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 http write filter: l:0 f:0 s:164 +2025/08/19 11:15:08 [debug] 396703#396703: *1 http output filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:15:08 [debug] 396703#396703: *1 http copy filter: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:15:08 [debug] 396703#396703: *1 http postpone filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" 000059E44D5399D0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 write old buf t:1 f:0 000059E44D5398B8, pos 000059E44D5398B8, size: 164 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 write new buf t:0 f:0 0000000000000000, pos 000059E437962600, size: 100 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 write new buf t:0 f:0 0000000000000000, pos 000059E437962C80, size: 62 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 http write filter: l:1 f:0 s:326 +2025/08/19 11:15:08 [debug] 396703#396703: *1 http write filter limit 0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 writev: 326 of 326 +2025/08/19 11:15:08 [debug] 396703#396703: *1 http write filter 0000000000000000 +2025/08/19 11:15:08 [debug] 396703#396703: *1 http copy filter: 0 "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:15:08 [debug] 396703#396703: *1 http finalize request: 0, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" a:1, c:1 +2025/08/19 11:15:08 [debug] 396703#396703: *1 set http keepalive handler +2025/08/19 11:15:08 [debug] 396703#396703: *1 http close request +2025/08/19 11:15:08 [debug] 396703#396703: *1 http log handler +2025/08/19 11:15:08 [debug] 396703#396703: *1 free: 000059E44D538A10, unused: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 free: 000059E44D52ED80, unused: 2701 +2025/08/19 11:15:08 [debug] 396703#396703: *1 free: 000059E44D51C0A0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 hc free: 0000000000000000 +2025/08/19 11:15:08 [debug] 396703#396703: *1 hc busy: 0000000000000000 0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 tcp_nodelay +2025/08/19 11:15:08 [debug] 396703#396703: *1 reusable connection: 1 +2025/08/19 11:15:08 [debug] 396703#396703: *1 event timer add: 6: 65000:183306934 +2025/08/19 11:15:08 [debug] 396703#396703: timer delta: 0 +2025/08/19 11:15:08 [debug] 396703#396703: worker cycle +2025/08/19 11:15:08 [debug] 396703#396703: epoll timer: 65000 +2025/08/19 11:15:08 [debug] 396703#396703: epoll: fd:6 ev:2001 d:000073179989A1E0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 http keepalive handler +2025/08/19 11:15:08 [debug] 396703#396703: *1 malloc: 000059E44D51C0A0:1024 +2025/08/19 11:15:08 [debug] 396703#396703: *1 recv: eof:1, avail:-1 +2025/08/19 11:15:08 [debug] 396703#396703: *1 recv: fd:6 0 of 1024 +2025/08/19 11:15:08 [info] 396703#396703: *1 client 127.0.0.1 closed keepalive connection +2025/08/19 11:15:08 [debug] 396703#396703: *1 close http connection: 6 +2025/08/19 11:15:08 [debug] 396703#396703: *1 event timer del: 6: 183306934 +2025/08/19 11:15:08 [debug] 396703#396703: *1 reusable connection: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 free: 000059E44D51C0A0 +2025/08/19 11:15:08 [debug] 396703#396703: *1 free: 000059E44D519840, unused: 136 +2025/08/19 11:15:08 [debug] 396703#396703: timer delta: 0 +2025/08/19 11:15:08 [debug] 396703#396703: worker cycle +2025/08/19 11:15:08 [debug] 396703#396703: epoll timer: -1 +2025/08/19 11:15:08 [debug] 396703#396703: epoll: fd:5 ev:0001 d:000073179989A010 +2025/08/19 11:15:08 [debug] 396703#396703: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 11:15:08 [debug] 396703#396703: posix_memalign: 000059E44D519840:512 @16 +2025/08/19 11:15:08 [debug] 396703#396703: *2 accept: 127.0.0.1:55932 fd:6 +2025/08/19 11:15:08 [debug] 396703#396703: *2 event timer add: 6: 60000:183301945 +2025/08/19 11:15:08 [debug] 396703#396703: *2 reusable connection: 1 +2025/08/19 11:15:08 [debug] 396703#396703: *2 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 11:15:08 [debug] 396703#396703: timer delta: 11 +2025/08/19 11:15:08 [debug] 396703#396703: worker cycle +2025/08/19 11:15:08 [debug] 396703#396703: epoll timer: 60000 +2025/08/19 11:15:08 [debug] 396703#396703: epoll: fd:6 ev:0001 d:000073179989A1E1 +2025/08/19 11:15:08 [debug] 396703#396703: *2 http wait request handler +2025/08/19 11:15:08 [debug] 396703#396703: *2 malloc: 000059E44D51C0A0:1024 +2025/08/19 11:15:08 [debug] 396703#396703: *2 recv: eof:0, avail:-1 +2025/08/19 11:15:08 [debug] 396703#396703: *2 recv: fd:6 196 of 1024 +2025/08/19 11:15:08 [debug] 396703#396703: *2 reusable connection: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *2 posix_memalign: 000059E44D538A10:4096 @16 +2025/08/19 11:15:08 [debug] 396703#396703: *2 http process request line +2025/08/19 11:15:08 [debug] 396703#396703: *2 http request line: "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1" +2025/08/19 11:15:08 [debug] 396703#396703: *2 http uri: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:15:08 [debug] 396703#396703: *2 http args: "" +2025/08/19 11:15:08 [debug] 396703#396703: *2 http exten: "" +2025/08/19 11:15:08 [debug] 396703#396703: *2 posix_memalign: 000059E44D52ED80:4096 @16 +2025/08/19 11:15:08 [debug] 396703#396703: *2 http process request header line +2025/08/19 11:15:08 [debug] 396703#396703: *2 http header: "Host: localhost:9001" +2025/08/19 11:15:08 [debug] 396703#396703: *2 http header: "User-Agent: curl/8.15.0" +2025/08/19 11:15:08 [debug] 396703#396703: *2 http header: "Accept: */*" +2025/08/19 11:15:08 [debug] 396703#396703: *2 http header: "Authorization: Nostr eyJpbnZhbGlkIjogImV2ZW50In0K" +2025/08/19 11:15:08 [debug] 396703#396703: *2 http header done +2025/08/19 11:15:08 [debug] 396703#396703: *2 event timer del: 6: 183301945 +2025/08/19 11:15:08 [debug] 396703#396703: *2 generic phase: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *2 rewrite phase: 1 +2025/08/19 11:15:08 [debug] 396703#396703: *2 test location: "/health" +2025/08/19 11:15:08 [debug] 396703#396703: *2 test location: "/debug/list" +2025/08/19 11:15:08 [debug] 396703#396703: *2 test location: "/" +2025/08/19 11:15:08 [debug] 396703#396703: *2 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 11:15:08 [debug] 396703#396703: *2 using configuration "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 11:15:08 [debug] 396703#396703: *2 http cl:-1 max:104857600 +2025/08/19 11:15:08 [debug] 396703#396703: *2 rewrite phase: 3 +2025/08/19 11:15:08 [debug] 396703#396703: *2 post rewrite phase: 4 +2025/08/19 11:15:08 [debug] 396703#396703: *2 generic phase: 5 +2025/08/19 11:15:08 [debug] 396703#396703: *2 generic phase: 6 +2025/08/19 11:15:08 [debug] 396703#396703: *2 generic phase: 7 +2025/08/19 11:15:08 [debug] 396703#396703: *2 access phase: 8 +2025/08/19 11:15:08 [debug] 396703#396703: *2 access: 0100007F 00000000 00000000 +2025/08/19 11:15:08 [error] 396703#396703: *2 access forbidden by rule, client: 127.0.0.1, server: localhost, request: "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1", host: "localhost:9001" +2025/08/19 11:15:08 [debug] 396703#396703: *2 http finalize request: 403, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" a:1, c:1 +2025/08/19 11:15:08 [debug] 396703#396703: *2 http special response: 403, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:15:08 [debug] 396703#396703: *2 http set discard body +2025/08/19 11:15:08 [debug] 396703#396703: *2 HTTP/1.1 403 Forbidden +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 15:15:08 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 11:15:08 [debug] 396703#396703: *2 write new buf t:1 f:0 000059E44D5398C8, pos 000059E44D5398C8, size: 164 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *2 http write filter: l:0 f:0 s:164 +2025/08/19 11:15:08 [debug] 396703#396703: *2 http output filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:15:08 [debug] 396703#396703: *2 http copy filter: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:15:08 [debug] 396703#396703: *2 http postpone filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" 000059E44D5399E0 +2025/08/19 11:15:08 [debug] 396703#396703: *2 write old buf t:1 f:0 000059E44D5398C8, pos 000059E44D5398C8, size: 164 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *2 write new buf t:0 f:0 0000000000000000, pos 000059E437962600, size: 100 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *2 write new buf t:0 f:0 0000000000000000, pos 000059E437962C80, size: 62 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *2 http write filter: l:1 f:0 s:326 +2025/08/19 11:15:08 [debug] 396703#396703: *2 http write filter limit 0 +2025/08/19 11:15:08 [debug] 396703#396703: *2 writev: 326 of 326 +2025/08/19 11:15:08 [debug] 396703#396703: *2 http write filter 0000000000000000 +2025/08/19 11:15:08 [debug] 396703#396703: *2 http copy filter: 0 "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:15:08 [debug] 396703#396703: *2 http finalize request: 0, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" a:1, c:1 +2025/08/19 11:15:08 [debug] 396703#396703: *2 set http keepalive handler +2025/08/19 11:15:08 [debug] 396703#396703: *2 http close request +2025/08/19 11:15:08 [debug] 396703#396703: *2 http log handler +2025/08/19 11:15:08 [debug] 396703#396703: *2 free: 000059E44D538A10, unused: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *2 free: 000059E44D52ED80, unused: 2685 +2025/08/19 11:15:08 [debug] 396703#396703: *2 free: 000059E44D51C0A0 +2025/08/19 11:15:08 [debug] 396703#396703: *2 hc free: 0000000000000000 +2025/08/19 11:15:08 [debug] 396703#396703: *2 hc busy: 0000000000000000 0 +2025/08/19 11:15:08 [debug] 396703#396703: *2 tcp_nodelay +2025/08/19 11:15:08 [debug] 396703#396703: *2 reusable connection: 1 +2025/08/19 11:15:08 [debug] 396703#396703: *2 event timer add: 6: 65000:183306945 +2025/08/19 11:15:08 [debug] 396703#396703: timer delta: 0 +2025/08/19 11:15:08 [debug] 396703#396703: worker cycle +2025/08/19 11:15:08 [debug] 396703#396703: epoll timer: 65000 +2025/08/19 11:15:08 [debug] 396703#396703: epoll: fd:6 ev:2001 d:000073179989A1E1 +2025/08/19 11:15:08 [debug] 396703#396703: *2 http keepalive handler +2025/08/19 11:15:08 [debug] 396703#396703: *2 malloc: 000059E44D51C0A0:1024 +2025/08/19 11:15:08 [debug] 396703#396703: *2 recv: eof:1, avail:-1 +2025/08/19 11:15:08 [debug] 396703#396703: *2 recv: fd:6 0 of 1024 +2025/08/19 11:15:08 [info] 396703#396703: *2 client 127.0.0.1 closed keepalive connection +2025/08/19 11:15:08 [debug] 396703#396703: *2 close http connection: 6 +2025/08/19 11:15:08 [debug] 396703#396703: *2 event timer del: 6: 183306945 +2025/08/19 11:15:08 [debug] 396703#396703: *2 reusable connection: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *2 free: 000059E44D51C0A0 +2025/08/19 11:15:08 [debug] 396703#396703: *2 free: 000059E44D519840, unused: 136 +2025/08/19 11:15:08 [debug] 396703#396703: timer delta: 1 +2025/08/19 11:15:08 [debug] 396703#396703: worker cycle +2025/08/19 11:15:08 [debug] 396703#396703: epoll timer: -1 +2025/08/19 11:15:08 [debug] 396703#396703: epoll: fd:5 ev:0001 d:000073179989A010 +2025/08/19 11:15:08 [debug] 396703#396703: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 11:15:08 [debug] 396703#396703: posix_memalign: 000059E44D519840:512 @16 +2025/08/19 11:15:08 [debug] 396703#396703: *3 accept: 127.0.0.1:55942 fd:6 +2025/08/19 11:15:08 [debug] 396703#396703: *3 event timer add: 6: 60000:183301967 +2025/08/19 11:15:08 [debug] 396703#396703: *3 reusable connection: 1 +2025/08/19 11:15:08 [debug] 396703#396703: *3 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 11:15:08 [debug] 396703#396703: timer delta: 21 +2025/08/19 11:15:08 [debug] 396703#396703: worker cycle +2025/08/19 11:15:08 [debug] 396703#396703: epoll timer: 60000 +2025/08/19 11:15:08 [debug] 396703#396703: epoll: fd:6 ev:0001 d:000073179989A1E0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 http wait request handler +2025/08/19 11:15:08 [debug] 396703#396703: *3 malloc: 000059E44D51C0A0:1024 +2025/08/19 11:15:08 [debug] 396703#396703: *3 recv: eof:0, avail:-1 +2025/08/19 11:15:08 [debug] 396703#396703: *3 recv: fd:6 668 of 1024 +2025/08/19 11:15:08 [debug] 396703#396703: *3 reusable connection: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 posix_memalign: 000059E44D538A10:4096 @16 +2025/08/19 11:15:08 [debug] 396703#396703: *3 http process request line +2025/08/19 11:15:08 [debug] 396703#396703: *3 http request line: "DELETE /1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef HTTP/1.1" +2025/08/19 11:15:08 [debug] 396703#396703: *3 http uri: "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 11:15:08 [debug] 396703#396703: *3 http args: "" +2025/08/19 11:15:08 [debug] 396703#396703: *3 http exten: "" +2025/08/19 11:15:08 [debug] 396703#396703: *3 posix_memalign: 000059E44D52ED80:4096 @16 +2025/08/19 11:15:08 [debug] 396703#396703: *3 http process request header line +2025/08/19 11:15:08 [debug] 396703#396703: *3 http header: "Host: localhost:9001" +2025/08/19 11:15:08 [debug] 396703#396703: *3 http header: "User-Agent: curl/8.15.0" +2025/08/19 11:15:08 [debug] 396703#396703: *3 http header: "Accept: */*" +2025/08/19 11:15:08 [debug] 396703#396703: *3 http header: "Authorization: Nostr ewogICJpZCI6ICJwbGFjZWhvbGRlcl9pZCIsCiAgInB1YmtleSI6ICI3OWJlNjY3ZWY5ZGNiYmFjNTVhMDYyOTVjZTg3MGIwNzAyOWJmY2RiMmRjZTI4ZDk1OWYyODE1YjE2ZjgxNzk4IiwKICAia2luZCI6IDI0MjQyLAogICJjb250ZW50IjogIkRlbGV0ZSBub24tZXhpc3RlbnQiLAogICJjcmVhdGVkX2F0IjogMTc1NTYxNjUwOCwKICAidGFncyI6IFsKICAgIFsidCIsICJkZWxldGUiXSwKICAgIFsieCIsICIxMjM0NTY3ODkwYWJjZGVmMTIzNDU2Nzg5MGFiY2RlZjEyMzQ1Njc4OTBhYmNkZWYxMjM0NTY3ODkwYWJjZGVmIl0sCiAgICBbImV4cGlyYXRpb24iLCAiMTc1NTYyMDEwOCJdCiAgXSwKICAic2lnIjogInBsYWNlaG9sZGVyX3NpZ25hdHVyZSIKfQo=" +2025/08/19 11:15:08 [debug] 396703#396703: *3 http header done +2025/08/19 11:15:08 [debug] 396703#396703: *3 event timer del: 6: 183301967 +2025/08/19 11:15:08 [debug] 396703#396703: *3 generic phase: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 rewrite phase: 1 +2025/08/19 11:15:08 [debug] 396703#396703: *3 test location: "/health" +2025/08/19 11:15:08 [debug] 396703#396703: *3 test location: "/debug/list" +2025/08/19 11:15:08 [debug] 396703#396703: *3 test location: "/" +2025/08/19 11:15:08 [debug] 396703#396703: *3 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 11:15:08 [debug] 396703#396703: *3 using configuration "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 11:15:08 [debug] 396703#396703: *3 http cl:-1 max:104857600 +2025/08/19 11:15:08 [debug] 396703#396703: *3 rewrite phase: 3 +2025/08/19 11:15:08 [debug] 396703#396703: *3 post rewrite phase: 4 +2025/08/19 11:15:08 [debug] 396703#396703: *3 generic phase: 5 +2025/08/19 11:15:08 [debug] 396703#396703: *3 generic phase: 6 +2025/08/19 11:15:08 [debug] 396703#396703: *3 generic phase: 7 +2025/08/19 11:15:08 [debug] 396703#396703: *3 access phase: 8 +2025/08/19 11:15:08 [debug] 396703#396703: *3 access: 0100007F 00000000 00000000 +2025/08/19 11:15:08 [error] 396703#396703: *3 access forbidden by rule, client: 127.0.0.1, server: localhost, request: "DELETE /1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef HTTP/1.1", host: "localhost:9001" +2025/08/19 11:15:08 [debug] 396703#396703: *3 http finalize request: 403, "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" a:1, c:1 +2025/08/19 11:15:08 [debug] 396703#396703: *3 http special response: 403, "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 11:15:08 [debug] 396703#396703: *3 http set discard body +2025/08/19 11:15:08 [debug] 396703#396703: *3 HTTP/1.1 403 Forbidden +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 15:15:08 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 11:15:08 [debug] 396703#396703: *3 write new buf t:1 f:0 000059E44D5398C8, pos 000059E44D5398C8, size: 164 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 http write filter: l:0 f:0 s:164 +2025/08/19 11:15:08 [debug] 396703#396703: *3 http output filter "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 11:15:08 [debug] 396703#396703: *3 http copy filter: "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 11:15:08 [debug] 396703#396703: *3 http postpone filter "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" 000059E44D5399E0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 write old buf t:1 f:0 000059E44D5398C8, pos 000059E44D5398C8, size: 164 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 write new buf t:0 f:0 0000000000000000, pos 000059E437962600, size: 100 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 write new buf t:0 f:0 0000000000000000, pos 000059E437962C80, size: 62 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 http write filter: l:1 f:0 s:326 +2025/08/19 11:15:08 [debug] 396703#396703: *3 http write filter limit 0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 writev: 326 of 326 +2025/08/19 11:15:08 [debug] 396703#396703: *3 http write filter 0000000000000000 +2025/08/19 11:15:08 [debug] 396703#396703: *3 http copy filter: 0 "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 11:15:08 [debug] 396703#396703: *3 http finalize request: 0, "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" a:1, c:1 +2025/08/19 11:15:08 [debug] 396703#396703: *3 set http keepalive handler +2025/08/19 11:15:08 [debug] 396703#396703: *3 http close request +2025/08/19 11:15:08 [debug] 396703#396703: *3 http log handler +2025/08/19 11:15:08 [debug] 396703#396703: *3 free: 000059E44D538A10, unused: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 free: 000059E44D52ED80, unused: 2685 +2025/08/19 11:15:08 [debug] 396703#396703: *3 free: 000059E44D51C0A0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 hc free: 0000000000000000 +2025/08/19 11:15:08 [debug] 396703#396703: *3 hc busy: 0000000000000000 0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 tcp_nodelay +2025/08/19 11:15:08 [debug] 396703#396703: *3 reusable connection: 1 +2025/08/19 11:15:08 [debug] 396703#396703: *3 event timer add: 6: 65000:183306967 +2025/08/19 11:15:08 [debug] 396703#396703: timer delta: 0 +2025/08/19 11:15:08 [debug] 396703#396703: worker cycle +2025/08/19 11:15:08 [debug] 396703#396703: epoll timer: 65000 +2025/08/19 11:15:08 [debug] 396703#396703: epoll: fd:6 ev:2001 d:000073179989A1E0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 http keepalive handler +2025/08/19 11:15:08 [debug] 396703#396703: *3 malloc: 000059E44D51C0A0:1024 +2025/08/19 11:15:08 [debug] 396703#396703: *3 recv: eof:1, avail:-1 +2025/08/19 11:15:08 [debug] 396703#396703: *3 recv: fd:6 0 of 1024 +2025/08/19 11:15:08 [info] 396703#396703: *3 client 127.0.0.1 closed keepalive connection +2025/08/19 11:15:08 [debug] 396703#396703: *3 close http connection: 6 +2025/08/19 11:15:08 [debug] 396703#396703: *3 event timer del: 6: 183306967 +2025/08/19 11:15:08 [debug] 396703#396703: *3 reusable connection: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 free: 000059E44D51C0A0 +2025/08/19 11:15:08 [debug] 396703#396703: *3 free: 000059E44D519840, unused: 136 +2025/08/19 11:15:08 [debug] 396703#396703: timer delta: 0 +2025/08/19 11:15:08 [debug] 396703#396703: worker cycle +2025/08/19 11:15:08 [debug] 396703#396703: epoll timer: -1 +2025/08/19 11:15:08 [debug] 396703#396703: epoll: fd:5 ev:0001 d:000073179989A010 +2025/08/19 11:15:08 [debug] 396703#396703: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 11:15:08 [debug] 396703#396703: posix_memalign: 000059E44D519840:512 @16 +2025/08/19 11:15:08 [debug] 396703#396703: *4 accept: 127.0.0.1:55948 fd:6 +2025/08/19 11:15:08 [debug] 396703#396703: *4 event timer add: 6: 60000:183301987 +2025/08/19 11:15:08 [debug] 396703#396703: *4 reusable connection: 1 +2025/08/19 11:15:08 [debug] 396703#396703: *4 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 11:15:08 [debug] 396703#396703: timer delta: 20 +2025/08/19 11:15:08 [debug] 396703#396703: worker cycle +2025/08/19 11:15:08 [debug] 396703#396703: epoll timer: 60000 +2025/08/19 11:15:08 [debug] 396703#396703: epoll: fd:6 ev:0001 d:000073179989A1E1 +2025/08/19 11:15:08 [debug] 396703#396703: *4 http wait request handler +2025/08/19 11:15:08 [debug] 396703#396703: *4 malloc: 000059E44D51C0A0:1024 +2025/08/19 11:15:08 [debug] 396703#396703: *4 recv: eof:0, avail:-1 +2025/08/19 11:15:08 [debug] 396703#396703: *4 recv: fd:6 676 of 1024 +2025/08/19 11:15:08 [debug] 396703#396703: *4 reusable connection: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *4 posix_memalign: 000059E44D538A10:4096 @16 +2025/08/19 11:15:08 [debug] 396703#396703: *4 http process request line +2025/08/19 11:15:08 [debug] 396703#396703: *4 http request line: "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1" +2025/08/19 11:15:08 [debug] 396703#396703: *4 http uri: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:15:08 [debug] 396703#396703: *4 http args: "" +2025/08/19 11:15:08 [debug] 396703#396703: *4 http exten: "" +2025/08/19 11:15:08 [debug] 396703#396703: *4 posix_memalign: 000059E44D52ED80:4096 @16 +2025/08/19 11:15:08 [debug] 396703#396703: *4 http process request header line +2025/08/19 11:15:08 [debug] 396703#396703: *4 http header: "Host: localhost:9001" +2025/08/19 11:15:08 [debug] 396703#396703: *4 http header: "User-Agent: curl/8.15.0" +2025/08/19 11:15:08 [debug] 396703#396703: *4 http header: "Accept: */*" +2025/08/19 11:15:08 [debug] 396703#396703: *4 http header: "Authorization: Nostr ewogICJpZCI6ICJwbGFjZWhvbGRlcl9pZCIsCiAgInB1YmtleSI6ICI3OWJlNjY3ZWY5ZGNiYmFjNTVhMDYyOTVjZTg3MGIwNzAyOWJmY2RiMmRjZTI4ZDk1OWYyODE1YjE2ZjgxNzk4IiwKICAia2luZCI6IDI0MjQyLAogICJjb250ZW50IjogIkRlbGV0ZSB3aXRoIHdyb25nIHB1YmtleSIsCiAgImNyZWF0ZWRfYXQiOiAxNzU1NjE2NTA4LAogICJ0YWdzIjogWwogICAgWyJ0IiwgImRlbGV0ZSJdLAogICAgWyJ4IiwgIjcwOGQwZTgyMjZlYzE3YjA1ODU0MTdjMGVjOTM1MmNlNWY1MmMzODIwYzkwNGI3MDY2ZmUyMGIwMGYyZDljZmUiXSwKICAgIFsiZXhwaXJhdGlvbiIsICIxNzU1NjIwMTA4Il0KICBdLAogICJzaWciOiAicGxhY2Vob2xkZXJfc2lnbmF0dXJlIgp9Cg==" +2025/08/19 11:15:08 [debug] 396703#396703: *4 http header done +2025/08/19 11:15:08 [debug] 396703#396703: *4 event timer del: 6: 183301987 +2025/08/19 11:15:08 [debug] 396703#396703: *4 generic phase: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *4 rewrite phase: 1 +2025/08/19 11:15:08 [debug] 396703#396703: *4 test location: "/health" +2025/08/19 11:15:08 [debug] 396703#396703: *4 test location: "/debug/list" +2025/08/19 11:15:08 [debug] 396703#396703: *4 test location: "/" +2025/08/19 11:15:08 [debug] 396703#396703: *4 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 11:15:08 [debug] 396703#396703: *4 using configuration "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 11:15:08 [debug] 396703#396703: *4 http cl:-1 max:104857600 +2025/08/19 11:15:08 [debug] 396703#396703: *4 rewrite phase: 3 +2025/08/19 11:15:08 [debug] 396703#396703: *4 post rewrite phase: 4 +2025/08/19 11:15:08 [debug] 396703#396703: *4 generic phase: 5 +2025/08/19 11:15:08 [debug] 396703#396703: *4 generic phase: 6 +2025/08/19 11:15:08 [debug] 396703#396703: *4 generic phase: 7 +2025/08/19 11:15:08 [debug] 396703#396703: *4 access phase: 8 +2025/08/19 11:15:08 [debug] 396703#396703: *4 access: 0100007F 00000000 00000000 +2025/08/19 11:15:08 [error] 396703#396703: *4 access forbidden by rule, client: 127.0.0.1, server: localhost, request: "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1", host: "localhost:9001" +2025/08/19 11:15:08 [debug] 396703#396703: *4 http finalize request: 403, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" a:1, c:1 +2025/08/19 11:15:08 [debug] 396703#396703: *4 http special response: 403, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:15:08 [debug] 396703#396703: *4 http set discard body +2025/08/19 11:15:08 [debug] 396703#396703: *4 HTTP/1.1 403 Forbidden +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 15:15:08 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 11:15:08 [debug] 396703#396703: *4 write new buf t:1 f:0 000059E44D5398C8, pos 000059E44D5398C8, size: 164 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *4 http write filter: l:0 f:0 s:164 +2025/08/19 11:15:08 [debug] 396703#396703: *4 http output filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:15:08 [debug] 396703#396703: *4 http copy filter: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:15:08 [debug] 396703#396703: *4 http postpone filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" 000059E44D5399E0 +2025/08/19 11:15:08 [debug] 396703#396703: *4 write old buf t:1 f:0 000059E44D5398C8, pos 000059E44D5398C8, size: 164 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *4 write new buf t:0 f:0 0000000000000000, pos 000059E437962600, size: 100 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *4 write new buf t:0 f:0 0000000000000000, pos 000059E437962C80, size: 62 file: 0, size: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *4 http write filter: l:1 f:0 s:326 +2025/08/19 11:15:08 [debug] 396703#396703: *4 http write filter limit 0 +2025/08/19 11:15:08 [debug] 396703#396703: *4 writev: 326 of 326 +2025/08/19 11:15:08 [debug] 396703#396703: *4 http write filter 0000000000000000 +2025/08/19 11:15:08 [debug] 396703#396703: *4 http copy filter: 0 "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:15:08 [debug] 396703#396703: *4 http finalize request: 0, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" a:1, c:1 +2025/08/19 11:15:08 [debug] 396703#396703: *4 set http keepalive handler +2025/08/19 11:15:08 [debug] 396703#396703: *4 http close request +2025/08/19 11:15:08 [debug] 396703#396703: *4 http log handler +2025/08/19 11:15:08 [debug] 396703#396703: *4 free: 000059E44D538A10, unused: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *4 free: 000059E44D52ED80, unused: 2685 +2025/08/19 11:15:08 [debug] 396703#396703: *4 free: 000059E44D51C0A0 +2025/08/19 11:15:08 [debug] 396703#396703: *4 hc free: 0000000000000000 +2025/08/19 11:15:08 [debug] 396703#396703: *4 hc busy: 0000000000000000 0 +2025/08/19 11:15:08 [debug] 396703#396703: *4 tcp_nodelay +2025/08/19 11:15:08 [debug] 396703#396703: *4 reusable connection: 1 +2025/08/19 11:15:08 [debug] 396703#396703: *4 event timer add: 6: 65000:183306987 +2025/08/19 11:15:08 [debug] 396703#396703: timer delta: 0 +2025/08/19 11:15:08 [debug] 396703#396703: worker cycle +2025/08/19 11:15:08 [debug] 396703#396703: epoll timer: 65000 +2025/08/19 11:15:08 [debug] 396703#396703: epoll: fd:6 ev:2001 d:000073179989A1E1 +2025/08/19 11:15:08 [debug] 396703#396703: *4 http keepalive handler +2025/08/19 11:15:08 [debug] 396703#396703: *4 malloc: 000059E44D51C0A0:1024 +2025/08/19 11:15:08 [debug] 396703#396703: *4 recv: eof:1, avail:-1 +2025/08/19 11:15:08 [debug] 396703#396703: *4 recv: fd:6 0 of 1024 +2025/08/19 11:15:08 [info] 396703#396703: *4 client 127.0.0.1 closed keepalive connection +2025/08/19 11:15:08 [debug] 396703#396703: *4 close http connection: 6 +2025/08/19 11:15:08 [debug] 396703#396703: *4 event timer del: 6: 183306987 +2025/08/19 11:15:08 [debug] 396703#396703: *4 reusable connection: 0 +2025/08/19 11:15:08 [debug] 396703#396703: *4 free: 000059E44D51C0A0 +2025/08/19 11:15:08 [debug] 396703#396703: *4 free: 000059E44D519840, unused: 136 +2025/08/19 11:15:08 [debug] 396703#396703: timer delta: 1 +2025/08/19 11:15:08 [debug] 396703#396703: worker cycle +2025/08/19 11:15:08 [debug] 396703#396703: epoll timer: -1 +2025/08/19 11:16:28 [notice] 396702#396702: signal 15 (SIGTERM) received from 398214, exiting +2025/08/19 11:16:28 [debug] 396702#396702: wake up, sigio 0 +2025/08/19 11:16:28 [debug] 396702#396702: child: 0 396703 e:0 t:0 d:0 r:1 j:0 +2025/08/19 11:16:28 [debug] 396702#396702: termination cycle: 50 +2025/08/19 11:16:28 [debug] 396702#396702: sigsuspend +2025/08/19 11:16:28 [debug] 396703#396703: epoll: fd:7 ev:0001 d:000073179989A0F8 +2025/08/19 11:16:28 [debug] 396703#396703: channel handler +2025/08/19 11:16:28 [debug] 396703#396703: channel: 32 +2025/08/19 11:16:28 [debug] 396703#396703: channel command: 4 +2025/08/19 11:16:28 [debug] 396703#396703: channel: -2 +2025/08/19 11:16:28 [debug] 396703#396703: timer delta: 79940 +2025/08/19 11:16:28 [notice] 396703#396703: exiting +2025/08/19 11:16:28 [debug] 396703#396703: flush files +2025/08/19 11:16:28 [debug] 396703#396703: run cleanup: 000059E44D567A80 +2025/08/19 11:16:28 [debug] 396703#396703: run cleanup: 000059E44D55AA00 +2025/08/19 11:16:28 [debug] 396703#396703: cleanup resolver +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D568DC0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D55BBC0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D53AB30 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D539A20 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D5339F0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D532930 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D531870 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D5307B0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D528160 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D51F130, unused: 0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D529560, unused: 0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D534A00, unused: 0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D53BB40, unused: 0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D53FB50, unused: 0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D543B60, unused: 1 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D547B70, unused: 0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D54BB80, unused: 0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D54FB90, unused: 0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D553BA0, unused: 0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D557BB0, unused: 3 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D55CD90, unused: 0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D560DA0, unused: 0 +2025/08/19 11:16:28 [debug] 396703#396703: free: 000059E44D564DB0, unused: 4888 +2025/08/19 11:16:28 [notice] 396703#396703: exit +2025/08/19 11:16:28 [notice] 396702#396702: signal 17 (SIGCHLD) received from 396703 +2025/08/19 11:16:28 [notice] 396702#396702: worker process 396703 exited with code 0 +2025/08/19 11:16:28 [debug] 396702#396702: shmtx forced unlock +2025/08/19 11:16:28 [debug] 396702#396702: wake up, sigio 3 +2025/08/19 11:16:28 [debug] 396702#396702: reap children +2025/08/19 11:16:28 [debug] 396702#396702: child: 0 396703 e:1 t:1 d:0 r:1 j:0 +2025/08/19 11:16:28 [notice] 396702#396702: exit +2025/08/19 11:16:28 [debug] 396702#396702: close listening 0.0.0.0:9001 #5 +2025/08/19 11:16:28 [debug] 396702#396702: run cleanup: 000059E44D55AA00 +2025/08/19 11:16:28 [debug] 396702#396702: cleanup resolver +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D568DC0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D55BBC0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D53AB30 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D539A20 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D5339F0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D532930 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D531870 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D5307B0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D528160 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D51F130, unused: 0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D529560, unused: 0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D534A00, unused: 0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D53BB40, unused: 0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D53FB50, unused: 0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D543B60, unused: 1 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D547B70, unused: 0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D54BB80, unused: 0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D54FB90, unused: 0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D553BA0, unused: 0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D557BB0, unused: 3 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D55CD90, unused: 0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D560DA0, unused: 0 +2025/08/19 11:16:28 [debug] 396702#396702: free: 000059E44D564DB0, unused: 4919 +2025/08/19 11:16:28 [debug] 398215#398215: bind() 0.0.0.0:9001 #5 +2025/08/19 11:16:28 [notice] 398215#398215: using the "epoll" event method +2025/08/19 11:16:28 [debug] 398215#398215: counter: 00007877C5F91080, 1 +2025/08/19 11:16:28 [notice] 398215#398215: nginx/1.18.0 (Ubuntu) +2025/08/19 11:16:28 [notice] 398215#398215: OS: Linux 6.12.10-76061203-generic +2025/08/19 11:16:28 [notice] 398215#398215: getrlimit(RLIMIT_NOFILE): 1048576:1048576 +2025/08/19 11:16:28 [debug] 398216#398215: write: 6, 00007FFE4490FDB0, 7, 0 +2025/08/19 11:16:28 [debug] 398216#398216: setproctitle: "nginx: master process nginx -p . -c config/local-nginx.conf" +2025/08/19 11:16:28 [notice] 398216#398216: start worker processes +2025/08/19 11:16:28 [debug] 398216#398216: channel 6:7 +2025/08/19 11:16:28 [notice] 398216#398216: start worker process 398217 +2025/08/19 11:16:28 [debug] 398216#398216: sigsuspend +2025/08/19 11:16:28 [debug] 398217#398217: add cleanup: 000061F3F26F4A70 +2025/08/19 11:16:28 [debug] 398217#398217: malloc: 000061F3F26A7BD0:8 +2025/08/19 11:16:28 [debug] 398217#398217: notify eventfd: 9 +2025/08/19 11:16:28 [debug] 398217#398217: testing the EPOLLRDHUP flag: success +2025/08/19 11:16:28 [debug] 398217#398217: malloc: 000061F3F26BA580:6144 +2025/08/19 11:16:28 [debug] 398217#398217: malloc: 00007877C5D89010:237568 +2025/08/19 11:16:28 [debug] 398217#398217: malloc: 000061F3F26F76A0:98304 +2025/08/19 11:16:28 [debug] 398217#398217: malloc: 000061F3F270F6B0:98304 +2025/08/19 11:16:28 [debug] 398217#398217: epoll add event: fd:5 op:1 ev:00002001 +2025/08/19 11:16:28 [debug] 398217#398217: epoll add event: fd:7 op:1 ev:00002001 +2025/08/19 11:16:28 [debug] 398217#398217: setproctitle: "nginx: worker process" +2025/08/19 11:16:28 [debug] 398217#398217: worker cycle +2025/08/19 11:16:28 [debug] 398217#398217: epoll timer: -1 +2025/08/19 11:16:37 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 11:16:37 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 11:16:37 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 11:16:37 [debug] 398217#398217: *1 accept: 127.0.0.1:37222 fd:6 +2025/08/19 11:16:37 [debug] 398217#398217: *1 event timer add: 6: 60000:183391092 +2025/08/19 11:16:37 [debug] 398217#398217: *1 reusable connection: 1 +2025/08/19 11:16:37 [debug] 398217#398217: *1 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 11:16:37 [debug] 398217#398217: timer delta: 9160 +2025/08/19 11:16:37 [debug] 398217#398217: worker cycle +2025/08/19 11:16:37 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 11:16:37 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http wait request handler +2025/08/19 11:16:37 [debug] 398217#398217: *1 malloc: 000061F3F26A90A0:1024 +2025/08/19 11:16:37 [debug] 398217#398217: *1 recv: eof:0, avail:-1 +2025/08/19 11:16:37 [debug] 398217#398217: *1 recv: fd:6 145 of 1024 +2025/08/19 11:16:37 [debug] 398217#398217: *1 reusable connection: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http process request line +2025/08/19 11:16:37 [debug] 398217#398217: *1 http request line: "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http uri: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http args: "" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http exten: "" +2025/08/19 11:16:37 [debug] 398217#398217: *1 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http process request header line +2025/08/19 11:16:37 [debug] 398217#398217: *1 http header: "Host: localhost:9001" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http header: "User-Agent: curl/8.15.0" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http header: "Accept: */*" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http header done +2025/08/19 11:16:37 [debug] 398217#398217: *1 event timer del: 6: 183391092 +2025/08/19 11:16:37 [debug] 398217#398217: *1 generic phase: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 rewrite phase: 1 +2025/08/19 11:16:37 [debug] 398217#398217: *1 test location: "/health" +2025/08/19 11:16:37 [debug] 398217#398217: *1 test location: "/debug/list" +2025/08/19 11:16:37 [debug] 398217#398217: *1 test location: "/" +2025/08/19 11:16:37 [debug] 398217#398217: *1 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 11:16:37 [debug] 398217#398217: *1 using configuration "^/([a-f0-9]{64}).*$" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http cl:-1 max:104857600 +2025/08/19 11:16:37 [debug] 398217#398217: *1 rewrite phase: 3 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "DELETE" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script value: "DELETE" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script not equal +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script not equal: no +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script if +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script if: false +2025/08/19 11:16:37 [debug] 398217#398217: *1 post rewrite phase: 4 +2025/08/19 11:16:37 [debug] 398217#398217: *1 generic phase: 5 +2025/08/19 11:16:37 [debug] 398217#398217: *1 generic phase: 6 +2025/08/19 11:16:37 [debug] 398217#398217: *1 generic phase: 7 +2025/08/19 11:16:37 [debug] 398217#398217: *1 access phase: 8 +2025/08/19 11:16:37 [debug] 398217#398217: *1 access phase: 9 +2025/08/19 11:16:37 [debug] 398217#398217: *1 access phase: 10 +2025/08/19 11:16:37 [debug] 398217#398217: *1 post access phase: 11 +2025/08/19 11:16:37 [debug] 398217#398217: *1 generic phase: 12 +2025/08/19 11:16:37 [debug] 398217#398217: *1 generic phase: 13 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http init upstream, client timer: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "QUERY_STRING" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "QUERY_STRING: " +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "REQUEST_METHOD" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "DELETE" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "REQUEST_METHOD: DELETE" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "CONTENT_TYPE" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "CONTENT_TYPE: " +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "CONTENT_LENGTH" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "CONTENT_LENGTH: " +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "SCRIPT_NAME" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "SCRIPT_NAME: /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "REQUEST_URI" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "REQUEST_URI: /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "DOCUMENT_URI" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "DOCUMENT_URI: /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "DOCUMENT_ROOT" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "./blobs" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "SERVER_PROTOCOL" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "HTTP/1.1" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "REQUEST_SCHEME" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "http" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "GATEWAY_INTERFACE" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "CGI/1.1" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "SERVER_SOFTWARE" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "nginx/" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "1.18.0" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "REMOTE_ADDR" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "127.0.0.1" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "REMOTE_PORT" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "37222" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "REMOTE_PORT: 37222" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "SERVER_ADDR" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "127.0.0.1" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "SERVER_PORT" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "9001" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "SERVER_NAME" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "localhost" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "REDIRECT_STATUS" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "200" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "SCRIPT_FILENAME" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script var: "./blobs" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http script copy: "/ginxsom.fcgi" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 11:16:37 [debug] 398217#398217: *1 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http cleanup add: 000061F3F26C6A08 +2025/08/19 11:16:37 [debug] 398217#398217: *1 get rr peer, try: 1 +2025/08/19 11:16:37 [debug] 398217#398217: *1 stream socket 10 +2025/08/19 11:16:37 [debug] 398217#398217: *1 epoll add connection: fd:10 ev:80002005 +2025/08/19 11:16:37 [debug] 398217#398217: *1 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #2 +2025/08/19 11:16:37 [debug] 398217#398217: *1 connected +2025/08/19 11:16:37 [debug] 398217#398217: *1 http upstream connect: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 posix_memalign: 000061F3F268FF20:128 @16 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http upstream send request +2025/08/19 11:16:37 [debug] 398217#398217: *1 http upstream send request body +2025/08/19 11:16:37 [debug] 398217#398217: *1 chain writer buf fl:0 s:696 +2025/08/19 11:16:37 [debug] 398217#398217: *1 chain writer in: 000061F3F26BCB00 +2025/08/19 11:16:37 [debug] 398217#398217: *1 writev: 696 of 696 +2025/08/19 11:16:37 [debug] 398217#398217: *1 chain writer out: 0000000000000000 +2025/08/19 11:16:37 [debug] 398217#398217: *1 event timer add: 10: 60000:183391092 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http finalize request: -4, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" a:1, c:2 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http request count:2 blk:0 +2025/08/19 11:16:37 [debug] 398217#398217: timer delta: 0 +2025/08/19 11:16:37 [debug] 398217#398217: worker cycle +2025/08/19 11:16:37 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 11:16:37 [debug] 398217#398217: epoll: fd:6 ev:0004 d:00007877C5D891E0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http run request: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http upstream check client, write event:1, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:37 [debug] 398217#398217: epoll: fd:10 ev:0004 d:00007877C5D892C8 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http upstream request: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http upstream dummy handler +2025/08/19 11:16:37 [debug] 398217#398217: timer delta: 2 +2025/08/19 11:16:37 [debug] 398217#398217: worker cycle +2025/08/19 11:16:37 [debug] 398217#398217: epoll timer: 59998 +2025/08/19 11:16:37 [debug] 398217#398217: epoll: fd:10 ev:2005 d:00007877C5D892C8 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http upstream request: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http upstream process header +2025/08/19 11:16:37 [debug] 398217#398217: *1 malloc: 000061F3F26B0140:4096 +2025/08/19 11:16:37 [debug] 398217#398217: *1 recv: eof:1, avail:-1 +2025/08/19 11:16:37 [debug] 398217#398217: *1 recv: fd:10 768 of 4096 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 01 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 06 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 00 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 01 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 02 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: DD +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 03 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 00 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record length: 733 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi parser: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi parser: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi header: "DEBUG: METHOD=DELETE, URI=/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi parser: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 posix_memalign: 000061F3F26B1150:4096 @16 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi header: "DEBUG: DELETE request - extracted SHA256=708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi parser: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi header: "DEBUG: handle_delete_request called with sha256=708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi parser: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi header: "LOG: [2025-08-19 11:16:37] DELETE /delete - Auth: pending - Status: 0" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi parser: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi header: "Status: 401 Unauthorized" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi parser: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi header: "Content-Type: application/json" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi parser: 1 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi header done +2025/08/19 11:16:37 [debug] 398217#398217: *1 HTTP/1.1 401 Unauthorized +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 15:16:37 GMT +Content-Type: application/json +Transfer-Encoding: chunked +Connection: keep-alive +DEBUG: FastCGI received request +DEBUG: METHOD=DELETE, URI=/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe +DEBUG: DELETE request - extracted SHA256=708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe +DEBUG: handle_delete_request called with sha256=708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe +LOG: [2025-08-19 11:16:37] DELETE /delete - Auth: pending - Status: 0 + +2025/08/19 11:16:37 [debug] 398217#398217: *1 write new buf t:1 f:0 000061F3F26B1348, pos 000061F3F26B1348, size: 599 file: 0, size: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http write filter: l:0 f:0 s:599 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http cacheable: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http upstream process upstream +2025/08/19 11:16:37 [debug] 398217#398217: *1 pipe read upstream: 1 +2025/08/19 11:16:37 [debug] 398217#398217: *1 pipe preread: 282 +2025/08/19 11:16:37 [debug] 398217#398217: *1 readv: eof:1, avail:0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 readv: 1, last:3328 +2025/08/19 11:16:37 [debug] 398217#398217: *1 pipe recv chain: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 pipe buf free s:0 t:1 f:0 000061F3F26B0140, pos 000061F3F26B0326, size: 282 file: 0, size: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 pipe length: -1 +2025/08/19 11:16:37 [debug] 398217#398217: *1 input buf #0 000061F3F26B0326 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 01 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 06 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 00 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 01 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 00 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 00 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 00 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 00 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record length: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi closed stdout +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 01 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 03 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 00 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 01 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 00 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 08 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 00 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record byte: 00 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi record length: 8 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http fastcgi sent end request +2025/08/19 11:16:37 [debug] 398217#398217: *1 input buf 000061F3F26B0326 255 +2025/08/19 11:16:37 [debug] 398217#398217: *1 pipe write downstream: 1 +2025/08/19 11:16:37 [debug] 398217#398217: *1 pipe write downstream flush in +2025/08/19 11:16:37 [debug] 398217#398217: *1 http output filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http copy filter: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http postpone filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" 000061F3F26B16C8 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http chunk: 255 +2025/08/19 11:16:37 [debug] 398217#398217: *1 write old buf t:1 f:0 000061F3F26B1348, pos 000061F3F26B1348, size: 599 file: 0, size: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 write new buf t:1 f:0 000061F3F26B1820, pos 000061F3F26B1820, size: 4 file: 0, size: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 write new buf t:1 f:0 000061F3F26B0140, pos 000061F3F26B0326, size: 255 file: 0, size: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http write filter: l:0 f:0 s:860 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http copy filter: 0 "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:37 [debug] 398217#398217: *1 pipe write downstream done +2025/08/19 11:16:37 [debug] 398217#398217: *1 event timer: 10, old: 183391092, new: 183391094 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http upstream exit: 0000000000000000 +2025/08/19 11:16:37 [debug] 398217#398217: *1 finalize http upstream request: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 finalize http fastcgi request +2025/08/19 11:16:37 [debug] 398217#398217: *1 free rr peer 1 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 close http upstream connection: 10 +2025/08/19 11:16:37 [debug] 398217#398217: *1 free: 000061F3F268FF20, unused: 48 +2025/08/19 11:16:37 [debug] 398217#398217: *1 event timer del: 10: 183391092 +2025/08/19 11:16:37 [debug] 398217#398217: *1 reusable connection: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http upstream temp fd: -1 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http output filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http copy filter: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http postpone filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" 00007FFE4490F9F0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http chunk: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 write old buf t:1 f:0 000061F3F26B1348, pos 000061F3F26B1348, size: 599 file: 0, size: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 write old buf t:1 f:0 000061F3F26B1820, pos 000061F3F26B1820, size: 4 file: 0, size: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 write old buf t:1 f:0 000061F3F26B0140, pos 000061F3F26B0326, size: 255 file: 0, size: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 write old buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E5, size: 5 file: 0, size: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http write filter: l:1 f:0 s:865 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http write filter limit 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 writev: 865 of 865 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http write filter 0000000000000000 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http copy filter: 0 "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:37 [debug] 398217#398217: *1 http finalize request: 0, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" a:1, c:1 +2025/08/19 11:16:37 [debug] 398217#398217: *1 set http keepalive handler +2025/08/19 11:16:37 [debug] 398217#398217: *1 http close request +2025/08/19 11:16:37 [debug] 398217#398217: *1 http log handler +2025/08/19 11:16:37 [debug] 398217#398217: *1 free: 000061F3F26B0140 +2025/08/19 11:16:37 [debug] 398217#398217: *1 free: 000061F3F26C5A20, unused: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 free: 000061F3F26BBD90, unused: 12 +2025/08/19 11:16:37 [debug] 398217#398217: *1 free: 000061F3F26B1150, unused: 1805 +2025/08/19 11:16:37 [debug] 398217#398217: *1 free: 000061F3F26A90A0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 hc free: 0000000000000000 +2025/08/19 11:16:37 [debug] 398217#398217: *1 hc busy: 0000000000000000 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 tcp_nodelay +2025/08/19 11:16:37 [debug] 398217#398217: *1 reusable connection: 1 +2025/08/19 11:16:37 [debug] 398217#398217: *1 event timer add: 6: 65000:183396094 +2025/08/19 11:16:37 [debug] 398217#398217: timer delta: 0 +2025/08/19 11:16:37 [debug] 398217#398217: worker cycle +2025/08/19 11:16:37 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 11:16:37 [debug] 398217#398217: epoll: fd:6 ev:2005 d:00007877C5D891E0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 http keepalive handler +2025/08/19 11:16:37 [debug] 398217#398217: *1 malloc: 000061F3F26A90A0:1024 +2025/08/19 11:16:37 [debug] 398217#398217: *1 recv: eof:1, avail:-1 +2025/08/19 11:16:37 [debug] 398217#398217: *1 recv: fd:6 0 of 1024 +2025/08/19 11:16:37 [info] 398217#398217: *1 client 127.0.0.1 closed keepalive connection +2025/08/19 11:16:37 [debug] 398217#398217: *1 close http connection: 6 +2025/08/19 11:16:37 [debug] 398217#398217: *1 event timer del: 6: 183396094 +2025/08/19 11:16:37 [debug] 398217#398217: *1 reusable connection: 0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 free: 000061F3F26A90A0 +2025/08/19 11:16:37 [debug] 398217#398217: *1 free: 000061F3F26A6840, unused: 120 +2025/08/19 11:16:37 [debug] 398217#398217: timer delta: 2 +2025/08/19 11:16:37 [debug] 398217#398217: worker cycle +2025/08/19 11:16:37 [debug] 398217#398217: epoll timer: -1 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 11:16:38 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 11:16:38 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *3 accept: 127.0.0.1:37234 fd:6 +2025/08/19 11:16:38 [debug] 398217#398217: *3 event timer add: 6: 60000:183391118 +2025/08/19 11:16:38 [debug] 398217#398217: *3 reusable connection: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 22 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http wait request handler +2025/08/19 11:16:38 [debug] 398217#398217: *3 malloc: 000061F3F26A90A0:1024 +2025/08/19 11:16:38 [debug] 398217#398217: *3 recv: eof:0, avail:-1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 recv: fd:6 196 of 1024 +2025/08/19 11:16:38 [debug] 398217#398217: *3 reusable connection: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http process request line +2025/08/19 11:16:38 [debug] 398217#398217: *3 http request line: "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http uri: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http args: "" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http exten: "" +2025/08/19 11:16:38 [debug] 398217#398217: *3 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http process request header line +2025/08/19 11:16:38 [debug] 398217#398217: *3 http header: "Host: localhost:9001" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http header: "User-Agent: curl/8.15.0" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http header: "Accept: */*" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http header: "Authorization: Nostr eyJpbnZhbGlkIjogImV2ZW50In0K" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http header done +2025/08/19 11:16:38 [debug] 398217#398217: *3 event timer del: 6: 183391118 +2025/08/19 11:16:38 [debug] 398217#398217: *3 generic phase: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 rewrite phase: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 test location: "/health" +2025/08/19 11:16:38 [debug] 398217#398217: *3 test location: "/debug/list" +2025/08/19 11:16:38 [debug] 398217#398217: *3 test location: "/" +2025/08/19 11:16:38 [debug] 398217#398217: *3 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 11:16:38 [debug] 398217#398217: *3 using configuration "^/([a-f0-9]{64}).*$" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http cl:-1 max:104857600 +2025/08/19 11:16:38 [debug] 398217#398217: *3 rewrite phase: 3 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "DELETE" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script value: "DELETE" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script not equal +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script not equal: no +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script if +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script if: false +2025/08/19 11:16:38 [debug] 398217#398217: *3 post rewrite phase: 4 +2025/08/19 11:16:38 [debug] 398217#398217: *3 generic phase: 5 +2025/08/19 11:16:38 [debug] 398217#398217: *3 generic phase: 6 +2025/08/19 11:16:38 [debug] 398217#398217: *3 generic phase: 7 +2025/08/19 11:16:38 [debug] 398217#398217: *3 access phase: 8 +2025/08/19 11:16:38 [debug] 398217#398217: *3 access phase: 9 +2025/08/19 11:16:38 [debug] 398217#398217: *3 access phase: 10 +2025/08/19 11:16:38 [debug] 398217#398217: *3 post access phase: 11 +2025/08/19 11:16:38 [debug] 398217#398217: *3 generic phase: 12 +2025/08/19 11:16:38 [debug] 398217#398217: *3 generic phase: 13 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http init upstream, client timer: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "QUERY_STRING" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "QUERY_STRING: " +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "REQUEST_METHOD" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "DELETE" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "REQUEST_METHOD: DELETE" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "CONTENT_TYPE" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "CONTENT_TYPE: " +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "CONTENT_LENGTH" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "CONTENT_LENGTH: " +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "SCRIPT_NAME" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "SCRIPT_NAME: /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "REQUEST_URI" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "REQUEST_URI: /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "DOCUMENT_URI" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "DOCUMENT_URI: /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "DOCUMENT_ROOT" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "./blobs" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "SERVER_PROTOCOL" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "HTTP/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "REQUEST_SCHEME" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "http" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "GATEWAY_INTERFACE" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "CGI/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "SERVER_SOFTWARE" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "nginx/" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "1.18.0" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "REMOTE_ADDR" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "127.0.0.1" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "REMOTE_PORT" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "37234" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "REMOTE_PORT: 37234" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "SERVER_ADDR" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "127.0.0.1" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "SERVER_PORT" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "9001" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "SERVER_NAME" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "localhost" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "REDIRECT_STATUS" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "200" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "SCRIPT_FILENAME" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script var: "./blobs" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http script copy: "/ginxsom.fcgi" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 11:16:38 [debug] 398217#398217: *3 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJpbnZhbGlkIjogImV2ZW50In0K" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http cleanup add: 000061F3F26BCB08 +2025/08/19 11:16:38 [debug] 398217#398217: *3 get rr peer, try: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 stream socket 10 +2025/08/19 11:16:38 [debug] 398217#398217: *3 epoll add connection: fd:10 ev:80002005 +2025/08/19 11:16:38 [debug] 398217#398217: *3 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #4 +2025/08/19 11:16:38 [debug] 398217#398217: *3 connected +2025/08/19 11:16:38 [debug] 398217#398217: *3 http upstream connect: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 posix_memalign: 000061F3F268FF20:128 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http upstream send request +2025/08/19 11:16:38 [debug] 398217#398217: *3 http upstream send request body +2025/08/19 11:16:38 [debug] 398217#398217: *3 chain writer buf fl:0 s:744 +2025/08/19 11:16:38 [debug] 398217#398217: *3 chain writer in: 000061F3F26BCB48 +2025/08/19 11:16:38 [debug] 398217#398217: *3 writev: 744 of 744 +2025/08/19 11:16:38 [debug] 398217#398217: *3 chain writer out: 0000000000000000 +2025/08/19 11:16:38 [debug] 398217#398217: *3 event timer add: 10: 60000:183391118 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http finalize request: -4, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" a:1, c:2 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http request count:2 blk:0 +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 0 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:6 ev:0004 d:00007877C5D891E1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http run request: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http upstream check client, write event:1, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:10 ev:0004 d:00007877C5D892C9 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http upstream request: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http upstream dummy handler +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 2 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: 59998 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:10 ev:2005 d:00007877C5D892C9 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http upstream request: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http upstream process header +2025/08/19 11:16:38 [debug] 398217#398217: *3 malloc: 000061F3F26B0140:4096 +2025/08/19 11:16:38 [debug] 398217#398217: *3 recv: eof:1, avail:-1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 recv: fd:10 1112 of 4096 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 06 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 04 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 33 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 05 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record length: 1075 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 posix_memalign: 000061F3F26B1150:4096 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi header: "DEBUG: METHOD=DELETE, URI=/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi header: "DEBUG: DELETE request - extracted SHA256=708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi header: "DEBUG: handle_delete_request called with sha256=708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi header: "LOG: [2025-08-19 11:16:38] DELETE /delete - Auth: pending - Status: 0" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi header: "DEBUG: Authenticating request - method: delete, hash: 708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi header: "DEBUG: Base64 event from header: eyJpbnZhbGlkIjogImV2ZW50In0K..." +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi header: "DEBUG: Parsed authorization header, extracted JSON: {"invalid": "event"}" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi header: "...: " +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi header: "DEBUG: Nostr event validation failed: -30 (Event has invalid structure)" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi header: "Status: 401 Unauthorized" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi header: "Content-Type: application/json" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi parser: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi header done +2025/08/19 11:16:38 [debug] 398217#398217: *3 HTTP/1.1 401 Unauthorized +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 15:16:38 GMT +Content-Type: application/json +Transfer-Encoding: chunked +Connection: keep-alive +DEBUG: FastCGI received request +DEBUG: METHOD=DELETE, URI=/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe +DEBUG: DELETE request - extracted SHA256=708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe +DEBUG: handle_delete_request called with sha256=708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe +LOG: [2025-08-19 11:16:38] DELETE /delete - Auth: pending - Status: 0 +DEBUG: Authenticating request - method: delete, hash: 708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe +DEBUG: Base64 event from header: eyJpbnZhbGlkIjogImV2ZW50In0K... +DEBUG: Parsed authorization header, extracted JSON: {"invalid": "event"} +DEBUG: Nostr event validation failed: -30 (Event has invalid structure) + +2025/08/19 11:16:38 [debug] 398217#398217: *3 write new buf t:1 f:0 000061F3F26B1680, pos 000061F3F26B1680, size: 932 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http write filter: l:0 f:0 s:932 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http cacheable: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http upstream process upstream +2025/08/19 11:16:38 [debug] 398217#398217: *3 pipe read upstream: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 pipe preread: 289 +2025/08/19 11:16:38 [debug] 398217#398217: *3 readv: eof:1, avail:0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 readv: 1, last:2984 +2025/08/19 11:16:38 [debug] 398217#398217: *3 pipe recv chain: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 pipe buf free s:0 t:1 f:0 000061F3F26B0140, pos 000061F3F26B0477, size: 289 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 pipe length: -1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 input buf #0 000061F3F26B0477 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 06 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record length: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi closed stdout +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 03 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 08 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi record length: 8 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http fastcgi sent end request +2025/08/19 11:16:38 [debug] 398217#398217: *3 input buf 000061F3F26B0477 260 +2025/08/19 11:16:38 [debug] 398217#398217: *3 pipe write downstream: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 pipe write downstream flush in +2025/08/19 11:16:38 [debug] 398217#398217: *3 http output filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http copy filter: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http postpone filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" 000061F3F26B1B50 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http chunk: 260 +2025/08/19 11:16:38 [debug] 398217#398217: *3 write old buf t:1 f:0 000061F3F26B1680, pos 000061F3F26B1680, size: 932 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 write new buf t:1 f:0 000061F3F26B1CA8, pos 000061F3F26B1CA8, size: 5 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 write new buf t:1 f:0 000061F3F26B0140, pos 000061F3F26B0477, size: 260 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http write filter: l:0 f:0 s:1199 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http copy filter: 0 "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *3 pipe write downstream done +2025/08/19 11:16:38 [debug] 398217#398217: *3 event timer: 10, old: 183391118, new: 183391120 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http upstream exit: 0000000000000000 +2025/08/19 11:16:38 [debug] 398217#398217: *3 finalize http upstream request: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 finalize http fastcgi request +2025/08/19 11:16:38 [debug] 398217#398217: *3 free rr peer 1 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 close http upstream connection: 10 +2025/08/19 11:16:38 [debug] 398217#398217: *3 free: 000061F3F268FF20, unused: 48 +2025/08/19 11:16:38 [debug] 398217#398217: *3 event timer del: 10: 183391118 +2025/08/19 11:16:38 [debug] 398217#398217: *3 reusable connection: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http upstream temp fd: -1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http output filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http copy filter: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http postpone filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" 00007FFE4490F9F0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http chunk: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 write old buf t:1 f:0 000061F3F26B1680, pos 000061F3F26B1680, size: 932 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 write old buf t:1 f:0 000061F3F26B1CA8, pos 000061F3F26B1CA8, size: 5 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 write old buf t:1 f:0 000061F3F26B0140, pos 000061F3F26B0477, size: 260 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 write old buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E5, size: 5 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http write filter: l:1 f:0 s:1204 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http write filter limit 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 writev: 1204 of 1204 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http write filter 0000000000000000 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http copy filter: 0 "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *3 http finalize request: 0, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" a:1, c:1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 set http keepalive handler +2025/08/19 11:16:38 [debug] 398217#398217: *3 http close request +2025/08/19 11:16:38 [debug] 398217#398217: *3 http log handler +2025/08/19 11:16:38 [debug] 398217#398217: *3 free: 000061F3F26B0140 +2025/08/19 11:16:38 [debug] 398217#398217: *3 free: 000061F3F26C5A20, unused: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 free: 000061F3F26BBD90, unused: 8 +2025/08/19 11:16:38 [debug] 398217#398217: *3 free: 000061F3F26B1150, unused: 645 +2025/08/19 11:16:38 [debug] 398217#398217: *3 free: 000061F3F26A90A0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 hc free: 0000000000000000 +2025/08/19 11:16:38 [debug] 398217#398217: *3 hc busy: 0000000000000000 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 tcp_nodelay +2025/08/19 11:16:38 [debug] 398217#398217: *3 reusable connection: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 event timer add: 6: 65000:183396120 +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 0 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:6 ev:2005 d:00007877C5D891E1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 http keepalive handler +2025/08/19 11:16:38 [debug] 398217#398217: *3 malloc: 000061F3F26A90A0:1024 +2025/08/19 11:16:38 [debug] 398217#398217: *3 recv: eof:1, avail:-1 +2025/08/19 11:16:38 [debug] 398217#398217: *3 recv: fd:6 0 of 1024 +2025/08/19 11:16:38 [info] 398217#398217: *3 client 127.0.0.1 closed keepalive connection +2025/08/19 11:16:38 [debug] 398217#398217: *3 close http connection: 6 +2025/08/19 11:16:38 [debug] 398217#398217: *3 event timer del: 6: 183396120 +2025/08/19 11:16:38 [debug] 398217#398217: *3 reusable connection: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 free: 000061F3F26A90A0 +2025/08/19 11:16:38 [debug] 398217#398217: *3 free: 000061F3F26A6840, unused: 120 +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 1 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: -1 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 11:16:38 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 11:16:38 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *5 accept: 127.0.0.1:37242 fd:6 +2025/08/19 11:16:38 [debug] 398217#398217: *5 event timer add: 6: 60000:183391150 +2025/08/19 11:16:38 [debug] 398217#398217: *5 reusable connection: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *5 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 29 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http wait request handler +2025/08/19 11:16:38 [debug] 398217#398217: *5 malloc: 000061F3F26A90A0:1024 +2025/08/19 11:16:38 [debug] 398217#398217: *5 recv: eof:0, avail:-1 +2025/08/19 11:16:38 [debug] 398217#398217: *5 recv: fd:6 668 of 1024 +2025/08/19 11:16:38 [debug] 398217#398217: *5 reusable connection: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http process request line +2025/08/19 11:16:38 [debug] 398217#398217: *5 http request line: "DELETE /1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef HTTP/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http uri: "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http args: "" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http exten: "" +2025/08/19 11:16:38 [debug] 398217#398217: *5 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http process request header line +2025/08/19 11:16:38 [debug] 398217#398217: *5 http header: "Host: localhost:9001" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http header: "User-Agent: curl/8.15.0" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http header: "Accept: */*" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http header: "Authorization: Nostr ewogICJpZCI6ICJwbGFjZWhvbGRlcl9pZCIsCiAgInB1YmtleSI6ICI3OWJlNjY3ZWY5ZGNiYmFjNTVhMDYyOTVjZTg3MGIwNzAyOWJmY2RiMmRjZTI4ZDk1OWYyODE1YjE2ZjgxNzk4IiwKICAia2luZCI6IDI0MjQyLAogICJjb250ZW50IjogIkRlbGV0ZSBub24tZXhpc3RlbnQiLAogICJjcmVhdGVkX2F0IjogMTc1NTYxNjU5OCwKICAidGFncyI6IFsKICAgIFsidCIsICJkZWxldGUiXSwKICAgIFsieCIsICIxMjM0NTY3ODkwYWJjZGVmMTIzNDU2Nzg5MGFiY2RlZjEyMzQ1Njc4OTBhYmNkZWYxMjM0NTY3ODkwYWJjZGVmIl0sCiAgICBbImV4cGlyYXRpb24iLCAiMTc1NTYyMDE5OCJdCiAgXSwKICAic2lnIjogInBsYWNlaG9sZGVyX3NpZ25hdHVyZSIKfQo=" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http header done +2025/08/19 11:16:38 [debug] 398217#398217: *5 event timer del: 6: 183391150 +2025/08/19 11:16:38 [debug] 398217#398217: *5 generic phase: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 rewrite phase: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *5 test location: "/health" +2025/08/19 11:16:38 [debug] 398217#398217: *5 test location: "/debug/list" +2025/08/19 11:16:38 [debug] 398217#398217: *5 test location: "/" +2025/08/19 11:16:38 [debug] 398217#398217: *5 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 11:16:38 [debug] 398217#398217: *5 using configuration "^/([a-f0-9]{64}).*$" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http cl:-1 max:104857600 +2025/08/19 11:16:38 [debug] 398217#398217: *5 rewrite phase: 3 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "DELETE" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script value: "DELETE" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script not equal +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script not equal: no +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script if +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script if: false +2025/08/19 11:16:38 [debug] 398217#398217: *5 post rewrite phase: 4 +2025/08/19 11:16:38 [debug] 398217#398217: *5 generic phase: 5 +2025/08/19 11:16:38 [debug] 398217#398217: *5 generic phase: 6 +2025/08/19 11:16:38 [debug] 398217#398217: *5 generic phase: 7 +2025/08/19 11:16:38 [debug] 398217#398217: *5 access phase: 8 +2025/08/19 11:16:38 [debug] 398217#398217: *5 access phase: 9 +2025/08/19 11:16:38 [debug] 398217#398217: *5 access phase: 10 +2025/08/19 11:16:38 [debug] 398217#398217: *5 post access phase: 11 +2025/08/19 11:16:38 [debug] 398217#398217: *5 generic phase: 12 +2025/08/19 11:16:38 [debug] 398217#398217: *5 generic phase: 13 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http init upstream, client timer: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "QUERY_STRING" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "QUERY_STRING: " +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "REQUEST_METHOD" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "DELETE" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "REQUEST_METHOD: DELETE" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "CONTENT_TYPE" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "CONTENT_TYPE: " +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "CONTENT_LENGTH" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "CONTENT_LENGTH: " +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "SCRIPT_NAME" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "SCRIPT_NAME: /1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "REQUEST_URI" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "REQUEST_URI: /1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "DOCUMENT_URI" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "DOCUMENT_URI: /1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "DOCUMENT_ROOT" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "./blobs" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "SERVER_PROTOCOL" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "HTTP/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "REQUEST_SCHEME" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "http" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "GATEWAY_INTERFACE" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "CGI/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "SERVER_SOFTWARE" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "nginx/" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "1.18.0" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "REMOTE_ADDR" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "127.0.0.1" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "REMOTE_PORT" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "37242" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "REMOTE_PORT: 37242" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "SERVER_ADDR" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "127.0.0.1" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "SERVER_PORT" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "9001" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "SERVER_NAME" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "localhost" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "REDIRECT_STATUS" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "200" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "SCRIPT_FILENAME" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script var: "./blobs" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http script copy: "/ginxsom.fcgi" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 11:16:38 [debug] 398217#398217: *5 fastcgi param: "HTTP_AUTHORIZATION: Nostr ewogICJpZCI6ICJwbGFjZWhvbGRlcl9pZCIsCiAgInB1YmtleSI6ICI3OWJlNjY3ZWY5ZGNiYmFjNTVhMDYyOTVjZTg3MGIwNzAyOWJmY2RiMmRjZTI4ZDk1OWYyODE1YjE2ZjgxNzk4IiwKICAia2luZCI6IDI0MjQyLAogICJjb250ZW50IjogIkRlbGV0ZSBub24tZXhpc3RlbnQiLAogICJjcmVhdGVkX2F0IjogMTc1NTYxNjU5OCwKICAidGFncyI6IFsKICAgIFsidCIsICJkZWxldGUiXSwKICAgIFsieCIsICIxMjM0NTY3ODkwYWJjZGVmMTIzNDU2Nzg5MGFiY2RlZjEyMzQ1Njc4OTBhYmNkZWYxMjM0NTY3ODkwYWJjZGVmIl0sCiAgICBbImV4cGlyYXRpb24iLCAiMTc1NTYyMDE5OCJdCiAgXSwKICAic2lnIjogInBsYWNlaG9sZGVyX3NpZ25hdHVyZSIKfQo=" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http cleanup add: 000061F3F26BCCE8 +2025/08/19 11:16:38 [debug] 398217#398217: *5 get rr peer, try: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *5 stream socket 10 +2025/08/19 11:16:38 [debug] 398217#398217: *5 epoll add connection: fd:10 ev:80002005 +2025/08/19 11:16:38 [debug] 398217#398217: *5 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #6 +2025/08/19 11:16:38 [debug] 398217#398217: *5 connected +2025/08/19 11:16:38 [debug] 398217#398217: *5 http upstream connect: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 posix_memalign: 000061F3F268FF20:128 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http upstream send request +2025/08/19 11:16:38 [debug] 398217#398217: *5 http upstream send request body +2025/08/19 11:16:38 [debug] 398217#398217: *5 chain writer buf fl:0 s:1224 +2025/08/19 11:16:38 [debug] 398217#398217: *5 chain writer in: 000061F3F26BCD28 +2025/08/19 11:16:38 [debug] 398217#398217: *5 writev: 1224 of 1224 +2025/08/19 11:16:38 [debug] 398217#398217: *5 chain writer out: 0000000000000000 +2025/08/19 11:16:38 [debug] 398217#398217: *5 event timer add: 10: 60000:183391150 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http finalize request: -4, "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" a:1, c:2 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http request count:2 blk:0 +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 0 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:6 ev:0004 d:00007877C5D891E0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http run request: "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http upstream check client, write event:1, "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:10 ev:0004 d:00007877C5D892C8 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http upstream request: "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http upstream dummy handler +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 2 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: 59998 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:10 ev:2005 d:00007877C5D892C8 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http upstream request: "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http upstream process header +2025/08/19 11:16:38 [debug] 398217#398217: *5 malloc: 000061F3F26B0140:4096 +2025/08/19 11:16:38 [debug] 398217#398217: *5 posix_memalign: 000061F3F26B1150:4096 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *5 recv: eof:1, avail:-1 +2025/08/19 11:16:38 [debug] 398217#398217: *5 recv: fd:10 1256 of 4096 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 06 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 04 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: C3 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 05 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record length: 1219 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header: "DEBUG: METHOD=DELETE, URI=/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header: "DEBUG: DELETE request - extracted SHA256=1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header: "DEBUG: handle_delete_request called with sha256=1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header: "LOG: [2025-08-19 11:16:38] DELETE /delete - Auth: pending - Status: 0" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header: "DEBUG: Authenticating request - method: delete, hash: 1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header: "DEBUG: Base64 event from header: ewogICJpZCI6ICJwbGFjZWhvbGRlcl9pZCIsCiAgInB1YmtleSI6ICI3OWJlNjY3ZWY5ZGNiYmFjNTVhMDYyOTVjZTg3MGIwNzAy..." +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header: "DEBUG: Parsed authorization header, extracted JSON: {" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header: " "id": "placeholder_id"," +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header: " "pubkey": "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f..." +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header: "DEBUG: Nostr event validation failed: -31 (Event has invalid ID)" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header: "Status: 401 Unauthorized" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header: "Content-Type: application/json" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi parser: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi header done +2025/08/19 11:16:38 [debug] 398217#398217: *5 HTTP/1.1 401 Unauthorized +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 15:16:38 GMT +Content-Type: application/json +Transfer-Encoding: chunked +Connection: keep-alive +DEBUG: FastCGI received request +DEBUG: METHOD=DELETE, URI=/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef +DEBUG: DELETE request - extracted SHA256=1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef +DEBUG: handle_delete_request called with sha256=1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef +LOG: [2025-08-19 11:16:38] DELETE /delete - Auth: pending - Status: 0 +DEBUG: Authenticating request - method: delete, hash: 1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef +DEBUG: Base64 event from header: ewogICJpZCI6ICJwbGFjZWhvbGRlcl9pZCIsCiAgInB1YmtleSI6ICI3OWJlNjY3ZWY5ZGNiYmFjNTVhMDYyOTVjZTg3MGIwNzAy... +DEBUG: Parsed authorization header, extracted JSON: { + "id": "placeholder_id", + "pubkey": "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f... +DEBUG: Nostr event validation failed: -31 (Event has invalid ID) + +2025/08/19 11:16:38 [debug] 398217#398217: *5 write new buf t:1 f:0 000061F3F26B1908, pos 000061F3F26B1908, size: 1082 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http write filter: l:0 f:0 s:1082 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http cacheable: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http upstream process upstream +2025/08/19 11:16:38 [debug] 398217#398217: *5 pipe read upstream: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *5 pipe preread: 289 +2025/08/19 11:16:38 [debug] 398217#398217: *5 readv: eof:1, avail:0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 readv: 1, last:2840 +2025/08/19 11:16:38 [debug] 398217#398217: *5 pipe recv chain: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 pipe buf free s:0 t:1 f:0 000061F3F26B0140, pos 000061F3F26B0507, size: 289 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 pipe length: -1 +2025/08/19 11:16:38 [debug] 398217#398217: *5 input buf #0 000061F3F26B0507 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 06 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record length: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi closed stdout +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 03 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 08 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi record length: 8 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http fastcgi sent end request +2025/08/19 11:16:38 [debug] 398217#398217: *5 input buf 000061F3F26B0507 260 +2025/08/19 11:16:38 [debug] 398217#398217: *5 pipe write downstream: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *5 pipe write downstream flush in +2025/08/19 11:16:38 [debug] 398217#398217: *5 http output filter "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http copy filter: "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http postpone filter "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" 000061F3F26B1E70 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http chunk: 260 +2025/08/19 11:16:38 [debug] 398217#398217: *5 write old buf t:1 f:0 000061F3F26B1908, pos 000061F3F26B1908, size: 1082 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 write new buf t:1 f:0 000061F3F26B1FC8, pos 000061F3F26B1FC8, size: 5 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 write new buf t:1 f:0 000061F3F26B0140, pos 000061F3F26B0507, size: 260 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http write filter: l:0 f:0 s:1349 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http copy filter: 0 "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 11:16:38 [debug] 398217#398217: *5 pipe write downstream done +2025/08/19 11:16:38 [debug] 398217#398217: *5 event timer: 10, old: 183391150, new: 183391152 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http upstream exit: 0000000000000000 +2025/08/19 11:16:38 [debug] 398217#398217: *5 finalize http upstream request: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 finalize http fastcgi request +2025/08/19 11:16:38 [debug] 398217#398217: *5 free rr peer 1 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 close http upstream connection: 10 +2025/08/19 11:16:38 [debug] 398217#398217: *5 free: 000061F3F268FF20, unused: 48 +2025/08/19 11:16:38 [debug] 398217#398217: *5 event timer del: 10: 183391150 +2025/08/19 11:16:38 [debug] 398217#398217: *5 reusable connection: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http upstream temp fd: -1 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http output filter "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http copy filter: "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http postpone filter "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" 00007FFE4490F9F0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http chunk: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 write old buf t:1 f:0 000061F3F26B1908, pos 000061F3F26B1908, size: 1082 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 write old buf t:1 f:0 000061F3F26B1FC8, pos 000061F3F26B1FC8, size: 5 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 write old buf t:1 f:0 000061F3F26B0140, pos 000061F3F26B0507, size: 260 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 write old buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E5, size: 5 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http write filter: l:1 f:0 s:1354 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http write filter limit 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 writev: 1354 of 1354 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http write filter 0000000000000000 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http copy filter: 0 "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" +2025/08/19 11:16:38 [debug] 398217#398217: *5 http finalize request: 0, "/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef?" a:1, c:1 +2025/08/19 11:16:38 [debug] 398217#398217: *5 set http keepalive handler +2025/08/19 11:16:38 [debug] 398217#398217: *5 http close request +2025/08/19 11:16:38 [debug] 398217#398217: *5 http log handler +2025/08/19 11:16:38 [debug] 398217#398217: *5 posix_memalign: 000061F3F26B2160:4096 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *5 free: 000061F3F26B0140 +2025/08/19 11:16:38 [debug] 398217#398217: *5 free: 000061F3F26C5A20, unused: 8 +2025/08/19 11:16:38 [debug] 398217#398217: *5 free: 000061F3F26BBD90, unused: 8 +2025/08/19 11:16:38 [debug] 398217#398217: *5 free: 000061F3F26B1150, unused: 32 +2025/08/19 11:16:38 [debug] 398217#398217: *5 free: 000061F3F26B2160, unused: 3877 +2025/08/19 11:16:38 [debug] 398217#398217: *5 free: 000061F3F26A90A0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 hc free: 0000000000000000 +2025/08/19 11:16:38 [debug] 398217#398217: *5 hc busy: 0000000000000000 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 tcp_nodelay +2025/08/19 11:16:38 [debug] 398217#398217: *5 reusable connection: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *5 event timer add: 6: 65000:183396152 +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 0 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:6 ev:2005 d:00007877C5D891E0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 http keepalive handler +2025/08/19 11:16:38 [debug] 398217#398217: *5 malloc: 000061F3F26A90A0:1024 +2025/08/19 11:16:38 [debug] 398217#398217: *5 recv: eof:1, avail:-1 +2025/08/19 11:16:38 [debug] 398217#398217: *5 recv: fd:6 0 of 1024 +2025/08/19 11:16:38 [info] 398217#398217: *5 client 127.0.0.1 closed keepalive connection +2025/08/19 11:16:38 [debug] 398217#398217: *5 close http connection: 6 +2025/08/19 11:16:38 [debug] 398217#398217: *5 event timer del: 6: 183396152 +2025/08/19 11:16:38 [debug] 398217#398217: *5 reusable connection: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 free: 000061F3F26A90A0 +2025/08/19 11:16:38 [debug] 398217#398217: *5 free: 000061F3F26A6840, unused: 120 +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 1 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: -1 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 11:16:38 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 11:16:38 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *7 accept: 127.0.0.1:37252 fd:6 +2025/08/19 11:16:38 [debug] 398217#398217: *7 event timer add: 6: 60000:183391184 +2025/08/19 11:16:38 [debug] 398217#398217: *7 reusable connection: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 31 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http wait request handler +2025/08/19 11:16:38 [debug] 398217#398217: *7 malloc: 000061F3F26A90A0:1024 +2025/08/19 11:16:38 [debug] 398217#398217: *7 recv: eof:0, avail:-1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 recv: fd:6 676 of 1024 +2025/08/19 11:16:38 [debug] 398217#398217: *7 reusable connection: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http process request line +2025/08/19 11:16:38 [debug] 398217#398217: *7 http request line: "DELETE /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe HTTP/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http uri: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http args: "" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http exten: "" +2025/08/19 11:16:38 [debug] 398217#398217: *7 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http process request header line +2025/08/19 11:16:38 [debug] 398217#398217: *7 http header: "Host: localhost:9001" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http header: "User-Agent: curl/8.15.0" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http header: "Accept: */*" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http header: "Authorization: Nostr ewogICJpZCI6ICJwbGFjZWhvbGRlcl9pZCIsCiAgInB1YmtleSI6ICI3OWJlNjY3ZWY5ZGNiYmFjNTVhMDYyOTVjZTg3MGIwNzAyOWJmY2RiMmRjZTI4ZDk1OWYyODE1YjE2ZjgxNzk4IiwKICAia2luZCI6IDI0MjQyLAogICJjb250ZW50IjogIkRlbGV0ZSB3aXRoIHdyb25nIHB1YmtleSIsCiAgImNyZWF0ZWRfYXQiOiAxNzU1NjE2NTk4LAogICJ0YWdzIjogWwogICAgWyJ0IiwgImRlbGV0ZSJdLAogICAgWyJ4IiwgIjcwOGQwZTgyMjZlYzE3YjA1ODU0MTdjMGVjOTM1MmNlNWY1MmMzODIwYzkwNGI3MDY2ZmUyMGIwMGYyZDljZmUiXSwKICAgIFsiZXhwaXJhdGlvbiIsICIxNzU1NjIwMTk4Il0KICBdLAogICJzaWciOiAicGxhY2Vob2xkZXJfc2lnbmF0dXJlIgp9Cg==" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http header done +2025/08/19 11:16:38 [debug] 398217#398217: *7 event timer del: 6: 183391184 +2025/08/19 11:16:38 [debug] 398217#398217: *7 generic phase: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 rewrite phase: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 test location: "/health" +2025/08/19 11:16:38 [debug] 398217#398217: *7 test location: "/debug/list" +2025/08/19 11:16:38 [debug] 398217#398217: *7 test location: "/" +2025/08/19 11:16:38 [debug] 398217#398217: *7 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 11:16:38 [debug] 398217#398217: *7 using configuration "^/([a-f0-9]{64}).*$" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http cl:-1 max:104857600 +2025/08/19 11:16:38 [debug] 398217#398217: *7 rewrite phase: 3 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "DELETE" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script value: "DELETE" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script not equal +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script not equal: no +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script if +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script if: false +2025/08/19 11:16:38 [debug] 398217#398217: *7 post rewrite phase: 4 +2025/08/19 11:16:38 [debug] 398217#398217: *7 generic phase: 5 +2025/08/19 11:16:38 [debug] 398217#398217: *7 generic phase: 6 +2025/08/19 11:16:38 [debug] 398217#398217: *7 generic phase: 7 +2025/08/19 11:16:38 [debug] 398217#398217: *7 access phase: 8 +2025/08/19 11:16:38 [debug] 398217#398217: *7 access phase: 9 +2025/08/19 11:16:38 [debug] 398217#398217: *7 access phase: 10 +2025/08/19 11:16:38 [debug] 398217#398217: *7 post access phase: 11 +2025/08/19 11:16:38 [debug] 398217#398217: *7 generic phase: 12 +2025/08/19 11:16:38 [debug] 398217#398217: *7 generic phase: 13 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http init upstream, client timer: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "QUERY_STRING" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "QUERY_STRING: " +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "REQUEST_METHOD" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "DELETE" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "REQUEST_METHOD: DELETE" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "CONTENT_TYPE" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "CONTENT_TYPE: " +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "CONTENT_LENGTH" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "CONTENT_LENGTH: " +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "SCRIPT_NAME" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "SCRIPT_NAME: /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "REQUEST_URI" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "REQUEST_URI: /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "DOCUMENT_URI" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "DOCUMENT_URI: /708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "DOCUMENT_ROOT" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "./blobs" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "SERVER_PROTOCOL" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "HTTP/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "REQUEST_SCHEME" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "http" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "GATEWAY_INTERFACE" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "CGI/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "SERVER_SOFTWARE" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "nginx/" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "1.18.0" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "REMOTE_ADDR" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "127.0.0.1" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "REMOTE_PORT" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "37252" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "REMOTE_PORT: 37252" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "SERVER_ADDR" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "127.0.0.1" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "SERVER_PORT" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "9001" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "SERVER_NAME" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "localhost" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "REDIRECT_STATUS" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "200" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "SCRIPT_FILENAME" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script var: "./blobs" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http script copy: "/ginxsom.fcgi" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 11:16:38 [debug] 398217#398217: *7 fastcgi param: "HTTP_AUTHORIZATION: Nostr ewogICJpZCI6ICJwbGFjZWhvbGRlcl9pZCIsCiAgInB1YmtleSI6ICI3OWJlNjY3ZWY5ZGNiYmFjNTVhMDYyOTVjZTg3MGIwNzAyOWJmY2RiMmRjZTI4ZDk1OWYyODE1YjE2ZjgxNzk4IiwKICAia2luZCI6IDI0MjQyLAogICJjb250ZW50IjogIkRlbGV0ZSB3aXRoIHdyb25nIHB1YmtleSIsCiAgImNyZWF0ZWRfYXQiOiAxNzU1NjE2NTk4LAogICJ0YWdzIjogWwogICAgWyJ0IiwgImRlbGV0ZSJdLAogICAgWyJ4IiwgIjcwOGQwZTgyMjZlYzE3YjA1ODU0MTdjMGVjOTM1MmNlNWY1MmMzODIwYzkwNGI3MDY2ZmUyMGIwMGYyZDljZmUiXSwKICAgIFsiZXhwaXJhdGlvbiIsICIxNzU1NjIwMTk4Il0KICBdLAogICJzaWciOiAicGxhY2Vob2xkZXJfc2lnbmF0dXJlIgp9Cg==" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http cleanup add: 000061F3F26BCCF0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 get rr peer, try: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 stream socket 10 +2025/08/19 11:16:38 [debug] 398217#398217: *7 epoll add connection: fd:10 ev:80002005 +2025/08/19 11:16:38 [debug] 398217#398217: *7 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #8 +2025/08/19 11:16:38 [debug] 398217#398217: *7 connected +2025/08/19 11:16:38 [debug] 398217#398217: *7 http upstream connect: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 posix_memalign: 000061F3F268FF20:128 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http upstream send request +2025/08/19 11:16:38 [debug] 398217#398217: *7 http upstream send request body +2025/08/19 11:16:38 [debug] 398217#398217: *7 chain writer buf fl:0 s:1232 +2025/08/19 11:16:38 [debug] 398217#398217: *7 chain writer in: 000061F3F26BCD30 +2025/08/19 11:16:38 [debug] 398217#398217: *7 writev: 1232 of 1232 +2025/08/19 11:16:38 [debug] 398217#398217: *7 chain writer out: 0000000000000000 +2025/08/19 11:16:38 [debug] 398217#398217: *7 event timer add: 10: 60000:183391184 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http finalize request: -4, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" a:1, c:2 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http request count:2 blk:0 +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 0 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:6 ev:0004 d:00007877C5D891E1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http run request: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http upstream check client, write event:1, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:10 ev:0004 d:00007877C5D892C9 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http upstream request: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http upstream dummy handler +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 2 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: 59998 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:10 ev:2005 d:00007877C5D892C9 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http upstream request: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http upstream process header +2025/08/19 11:16:38 [debug] 398217#398217: *7 malloc: 000061F3F26B0140:4096 +2025/08/19 11:16:38 [debug] 398217#398217: *7 posix_memalign: 000061F3F26B1150:4096 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *7 recv: eof:1, avail:-1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 recv: fd:10 1256 of 4096 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 06 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 04 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: C3 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 05 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record length: 1219 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header: "DEBUG: METHOD=DELETE, URI=/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header: "DEBUG: DELETE request - extracted SHA256=708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header: "DEBUG: handle_delete_request called with sha256=708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header: "LOG: [2025-08-19 11:16:38] DELETE /delete - Auth: pending - Status: 0" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header: "DEBUG: Authenticating request - method: delete, hash: 708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header: "DEBUG: Base64 event from header: ewogICJpZCI6ICJwbGFjZWhvbGRlcl9pZCIsCiAgInB1YmtleSI6ICI3OWJlNjY3ZWY5ZGNiYmFjNTVhMDYyOTVjZTg3MGIwNzAy..." +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header: "DEBUG: Parsed authorization header, extracted JSON: {" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header: " "id": "placeholder_id"," +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header: " "pubkey": "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f..." +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header: "DEBUG: Nostr event validation failed: -31 (Event has invalid ID)" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header: "Status: 401 Unauthorized" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header: "Content-Type: application/json" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi parser: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi header done +2025/08/19 11:16:38 [debug] 398217#398217: *7 HTTP/1.1 401 Unauthorized +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 15:16:38 GMT +Content-Type: application/json +Transfer-Encoding: chunked +Connection: keep-alive +DEBUG: FastCGI received request +DEBUG: METHOD=DELETE, URI=/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe +DEBUG: DELETE request - extracted SHA256=708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe +DEBUG: handle_delete_request called with sha256=708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe +LOG: [2025-08-19 11:16:38] DELETE /delete - Auth: pending - Status: 0 +DEBUG: Authenticating request - method: delete, hash: 708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe +DEBUG: Base64 event from header: ewogICJpZCI6ICJwbGFjZWhvbGRlcl9pZCIsCiAgInB1YmtleSI6ICI3OWJlNjY3ZWY5ZGNiYmFjNTVhMDYyOTVjZTg3MGIwNzAy... +DEBUG: Parsed authorization header, extracted JSON: { + "id": "placeholder_id", + "pubkey": "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f... +DEBUG: Nostr event validation failed: -31 (Event has invalid ID) + +2025/08/19 11:16:38 [debug] 398217#398217: *7 write new buf t:1 f:0 000061F3F26B1908, pos 000061F3F26B1908, size: 1082 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http write filter: l:0 f:0 s:1082 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http cacheable: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http upstream process upstream +2025/08/19 11:16:38 [debug] 398217#398217: *7 pipe read upstream: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 pipe preread: 289 +2025/08/19 11:16:38 [debug] 398217#398217: *7 readv: eof:1, avail:0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 readv: 1, last:2840 +2025/08/19 11:16:38 [debug] 398217#398217: *7 pipe recv chain: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 pipe buf free s:0 t:1 f:0 000061F3F26B0140, pos 000061F3F26B0507, size: 289 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 pipe length: -1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 input buf #0 000061F3F26B0507 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 06 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record length: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi closed stdout +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 03 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 01 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 08 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record byte: 00 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi record length: 8 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http fastcgi sent end request +2025/08/19 11:16:38 [debug] 398217#398217: *7 input buf 000061F3F26B0507 260 +2025/08/19 11:16:38 [debug] 398217#398217: *7 pipe write downstream: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 pipe write downstream flush in +2025/08/19 11:16:38 [debug] 398217#398217: *7 http output filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http copy filter: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http postpone filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" 000061F3F26B1E70 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http chunk: 260 +2025/08/19 11:16:38 [debug] 398217#398217: *7 write old buf t:1 f:0 000061F3F26B1908, pos 000061F3F26B1908, size: 1082 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 write new buf t:1 f:0 000061F3F26B1FC8, pos 000061F3F26B1FC8, size: 5 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 write new buf t:1 f:0 000061F3F26B0140, pos 000061F3F26B0507, size: 260 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http write filter: l:0 f:0 s:1349 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http copy filter: 0 "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *7 pipe write downstream done +2025/08/19 11:16:38 [debug] 398217#398217: *7 event timer: 10, old: 183391184, new: 183391186 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http upstream exit: 0000000000000000 +2025/08/19 11:16:38 [debug] 398217#398217: *7 finalize http upstream request: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 finalize http fastcgi request +2025/08/19 11:16:38 [debug] 398217#398217: *7 free rr peer 1 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 close http upstream connection: 10 +2025/08/19 11:16:38 [debug] 398217#398217: *7 free: 000061F3F268FF20, unused: 48 +2025/08/19 11:16:38 [debug] 398217#398217: *7 event timer del: 10: 183391184 +2025/08/19 11:16:38 [debug] 398217#398217: *7 reusable connection: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http upstream temp fd: -1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http output filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http copy filter: "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http postpone filter "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" 00007FFE4490F9F0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http chunk: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 write old buf t:1 f:0 000061F3F26B1908, pos 000061F3F26B1908, size: 1082 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 write old buf t:1 f:0 000061F3F26B1FC8, pos 000061F3F26B1FC8, size: 5 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 write old buf t:1 f:0 000061F3F26B0140, pos 000061F3F26B0507, size: 260 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 write old buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E5, size: 5 file: 0, size: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http write filter: l:1 f:0 s:1354 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http write filter limit 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 writev: 1354 of 1354 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http write filter 0000000000000000 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http copy filter: 0 "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" +2025/08/19 11:16:38 [debug] 398217#398217: *7 http finalize request: 0, "/708d0e8226ec17b0585417c0ec9352ce5f52c3820c904b7066fe20b00f2d9cfe?" a:1, c:1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 set http keepalive handler +2025/08/19 11:16:38 [debug] 398217#398217: *7 http close request +2025/08/19 11:16:38 [debug] 398217#398217: *7 http log handler +2025/08/19 11:16:38 [debug] 398217#398217: *7 posix_memalign: 000061F3F26B2160:4096 @16 +2025/08/19 11:16:38 [debug] 398217#398217: *7 free: 000061F3F26B0140 +2025/08/19 11:16:38 [debug] 398217#398217: *7 free: 000061F3F26C5A20, unused: 8 +2025/08/19 11:16:38 [debug] 398217#398217: *7 free: 000061F3F26BBD90, unused: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 free: 000061F3F26B1150, unused: 32 +2025/08/19 11:16:38 [debug] 398217#398217: *7 free: 000061F3F26B2160, unused: 3877 +2025/08/19 11:16:38 [debug] 398217#398217: *7 free: 000061F3F26A90A0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 hc free: 0000000000000000 +2025/08/19 11:16:38 [debug] 398217#398217: *7 hc busy: 0000000000000000 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 tcp_nodelay +2025/08/19 11:16:38 [debug] 398217#398217: *7 reusable connection: 1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 event timer add: 6: 65000:183396186 +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 0 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 11:16:38 [debug] 398217#398217: epoll: fd:6 ev:2005 d:00007877C5D891E1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 http keepalive handler +2025/08/19 11:16:38 [debug] 398217#398217: *7 malloc: 000061F3F26A90A0:1024 +2025/08/19 11:16:38 [debug] 398217#398217: *7 recv: eof:1, avail:-1 +2025/08/19 11:16:38 [debug] 398217#398217: *7 recv: fd:6 0 of 1024 +2025/08/19 11:16:38 [info] 398217#398217: *7 client 127.0.0.1 closed keepalive connection +2025/08/19 11:16:38 [debug] 398217#398217: *7 close http connection: 6 +2025/08/19 11:16:38 [debug] 398217#398217: *7 event timer del: 6: 183396186 +2025/08/19 11:16:38 [debug] 398217#398217: *7 reusable connection: 0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 free: 000061F3F26A90A0 +2025/08/19 11:16:38 [debug] 398217#398217: *7 free: 000061F3F26A6840, unused: 120 +2025/08/19 11:16:38 [debug] 398217#398217: timer delta: 2 +2025/08/19 11:16:38 [debug] 398217#398217: worker cycle +2025/08/19 11:16:38 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:33:51 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:33:51 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:33:51 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:33:51 [debug] 398217#398217: *9 accept: 127.0.0.1:57030 fd:6 +2025/08/19 13:33:51 [debug] 398217#398217: *9 event timer add: 6: 60000:191624727 +2025/08/19 13:33:51 [debug] 398217#398217: *9 reusable connection: 1 +2025/08/19 13:33:51 [debug] 398217#398217: *9 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:33:51 [debug] 398217#398217: timer delta: 8233539 +2025/08/19 13:33:51 [debug] 398217#398217: worker cycle +2025/08/19 13:33:51 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:33:51 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E0 +2025/08/19 13:33:51 [debug] 398217#398217: *9 http wait request handler +2025/08/19 13:33:51 [debug] 398217#398217: *9 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:33:51 [debug] 398217#398217: *9 recv: eof:0, avail:-1 +2025/08/19 13:33:51 [debug] 398217#398217: *9 recv: fd:6 84 of 1024 +2025/08/19 13:33:51 [debug] 398217#398217: *9 reusable connection: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *9 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:33:51 [debug] 398217#398217: *9 http process request line +2025/08/19 13:33:51 [debug] 398217#398217: *9 http request line: "GET /health HTTP/1.1" +2025/08/19 13:33:51 [debug] 398217#398217: *9 http uri: "/health" +2025/08/19 13:33:51 [debug] 398217#398217: *9 http args: "" +2025/08/19 13:33:51 [debug] 398217#398217: *9 http exten: "" +2025/08/19 13:33:51 [debug] 398217#398217: *9 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:33:51 [debug] 398217#398217: *9 http process request header line +2025/08/19 13:33:51 [debug] 398217#398217: *9 http header: "Host: localhost:9001" +2025/08/19 13:33:51 [debug] 398217#398217: *9 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:33:51 [debug] 398217#398217: *9 http header: "Accept: */*" +2025/08/19 13:33:51 [debug] 398217#398217: *9 http header done +2025/08/19 13:33:51 [debug] 398217#398217: *9 event timer del: 6: 191624727 +2025/08/19 13:33:51 [debug] 398217#398217: *9 generic phase: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *9 rewrite phase: 1 +2025/08/19 13:33:51 [debug] 398217#398217: *9 test location: "/health" +2025/08/19 13:33:51 [debug] 398217#398217: *9 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:33:51 [debug] 398217#398217: *9 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 13:33:51 [debug] 398217#398217: *9 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 13:33:51 [debug] 398217#398217: *9 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 13:33:51 [debug] 398217#398217: *9 using configuration "/health" +2025/08/19 13:33:51 [debug] 398217#398217: *9 http cl:-1 max:104857600 +2025/08/19 13:33:51 [debug] 398217#398217: *9 rewrite phase: 3 +2025/08/19 13:33:51 [debug] 398217#398217: *9 http set discard body +2025/08/19 13:33:51 [debug] 398217#398217: *9 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:33:51 GMT +Content-Type: application/octet-stream +Content-Length: 3 +Connection: keep-alive +Content-Type: text/plain + +2025/08/19 13:33:51 [debug] 398217#398217: *9 write new buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 196 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *9 http write filter: l:0 f:0 s:196 +2025/08/19 13:33:51 [debug] 398217#398217: *9 http output filter "/health?" +2025/08/19 13:33:51 [debug] 398217#398217: *9 http copy filter: "/health?" +2025/08/19 13:33:51 [debug] 398217#398217: *9 http postpone filter "/health?" 00007FFE4490F940 +2025/08/19 13:33:51 [debug] 398217#398217: *9 write old buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 196 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *9 write new buf t:0 f:0 0000000000000000, pos 000061F3F26E3B32, size: 3 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *9 http write filter: l:1 f:0 s:199 +2025/08/19 13:33:51 [debug] 398217#398217: *9 http write filter limit 0 +2025/08/19 13:33:51 [debug] 398217#398217: *9 writev: 199 of 199 +2025/08/19 13:33:51 [debug] 398217#398217: *9 http write filter 0000000000000000 +2025/08/19 13:33:51 [debug] 398217#398217: *9 http copy filter: 0 "/health?" +2025/08/19 13:33:51 [debug] 398217#398217: *9 http finalize request: 0, "/health?" a:1, c:1 +2025/08/19 13:33:51 [debug] 398217#398217: *9 set http keepalive handler +2025/08/19 13:33:51 [debug] 398217#398217: *9 http close request +2025/08/19 13:33:51 [debug] 398217#398217: *9 http log handler +2025/08/19 13:33:51 [debug] 398217#398217: *9 free: 000061F3F26C5A20, unused: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *9 free: 000061F3F26BBD90, unused: 2736 +2025/08/19 13:33:51 [debug] 398217#398217: *9 free: 000061F3F26A90A0 +2025/08/19 13:33:51 [debug] 398217#398217: *9 hc free: 0000000000000000 +2025/08/19 13:33:51 [debug] 398217#398217: *9 hc busy: 0000000000000000 0 +2025/08/19 13:33:51 [debug] 398217#398217: *9 tcp_nodelay +2025/08/19 13:33:51 [debug] 398217#398217: *9 reusable connection: 1 +2025/08/19 13:33:51 [debug] 398217#398217: *9 event timer add: 6: 65000:191629727 +2025/08/19 13:33:51 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:33:51 [debug] 398217#398217: worker cycle +2025/08/19 13:33:51 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:33:51 [debug] 398217#398217: epoll: fd:6 ev:2001 d:00007877C5D891E0 +2025/08/19 13:33:51 [debug] 398217#398217: *9 http keepalive handler +2025/08/19 13:33:51 [debug] 398217#398217: *9 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:33:51 [debug] 398217#398217: *9 recv: eof:1, avail:-1 +2025/08/19 13:33:51 [debug] 398217#398217: *9 recv: fd:6 0 of 1024 +2025/08/19 13:33:51 [info] 398217#398217: *9 client 127.0.0.1 closed keepalive connection +2025/08/19 13:33:51 [debug] 398217#398217: *9 close http connection: 6 +2025/08/19 13:33:51 [debug] 398217#398217: *9 event timer del: 6: 191629727 +2025/08/19 13:33:51 [debug] 398217#398217: *9 reusable connection: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *9 free: 000061F3F26A90A0 +2025/08/19 13:33:51 [debug] 398217#398217: *9 free: 000061F3F26A6840, unused: 136 +2025/08/19 13:33:51 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:33:51 [debug] 398217#398217: worker cycle +2025/08/19 13:33:51 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:33:51 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:33:51 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:33:51 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:33:51 [debug] 398217#398217: *10 accept: 127.0.0.1:57034 fd:6 +2025/08/19 13:33:51 [debug] 398217#398217: *10 event timer add: 6: 60000:191625015 +2025/08/19 13:33:51 [debug] 398217#398217: *10 reusable connection: 1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:33:51 [debug] 398217#398217: timer delta: 287 +2025/08/19 13:33:51 [debug] 398217#398217: worker cycle +2025/08/19 13:33:51 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:33:51 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http wait request handler +2025/08/19 13:33:51 [debug] 398217#398217: *10 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:33:51 [debug] 398217#398217: *10 recv: eof:0, avail:-1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 recv: fd:6 1024 of 1024 +2025/08/19 13:33:51 [debug] 398217#398217: *10 recv: avail:112 +2025/08/19 13:33:51 [debug] 398217#398217: *10 reusable connection: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http process request line +2025/08/19 13:33:51 [debug] 398217#398217: *10 http request line: "PUT /upload HTTP/1.1" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http uri: "/upload" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http args: "" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http exten: "" +2025/08/19 13:33:51 [debug] 398217#398217: *10 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http process request header line +2025/08/19 13:33:51 [debug] 398217#398217: *10 http header: "Host: localhost:9001" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http header: "Accept: */*" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIzZTcwYzgzNDZkNmEwOTY1ZTY4MTI4NzBmZWJiMGZiNDZjZjY1Y2M0MzI5YjgwMDQ0YTM3ZDk2ODMyNGRlOTY3IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjQ4MzEsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJmZmFkYjBkNDU4ODUwNjM5Mzg1ODRjMGIyMzczYmM4MTU0M2VjYzRjODcwM2IzNzZiNmRlYTRjZjdiZTQxMDE3Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYyODQzMSJdXSwiY29udGVudCI6IiIsInNpZyI6Ijc4ODRkODRiYTIyNDAzZjMxODJjYjUwMGYyZjUyOTAwZmJhNWFiODM5OTVmMGYyOGEyY2RjZmVhZTgyMzE2MGM3YjllYzBjYWNmYzgyMmNhM2E0MjFmNTcwNmFmOGQzMzY3ZDVmMzJlNmFjMWZlY2M4OTZkZDgwZTI5N2Q1OTgwIn0=" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http header: "Content-Type: text/plain" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http header: "Content-Disposition: attachment; filename="test_blob_1755624831.txt"" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http header: "Content-Length: 296" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http header done +2025/08/19 13:33:51 [debug] 398217#398217: *10 event timer del: 6: 191625015 +2025/08/19 13:33:51 [debug] 398217#398217: *10 generic phase: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 rewrite phase: 1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 test location: "/health" +2025/08/19 13:33:51 [debug] 398217#398217: *10 test location: "/upload" +2025/08/19 13:33:51 [debug] 398217#398217: *10 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:33:51 [debug] 398217#398217: *10 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 13:33:51 [debug] 398217#398217: *10 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 13:33:51 [debug] 398217#398217: *10 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 13:33:51 [debug] 398217#398217: *10 using configuration "/upload" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http cl:296 max:104857600 +2025/08/19 13:33:51 [debug] 398217#398217: *10 rewrite phase: 3 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "PUT" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script regex: "^(PUT)$" +2025/08/19 13:33:51 [notice] 398217#398217: *10 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script if +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script if: false +2025/08/19 13:33:51 [debug] 398217#398217: *10 post rewrite phase: 4 +2025/08/19 13:33:51 [debug] 398217#398217: *10 generic phase: 5 +2025/08/19 13:33:51 [debug] 398217#398217: *10 generic phase: 6 +2025/08/19 13:33:51 [debug] 398217#398217: *10 generic phase: 7 +2025/08/19 13:33:51 [debug] 398217#398217: *10 access phase: 8 +2025/08/19 13:33:51 [debug] 398217#398217: *10 access phase: 9 +2025/08/19 13:33:51 [debug] 398217#398217: *10 access phase: 10 +2025/08/19 13:33:51 [debug] 398217#398217: *10 post access phase: 11 +2025/08/19 13:33:51 [debug] 398217#398217: *10 generic phase: 12 +2025/08/19 13:33:51 [debug] 398217#398217: *10 generic phase: 13 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http client request body preread 184 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http request body content length filter +2025/08/19 13:33:51 [debug] 398217#398217: *10 http body new buf t:1 f:0 000061F3F26A93E8, pos 000061F3F26A93E8, size: 184 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http read client request body +2025/08/19 13:33:51 [debug] 398217#398217: *10 recv: eof:0, avail:112 +2025/08/19 13:33:51 [debug] 398217#398217: *10 recv: fd:6 112 of 112 +2025/08/19 13:33:51 [debug] 398217#398217: *10 recv: avail:0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http client request body recv 112 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http body new buf t:1 f:0 000061F3F26BC820, pos 000061F3F26BC820, size: 112 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http client request body rest 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http init upstream, client timer: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 13:33:51 [debug] 398217#398217: *10 posix_memalign: 000061F3F26B0140:4096 @16 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "QUERY_STRING" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "QUERY_STRING: " +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "REQUEST_METHOD" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "PUT" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "CONTENT_TYPE" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "text/plain" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "CONTENT_LENGTH" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "296" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "SCRIPT_NAME" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "/upload" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "REQUEST_URI" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "/upload" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "DOCUMENT_URI" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "/upload" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "DOCUMENT_ROOT" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "./blobs" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "SERVER_PROTOCOL" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "HTTP/1.1" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "REQUEST_SCHEME" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "http" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "GATEWAY_INTERFACE" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "CGI/1.1" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "SERVER_SOFTWARE" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "nginx/" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "1.18.0" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "REMOTE_ADDR" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "127.0.0.1" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "REMOTE_PORT" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "57034" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "REMOTE_PORT: 57034" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "SERVER_ADDR" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "127.0.0.1" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "SERVER_PORT" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "9001" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "SERVER_NAME" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "localhost" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "REDIRECT_STATUS" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "200" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "SCRIPT_FILENAME" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script var: "./blobs" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http script copy: "/ginxsom.fcgi" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIzZTcwYzgzNDZkNmEwOTY1ZTY4MTI4NzBmZWJiMGZiNDZjZjY1Y2M0MzI5YjgwMDQ0YTM3ZDk2ODMyNGRlOTY3IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjQ4MzEsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJmZmFkYjBkNDU4ODUwNjM5Mzg1ODRjMGIyMzczYmM4MTU0M2VjYzRjODcwM2IzNzZiNmRlYTRjZjdiZTQxMDE3Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYyODQzMSJdXSwiY29udGVudCI6IiIsInNpZyI6Ijc4ODRkODRiYTIyNDAzZjMxODJjYjUwMGYyZjUyOTAwZmJhNWFiODM5OTVmMGYyOGEyY2RjZmVhZTgyMzE2MGM3YjllYzBjYWNmYzgyMmNhM2E0MjFmNTcwNmFmOGQzMzY3ZDVmMzJlNmFjMWZlY2M4OTZkZDgwZTI5N2Q1OTgwIn0=" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755624831.txt"" +2025/08/19 13:33:51 [debug] 398217#398217: *10 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http cleanup add: 000061F3F26BCB70 +2025/08/19 13:33:51 [debug] 398217#398217: *10 get rr peer, try: 1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 stream socket 10 +2025/08/19 13:33:51 [debug] 398217#398217: *10 epoll add connection: fd:10 ev:80002005 +2025/08/19 13:33:51 [debug] 398217#398217: *10 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #11 +2025/08/19 13:33:51 [debug] 398217#398217: *10 connected +2025/08/19 13:33:51 [debug] 398217#398217: *10 http upstream connect: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 posix_memalign: 000061F3F268FF20:128 @16 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http upstream send request +2025/08/19 13:33:51 [debug] 398217#398217: *10 http upstream send request body +2025/08/19 13:33:51 [debug] 398217#398217: *10 chain writer buf fl:0 s:1304 +2025/08/19 13:33:51 [debug] 398217#398217: *10 chain writer buf fl:0 s:184 +2025/08/19 13:33:51 [debug] 398217#398217: *10 chain writer buf fl:0 s:8 +2025/08/19 13:33:51 [debug] 398217#398217: *10 chain writer buf fl:0 s:112 +2025/08/19 13:33:51 [debug] 398217#398217: *10 chain writer buf fl:0 s:8 +2025/08/19 13:33:51 [debug] 398217#398217: *10 chain writer in: 000061F3F26BCC00 +2025/08/19 13:33:51 [debug] 398217#398217: *10 writev: 1616 of 1616 +2025/08/19 13:33:51 [debug] 398217#398217: *10 chain writer out: 0000000000000000 +2025/08/19 13:33:51 [debug] 398217#398217: *10 event timer add: 10: 60000:191625016 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http request count:2 blk:0 +2025/08/19 13:33:51 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:33:51 [debug] 398217#398217: worker cycle +2025/08/19 13:33:51 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:33:51 [debug] 398217#398217: epoll: fd:6 ev:0004 d:00007877C5D891E1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http run request: "/upload?" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http upstream check client, write event:1, "/upload" +2025/08/19 13:33:51 [debug] 398217#398217: epoll: fd:10 ev:0004 d:00007877C5D892C8 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http upstream request: "/upload?" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http upstream dummy handler +2025/08/19 13:33:51 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:33:51 [debug] 398217#398217: worker cycle +2025/08/19 13:33:51 [debug] 398217#398217: epoll timer: 59999 +2025/08/19 13:33:51 [debug] 398217#398217: epoll: fd:10 ev:2005 d:00007877C5D892C8 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http upstream request: "/upload?" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http upstream process header +2025/08/19 13:33:51 [debug] 398217#398217: *10 malloc: 000061F3F26B1150:4096 +2025/08/19 13:33:51 [debug] 398217#398217: *10 recv: eof:1, avail:-1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 recv: fd:10 1664 of 4096 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 01 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 06 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 00 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 01 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 06 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 5D +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 03 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 00 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record length: 1629 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header: "LOG: [2025-08-19 13:33:51] PUT /upload - Auth: pending - Status: 0" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIzZTcwYzgzNDZkNmEwOTY1ZTY4MTI4NzBmZWJiMGZiNDZjZjY1Y2M0MzI5YjgwMDQ0YTM3ZDk2ODMyNGRlOTY3IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjQ4MzEsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJmZmFkYjBkNDU4ODUwNjM5Mzg1ODRjMGIyMzczYmM4MTU0M2VjYzRjODcwM2IzNzZiNmRlYTRjZjdiZTQxMDE3Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYyODQzMSJdXSwiY29udGVudCI6IiIsInNpZyI6Ijc4ODRkODRiYTIyNDAzZjMxODJjYjUwMGYyZjUyOTAwZmJhNWFiODM5OTVmMGYyOGEyY2RjZmVhZTgyMzE2MGM3YjllYzBjYWNmYzgyMmNhM2E0MjFmNTcwNmFmOGQzMzY3ZDVmMzJlNmFjMWZlY2M4OTZkZDgwZTI5N2Q1OTgwIn0=" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header: "DEBUG: Authenticating request - method: PUT, hash: null" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header: "DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiIzZTcwYzgzNDZkNmEwOTY1ZTY4MTI4NzBmZWJiMGZiNDZjZjY1Y2M0MzI5YjgwMDQ0YTM3ZDk2..." +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header: "DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"3e70c8346d6a0965e6812870febb0fb46cf65cc4329b80044a37d968324de967","pubkey":"79be..." +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header: "DEBUG: Nostr event validation failed: -32 (Event has invalid public key)" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header: "Status: 401 Unauthorized" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header: "Content-Type: application/json" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi parser: 1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi header done +2025/08/19 13:33:51 [debug] 398217#398217: *10 posix_memalign: 000061F3F26B2160:4096 @16 +2025/08/19 13:33:51 [debug] 398217#398217: *10 HTTP/1.1 401 Unauthorized +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:33:51 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 +LOG: [2025-08-19 13:33:51] PUT /upload - Auth: pending - Status: 0 +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIzZTcwYzgzNDZkNmEwOTY1ZTY4MTI4NzBmZWJiMGZiNDZjZjY1Y2M0MzI5YjgwMDQ0YTM3ZDk2ODMyNGRlOTY3IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjQ4MzEsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJmZmFkYjBkNDU4ODUwNjM5Mzg1ODRjMGIyMzczYmM4MTU0M2VjYzRjODcwM2IzNzZiNmRlYTRjZjdiZTQxMDE3Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYyODQzMSJdXSwiY29udGVudCI6IiIsInNpZyI6Ijc4ODRkODRiYTIyNDAzZjMxODJjYjUwMGYyZjUyOTAwZmJhNWFiODM5OTVmMGYyOGEyY2RjZmVhZTgyMzE2MGM3YjllYzBjYWNmYzgyMmNhM2E0MjFmNTcwNmFmOGQzMzY3ZDVmMzJlNmFjMWZlY2M4OTZkZDgwZTI5N2Q1OTgwIn0= +DEBUG: Authenticating request - method: PUT, hash: null +DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiIzZTcwYzgzNDZkNmEwOTY1ZTY4MTI4NzBmZWJiMGZiNDZjZjY1Y2M0MzI5YjgwMDQ0YTM3ZDk2... +DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"3e70c8346d6a0965e6812870febb0fb46cf65cc4329b80044a37d968324de967","pubkey":"79be... +DEBUG: Nostr event validation failed: -32 (Event has invalid public key) + +2025/08/19 13:33:51 [debug] 398217#398217: *10 write new buf t:1 f:0 000061F3F26B2180, pos 000061F3F26B2180, size: 1493 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http write filter: l:0 f:0 s:1493 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http write filter limit 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 writev: 1493 of 1493 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http write filter 0000000000000000 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http cacheable: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http upstream process upstream +2025/08/19 13:33:51 [debug] 398217#398217: *10 pipe read upstream: 1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 pipe preread: 284 +2025/08/19 13:33:51 [debug] 398217#398217: *10 readv: eof:1, avail:0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 readv: 1, last:2432 +2025/08/19 13:33:51 [debug] 398217#398217: *10 pipe recv chain: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 pipe buf free s:0 t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 284 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 pipe length: -1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 input buf #0 000061F3F26B16B4 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 01 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 06 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 00 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 01 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 00 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 00 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 00 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 00 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record length: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi closed stdout +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 01 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 03 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 00 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 01 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 00 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 08 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 00 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record byte: 00 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi record length: 8 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http fastcgi sent end request +2025/08/19 13:33:51 [debug] 398217#398217: *10 input buf 000061F3F26B16B4 257 +2025/08/19 13:33:51 [debug] 398217#398217: *10 pipe write downstream: 1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 pipe write downstream flush in +2025/08/19 13:33:51 [debug] 398217#398217: *10 http output filter "/upload?" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http copy filter: "/upload?" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http postpone filter "/upload?" 000061F3F26BCBE0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http chunk: 257 +2025/08/19 13:33:51 [debug] 398217#398217: *10 write new buf t:1 f:0 000061F3F26B10F8, pos 000061F3F26B10F8, size: 5 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 write new buf t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 257 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http write filter: l:0 f:0 s:264 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http copy filter: 0 "/upload?" +2025/08/19 13:33:51 [debug] 398217#398217: *10 pipe write downstream done +2025/08/19 13:33:51 [debug] 398217#398217: *10 event timer: 10, old: 191625016, new: 191625017 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http upstream exit: 0000000000000000 +2025/08/19 13:33:51 [debug] 398217#398217: *10 finalize http upstream request: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 finalize http fastcgi request +2025/08/19 13:33:51 [debug] 398217#398217: *10 free rr peer 1 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 close http upstream connection: 10 +2025/08/19 13:33:51 [debug] 398217#398217: *10 free: 000061F3F268FF20, unused: 48 +2025/08/19 13:33:51 [debug] 398217#398217: *10 event timer del: 10: 191625016 +2025/08/19 13:33:51 [debug] 398217#398217: *10 reusable connection: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http upstream temp fd: -1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http output filter "/upload?" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http copy filter: "/upload?" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http postpone filter "/upload?" 00007FFE4490F9F0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http chunk: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 write old buf t:1 f:0 000061F3F26B10F8, pos 000061F3F26B10F8, size: 5 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 write old buf t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 257 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 write old buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E5, size: 5 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http write filter: l:1 f:0 s:269 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http write filter limit 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 writev: 269 of 269 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http write filter 0000000000000000 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http copy filter: 0 "/upload?" +2025/08/19 13:33:51 [debug] 398217#398217: *10 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 set http keepalive handler +2025/08/19 13:33:51 [debug] 398217#398217: *10 http close request +2025/08/19 13:33:51 [debug] 398217#398217: *10 http log handler +2025/08/19 13:33:51 [debug] 398217#398217: *10 free: 000061F3F26B1150 +2025/08/19 13:33:51 [debug] 398217#398217: *10 free: 000061F3F26C5A20, unused: 3 +2025/08/19 13:33:51 [debug] 398217#398217: *10 free: 000061F3F26BBD90, unused: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 free: 000061F3F26B0140, unused: 54 +2025/08/19 13:33:51 [debug] 398217#398217: *10 free: 000061F3F26B2160, unused: 2202 +2025/08/19 13:33:51 [debug] 398217#398217: *10 free: 000061F3F26A90A0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 hc free: 0000000000000000 +2025/08/19 13:33:51 [debug] 398217#398217: *10 hc busy: 0000000000000000 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 tcp_nodelay +2025/08/19 13:33:51 [debug] 398217#398217: *10 reusable connection: 1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 event timer add: 6: 65000:191630017 +2025/08/19 13:33:51 [debug] 398217#398217: *10 post event 000061F3F26F7760 +2025/08/19 13:33:51 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:33:51 [debug] 398217#398217: posted event 000061F3F26F7760 +2025/08/19 13:33:51 [debug] 398217#398217: *10 delete posted event 000061F3F26F7760 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http keepalive handler +2025/08/19 13:33:51 [debug] 398217#398217: *10 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:33:51 [debug] 398217#398217: *10 recv: eof:0, avail:0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 free: 000061F3F26A90A0 +2025/08/19 13:33:51 [debug] 398217#398217: worker cycle +2025/08/19 13:33:51 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:33:51 [debug] 398217#398217: epoll: fd:6 ev:2005 d:00007877C5D891E1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 http keepalive handler +2025/08/19 13:33:51 [debug] 398217#398217: *10 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:33:51 [debug] 398217#398217: *10 recv: eof:1, avail:-1 +2025/08/19 13:33:51 [debug] 398217#398217: *10 recv: fd:6 0 of 1024 +2025/08/19 13:33:51 [info] 398217#398217: *10 client 127.0.0.1 closed keepalive connection +2025/08/19 13:33:51 [debug] 398217#398217: *10 close http connection: 6 +2025/08/19 13:33:51 [debug] 398217#398217: *10 event timer del: 6: 191630017 +2025/08/19 13:33:51 [debug] 398217#398217: *10 reusable connection: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 free: 000061F3F26A90A0 +2025/08/19 13:33:51 [debug] 398217#398217: *10 free: 000061F3F26A6840, unused: 120 +2025/08/19 13:33:51 [debug] 398217#398217: timer delta: 2 +2025/08/19 13:33:51 [debug] 398217#398217: worker cycle +2025/08/19 13:33:51 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:33:51 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:33:51 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:33:51 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:33:51 [debug] 398217#398217: *12 accept: 127.0.0.1:57048 fd:6 +2025/08/19 13:33:51 [debug] 398217#398217: *12 event timer add: 6: 60000:191625031 +2025/08/19 13:33:51 [debug] 398217#398217: *12 reusable connection: 1 +2025/08/19 13:33:51 [debug] 398217#398217: *12 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:33:51 [debug] 398217#398217: timer delta: 12 +2025/08/19 13:33:51 [debug] 398217#398217: worker cycle +2025/08/19 13:33:51 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:33:51 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 http wait request handler +2025/08/19 13:33:51 [debug] 398217#398217: *12 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:33:51 [debug] 398217#398217: *12 recv: eof:0, avail:-1 +2025/08/19 13:33:51 [debug] 398217#398217: *12 recv: fd:6 142 of 1024 +2025/08/19 13:33:51 [debug] 398217#398217: *12 reusable connection: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:33:51 [debug] 398217#398217: *12 http process request line +2025/08/19 13:33:51 [debug] 398217#398217: *12 http request line: "GET /ffadb0d45885063938584c0b2373bc81543ecc4c8703b376b6dea4cf7be41017 HTTP/1.1" +2025/08/19 13:33:51 [debug] 398217#398217: *12 http uri: "/ffadb0d45885063938584c0b2373bc81543ecc4c8703b376b6dea4cf7be41017" +2025/08/19 13:33:51 [debug] 398217#398217: *12 http args: "" +2025/08/19 13:33:51 [debug] 398217#398217: *12 http exten: "" +2025/08/19 13:33:51 [debug] 398217#398217: *12 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:33:51 [debug] 398217#398217: *12 http process request header line +2025/08/19 13:33:51 [debug] 398217#398217: *12 http header: "Host: localhost:9001" +2025/08/19 13:33:51 [debug] 398217#398217: *12 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:33:51 [debug] 398217#398217: *12 http header: "Accept: */*" +2025/08/19 13:33:51 [debug] 398217#398217: *12 http header done +2025/08/19 13:33:51 [debug] 398217#398217: *12 event timer del: 6: 191625031 +2025/08/19 13:33:51 [debug] 398217#398217: *12 generic phase: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 rewrite phase: 1 +2025/08/19 13:33:51 [debug] 398217#398217: *12 test location: "/health" +2025/08/19 13:33:51 [debug] 398217#398217: *12 test location: "/debug/list" +2025/08/19 13:33:51 [debug] 398217#398217: *12 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:33:51 [debug] 398217#398217: *12 using configuration "^/([a-f0-9]{64}).*$" +2025/08/19 13:33:51 [debug] 398217#398217: *12 http cl:-1 max:104857600 +2025/08/19 13:33:51 [debug] 398217#398217: *12 rewrite phase: 3 +2025/08/19 13:33:51 [debug] 398217#398217: *12 http script var +2025/08/19 13:33:51 [debug] 398217#398217: *12 http script var: "GET" +2025/08/19 13:33:51 [debug] 398217#398217: *12 http script value: "DELETE" +2025/08/19 13:33:51 [debug] 398217#398217: *12 http script not equal +2025/08/19 13:33:51 [debug] 398217#398217: *12 http script if +2025/08/19 13:33:51 [debug] 398217#398217: *12 http finalize request: 404, "/ffadb0d45885063938584c0b2373bc81543ecc4c8703b376b6dea4cf7be41017?" a:1, c:1 +2025/08/19 13:33:51 [debug] 398217#398217: *12 http special response: 404, "/ffadb0d45885063938584c0b2373bc81543ecc4c8703b376b6dea4cf7be41017?" +2025/08/19 13:33:51 [debug] 398217#398217: *12 http set discard body +2025/08/19 13:33:51 [debug] 398217#398217: *12 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:33:51 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 13:33:51 [debug] 398217#398217: *12 write new buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 164 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 http write filter: l:0 f:0 s:164 +2025/08/19 13:33:51 [debug] 398217#398217: *12 http output filter "/ffadb0d45885063938584c0b2373bc81543ecc4c8703b376b6dea4cf7be41017?" +2025/08/19 13:33:51 [debug] 398217#398217: *12 http copy filter: "/ffadb0d45885063938584c0b2373bc81543ecc4c8703b376b6dea4cf7be41017?" +2025/08/19 13:33:51 [debug] 398217#398217: *12 http postpone filter "/ffadb0d45885063938584c0b2373bc81543ecc4c8703b376b6dea4cf7be41017?" 000061F3F26BC300 +2025/08/19 13:33:51 [debug] 398217#398217: *12 write old buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 164 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 write new buf t:0 f:0 0000000000000000, pos 000061F3D7DA4580, size: 100 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 write new buf t:0 f:0 0000000000000000, pos 000061F3D7DA4C80, size: 62 file: 0, size: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 http write filter: l:1 f:0 s:326 +2025/08/19 13:33:51 [debug] 398217#398217: *12 http write filter limit 0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 writev: 326 of 326 +2025/08/19 13:33:51 [debug] 398217#398217: *12 http write filter 0000000000000000 +2025/08/19 13:33:51 [debug] 398217#398217: *12 http copy filter: 0 "/ffadb0d45885063938584c0b2373bc81543ecc4c8703b376b6dea4cf7be41017?" +2025/08/19 13:33:51 [debug] 398217#398217: *12 http finalize request: 0, "/ffadb0d45885063938584c0b2373bc81543ecc4c8703b376b6dea4cf7be41017?" a:1, c:1 +2025/08/19 13:33:51 [debug] 398217#398217: *12 set http keepalive handler +2025/08/19 13:33:51 [debug] 398217#398217: *12 http close request +2025/08/19 13:33:51 [debug] 398217#398217: *12 http log handler +2025/08/19 13:33:51 [debug] 398217#398217: *12 free: 000061F3F26C5A20, unused: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 free: 000061F3F26BBD90, unused: 2456 +2025/08/19 13:33:51 [debug] 398217#398217: *12 free: 000061F3F26A90A0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 hc free: 0000000000000000 +2025/08/19 13:33:51 [debug] 398217#398217: *12 hc busy: 0000000000000000 0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 tcp_nodelay +2025/08/19 13:33:51 [debug] 398217#398217: *12 reusable connection: 1 +2025/08/19 13:33:51 [debug] 398217#398217: *12 event timer add: 6: 65000:191630031 +2025/08/19 13:33:51 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:33:51 [debug] 398217#398217: worker cycle +2025/08/19 13:33:51 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:33:51 [debug] 398217#398217: epoll: fd:6 ev:2001 d:00007877C5D891E0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 http keepalive handler +2025/08/19 13:33:51 [debug] 398217#398217: *12 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:33:51 [debug] 398217#398217: *12 recv: eof:1, avail:-1 +2025/08/19 13:33:51 [debug] 398217#398217: *12 recv: fd:6 0 of 1024 +2025/08/19 13:33:51 [info] 398217#398217: *12 client 127.0.0.1 closed keepalive connection +2025/08/19 13:33:51 [debug] 398217#398217: *12 close http connection: 6 +2025/08/19 13:33:51 [debug] 398217#398217: *12 event timer del: 6: 191630031 +2025/08/19 13:33:51 [debug] 398217#398217: *12 reusable connection: 0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 free: 000061F3F26A90A0 +2025/08/19 13:33:51 [debug] 398217#398217: *12 free: 000061F3F26A6840, unused: 136 +2025/08/19 13:33:51 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:33:51 [debug] 398217#398217: worker cycle +2025/08/19 13:33:51 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:52:51 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:52:51 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:52:51 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:52:51 [debug] 398217#398217: *13 accept: 127.0.0.1:41472 fd:6 +2025/08/19 13:52:51 [debug] 398217#398217: *13 event timer add: 6: 60000:192765037 +2025/08/19 13:52:51 [debug] 398217#398217: *13 reusable connection: 1 +2025/08/19 13:52:51 [debug] 398217#398217: *13 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:52:51 [debug] 398217#398217: timer delta: 1140005 +2025/08/19 13:52:51 [debug] 398217#398217: worker cycle +2025/08/19 13:52:51 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:52:51 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E1 +2025/08/19 13:52:51 [debug] 398217#398217: *13 http wait request handler +2025/08/19 13:52:51 [debug] 398217#398217: *13 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:52:51 [debug] 398217#398217: *13 recv: eof:0, avail:-1 +2025/08/19 13:52:51 [debug] 398217#398217: *13 recv: fd:6 84 of 1024 +2025/08/19 13:52:51 [debug] 398217#398217: *13 reusable connection: 0 +2025/08/19 13:52:51 [debug] 398217#398217: *13 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:52:51 [debug] 398217#398217: *13 http process request line +2025/08/19 13:52:51 [debug] 398217#398217: *13 http request line: "GET /health HTTP/1.1" +2025/08/19 13:52:51 [debug] 398217#398217: *13 http uri: "/health" +2025/08/19 13:52:51 [debug] 398217#398217: *13 http args: "" +2025/08/19 13:52:51 [debug] 398217#398217: *13 http exten: "" +2025/08/19 13:52:51 [debug] 398217#398217: *13 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:52:51 [debug] 398217#398217: *13 http process request header line +2025/08/19 13:52:51 [debug] 398217#398217: *13 http header: "Host: localhost:9001" +2025/08/19 13:52:51 [debug] 398217#398217: *13 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:52:51 [debug] 398217#398217: *13 http header: "Accept: */*" +2025/08/19 13:52:51 [debug] 398217#398217: *13 http header done +2025/08/19 13:52:51 [debug] 398217#398217: *13 event timer del: 6: 192765037 +2025/08/19 13:52:51 [debug] 398217#398217: *13 generic phase: 0 +2025/08/19 13:52:51 [debug] 398217#398217: *13 rewrite phase: 1 +2025/08/19 13:52:51 [debug] 398217#398217: *13 test location: "/health" +2025/08/19 13:52:51 [debug] 398217#398217: *13 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:52:51 [debug] 398217#398217: *13 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 13:52:51 [debug] 398217#398217: *13 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 13:52:51 [debug] 398217#398217: *13 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 13:52:51 [debug] 398217#398217: *13 using configuration "/health" +2025/08/19 13:52:51 [debug] 398217#398217: *13 http cl:-1 max:104857600 +2025/08/19 13:52:51 [debug] 398217#398217: *13 rewrite phase: 3 +2025/08/19 13:52:51 [debug] 398217#398217: *13 http set discard body +2025/08/19 13:52:51 [debug] 398217#398217: *13 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:52:51 GMT +Content-Type: application/octet-stream +Content-Length: 3 +Connection: keep-alive +Content-Type: text/plain + +2025/08/19 13:52:51 [debug] 398217#398217: *13 write new buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 196 file: 0, size: 0 +2025/08/19 13:52:51 [debug] 398217#398217: *13 http write filter: l:0 f:0 s:196 +2025/08/19 13:52:51 [debug] 398217#398217: *13 http output filter "/health?" +2025/08/19 13:52:51 [debug] 398217#398217: *13 http copy filter: "/health?" +2025/08/19 13:52:51 [debug] 398217#398217: *13 http postpone filter "/health?" 00007FFE4490F940 +2025/08/19 13:52:51 [debug] 398217#398217: *13 write old buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 196 file: 0, size: 0 +2025/08/19 13:52:51 [debug] 398217#398217: *13 write new buf t:0 f:0 0000000000000000, pos 000061F3F26E3B32, size: 3 file: 0, size: 0 +2025/08/19 13:52:51 [debug] 398217#398217: *13 http write filter: l:1 f:0 s:199 +2025/08/19 13:52:51 [debug] 398217#398217: *13 http write filter limit 0 +2025/08/19 13:52:51 [debug] 398217#398217: *13 writev: 199 of 199 +2025/08/19 13:52:51 [debug] 398217#398217: *13 http write filter 0000000000000000 +2025/08/19 13:52:51 [debug] 398217#398217: *13 http copy filter: 0 "/health?" +2025/08/19 13:52:51 [debug] 398217#398217: *13 http finalize request: 0, "/health?" a:1, c:1 +2025/08/19 13:52:51 [debug] 398217#398217: *13 set http keepalive handler +2025/08/19 13:52:51 [debug] 398217#398217: *13 http close request +2025/08/19 13:52:51 [debug] 398217#398217: *13 http log handler +2025/08/19 13:52:51 [debug] 398217#398217: *13 free: 000061F3F26C5A20, unused: 0 +2025/08/19 13:52:51 [debug] 398217#398217: *13 free: 000061F3F26BBD90, unused: 2736 +2025/08/19 13:52:51 [debug] 398217#398217: *13 free: 000061F3F26A90A0 +2025/08/19 13:52:51 [debug] 398217#398217: *13 hc free: 0000000000000000 +2025/08/19 13:52:51 [debug] 398217#398217: *13 hc busy: 0000000000000000 0 +2025/08/19 13:52:51 [debug] 398217#398217: *13 tcp_nodelay +2025/08/19 13:52:51 [debug] 398217#398217: *13 reusable connection: 1 +2025/08/19 13:52:51 [debug] 398217#398217: *13 event timer add: 6: 65000:192770037 +2025/08/19 13:52:51 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:52:51 [debug] 398217#398217: worker cycle +2025/08/19 13:52:51 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:52:51 [debug] 398217#398217: epoll: fd:6 ev:2001 d:00007877C5D891E1 +2025/08/19 13:52:51 [debug] 398217#398217: *13 http keepalive handler +2025/08/19 13:52:51 [debug] 398217#398217: *13 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:52:51 [debug] 398217#398217: *13 recv: eof:1, avail:-1 +2025/08/19 13:52:51 [debug] 398217#398217: *13 recv: fd:6 0 of 1024 +2025/08/19 13:52:51 [info] 398217#398217: *13 client 127.0.0.1 closed keepalive connection +2025/08/19 13:52:51 [debug] 398217#398217: *13 close http connection: 6 +2025/08/19 13:52:51 [debug] 398217#398217: *13 event timer del: 6: 192770037 +2025/08/19 13:52:51 [debug] 398217#398217: *13 reusable connection: 0 +2025/08/19 13:52:51 [debug] 398217#398217: *13 free: 000061F3F26A90A0 +2025/08/19 13:52:51 [debug] 398217#398217: *13 free: 000061F3F26A6840, unused: 136 +2025/08/19 13:52:51 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:52:51 [debug] 398217#398217: worker cycle +2025/08/19 13:52:51 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:52:52 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:52:52 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:52:52 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:52:52 [debug] 398217#398217: *14 accept: 127.0.0.1:41478 fd:6 +2025/08/19 13:52:52 [debug] 398217#398217: *14 event timer add: 6: 60000:192765251 +2025/08/19 13:52:52 [debug] 398217#398217: *14 reusable connection: 1 +2025/08/19 13:52:52 [debug] 398217#398217: *14 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:52:52 [debug] 398217#398217: timer delta: 213 +2025/08/19 13:52:52 [debug] 398217#398217: worker cycle +2025/08/19 13:52:52 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:52:52 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http wait request handler +2025/08/19 13:52:52 [debug] 398217#398217: *14 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:52:52 [debug] 398217#398217: *14 recv: eof:0, avail:-1 +2025/08/19 13:52:52 [debug] 398217#398217: *14 recv: fd:6 1024 of 1024 +2025/08/19 13:52:52 [debug] 398217#398217: *14 recv: avail:112 +2025/08/19 13:52:52 [debug] 398217#398217: *14 reusable connection: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http process request line +2025/08/19 13:52:52 [debug] 398217#398217: *14 http request line: "PUT /upload HTTP/1.1" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http uri: "/upload" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http args: "" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http exten: "" +2025/08/19 13:52:52 [debug] 398217#398217: *14 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http process request header line +2025/08/19 13:52:52 [debug] 398217#398217: *14 http header: "Host: localhost:9001" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http header: "Accept: */*" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiJlM2QxNzYzNDBkMzU1MDRjNTAzNjRkYzk1ODIzZmFkYzg0NDkxNWFkYzFiZGRiNzI2MzU5MGQ0ZjRiMzY3ZGI0IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjU5NzIsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI4NzhhNjM4NDcxMjBiZTljMjk0OTg0NTk4OTE0NGEwYTE0NjBiNWY2NmEzMDBmZTA0ZDBjN2Y5ZmEzOTA2ZTc1Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTU3MSJdXSwiY29udGVudCI6IiIsInNpZyI6ImMxZTg2YmY4NmQ2YzkxMTc5ZGMyMjAxYTUxOTA1YzU1N2E4YTk3MGFkYmY1YjU2NWEwN2I4Nzk3OWIyNWZjYWM4M2EyMzY2ZjYyZmQ0MGJhNmJjYjU0MGNkNmFiMWNmZTdlOTk5MDAxMmQ2YTAyZTI0OTMwMjRjNmY5YzFiZTdiIn0=" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http header: "Content-Type: text/plain" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http header: "Content-Disposition: attachment; filename="test_blob_1755625971.txt"" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http header: "Content-Length: 296" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http header done +2025/08/19 13:52:52 [debug] 398217#398217: *14 event timer del: 6: 192765251 +2025/08/19 13:52:52 [debug] 398217#398217: *14 generic phase: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 rewrite phase: 1 +2025/08/19 13:52:52 [debug] 398217#398217: *14 test location: "/health" +2025/08/19 13:52:52 [debug] 398217#398217: *14 test location: "/upload" +2025/08/19 13:52:52 [debug] 398217#398217: *14 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:52:52 [debug] 398217#398217: *14 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 13:52:52 [debug] 398217#398217: *14 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 13:52:52 [debug] 398217#398217: *14 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 13:52:52 [debug] 398217#398217: *14 using configuration "/upload" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http cl:296 max:104857600 +2025/08/19 13:52:52 [debug] 398217#398217: *14 rewrite phase: 3 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "PUT" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script regex: "^(PUT)$" +2025/08/19 13:52:52 [notice] 398217#398217: *14 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script if +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script if: false +2025/08/19 13:52:52 [debug] 398217#398217: *14 post rewrite phase: 4 +2025/08/19 13:52:52 [debug] 398217#398217: *14 generic phase: 5 +2025/08/19 13:52:52 [debug] 398217#398217: *14 generic phase: 6 +2025/08/19 13:52:52 [debug] 398217#398217: *14 generic phase: 7 +2025/08/19 13:52:52 [debug] 398217#398217: *14 access phase: 8 +2025/08/19 13:52:52 [debug] 398217#398217: *14 access phase: 9 +2025/08/19 13:52:52 [debug] 398217#398217: *14 access phase: 10 +2025/08/19 13:52:52 [debug] 398217#398217: *14 post access phase: 11 +2025/08/19 13:52:52 [debug] 398217#398217: *14 generic phase: 12 +2025/08/19 13:52:52 [debug] 398217#398217: *14 generic phase: 13 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http client request body preread 184 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http request body content length filter +2025/08/19 13:52:52 [debug] 398217#398217: *14 http body new buf t:1 f:0 000061F3F26A93E8, pos 000061F3F26A93E8, size: 184 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http read client request body +2025/08/19 13:52:52 [debug] 398217#398217: *14 recv: eof:0, avail:112 +2025/08/19 13:52:52 [debug] 398217#398217: *14 recv: fd:6 112 of 112 +2025/08/19 13:52:52 [debug] 398217#398217: *14 recv: avail:0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http client request body recv 112 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http body new buf t:1 f:0 000061F3F26BC820, pos 000061F3F26BC820, size: 112 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http client request body rest 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http init upstream, client timer: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 13:52:52 [debug] 398217#398217: *14 posix_memalign: 000061F3F26B0140:4096 @16 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "QUERY_STRING" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "QUERY_STRING: " +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "REQUEST_METHOD" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "PUT" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "CONTENT_TYPE" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "text/plain" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "CONTENT_LENGTH" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "296" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "SCRIPT_NAME" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "/upload" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "REQUEST_URI" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "/upload" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "DOCUMENT_URI" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "/upload" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "DOCUMENT_ROOT" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "./blobs" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "SERVER_PROTOCOL" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "HTTP/1.1" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "REQUEST_SCHEME" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "http" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "GATEWAY_INTERFACE" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "CGI/1.1" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "SERVER_SOFTWARE" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "nginx/" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "1.18.0" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "REMOTE_ADDR" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "127.0.0.1" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "REMOTE_PORT" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "41478" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "REMOTE_PORT: 41478" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "SERVER_ADDR" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "127.0.0.1" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "SERVER_PORT" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "9001" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "SERVER_NAME" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "localhost" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "REDIRECT_STATUS" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "200" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "SCRIPT_FILENAME" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script var: "./blobs" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http script copy: "/ginxsom.fcgi" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiJlM2QxNzYzNDBkMzU1MDRjNTAzNjRkYzk1ODIzZmFkYzg0NDkxNWFkYzFiZGRiNzI2MzU5MGQ0ZjRiMzY3ZGI0IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjU5NzIsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI4NzhhNjM4NDcxMjBiZTljMjk0OTg0NTk4OTE0NGEwYTE0NjBiNWY2NmEzMDBmZTA0ZDBjN2Y5ZmEzOTA2ZTc1Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTU3MSJdXSwiY29udGVudCI6IiIsInNpZyI6ImMxZTg2YmY4NmQ2YzkxMTc5ZGMyMjAxYTUxOTA1YzU1N2E4YTk3MGFkYmY1YjU2NWEwN2I4Nzk3OWIyNWZjYWM4M2EyMzY2ZjYyZmQ0MGJhNmJjYjU0MGNkNmFiMWNmZTdlOTk5MDAxMmQ2YTAyZTI0OTMwMjRjNmY5YzFiZTdiIn0=" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755625971.txt"" +2025/08/19 13:52:52 [debug] 398217#398217: *14 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http cleanup add: 000061F3F26BCB70 +2025/08/19 13:52:52 [debug] 398217#398217: *14 get rr peer, try: 1 +2025/08/19 13:52:52 [debug] 398217#398217: *14 stream socket 10 +2025/08/19 13:52:52 [debug] 398217#398217: *14 epoll add connection: fd:10 ev:80002005 +2025/08/19 13:52:52 [debug] 398217#398217: *14 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #15 +2025/08/19 13:52:52 [debug] 398217#398217: *14 connected +2025/08/19 13:52:52 [debug] 398217#398217: *14 http upstream connect: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 posix_memalign: 000061F3F268FF20:128 @16 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http upstream send request +2025/08/19 13:52:52 [debug] 398217#398217: *14 http upstream send request body +2025/08/19 13:52:52 [debug] 398217#398217: *14 chain writer buf fl:0 s:1304 +2025/08/19 13:52:52 [debug] 398217#398217: *14 chain writer buf fl:0 s:184 +2025/08/19 13:52:52 [debug] 398217#398217: *14 chain writer buf fl:0 s:8 +2025/08/19 13:52:52 [debug] 398217#398217: *14 chain writer buf fl:0 s:112 +2025/08/19 13:52:52 [debug] 398217#398217: *14 chain writer buf fl:0 s:8 +2025/08/19 13:52:52 [debug] 398217#398217: *14 chain writer in: 000061F3F26BCC00 +2025/08/19 13:52:52 [debug] 398217#398217: *14 writev: 1616 of 1616 +2025/08/19 13:52:52 [debug] 398217#398217: *14 chain writer out: 0000000000000000 +2025/08/19 13:52:52 [debug] 398217#398217: *14 event timer add: 10: 60000:192765252 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http request count:2 blk:0 +2025/08/19 13:52:52 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:52:52 [debug] 398217#398217: worker cycle +2025/08/19 13:52:52 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:52:52 [debug] 398217#398217: epoll: fd:6 ev:0004 d:00007877C5D891E0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http run request: "/upload?" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http upstream check client, write event:1, "/upload" +2025/08/19 13:52:52 [debug] 398217#398217: epoll: fd:10 ev:0004 d:00007877C5D892C9 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http upstream request: "/upload?" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http upstream dummy handler +2025/08/19 13:52:52 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:52:52 [debug] 398217#398217: worker cycle +2025/08/19 13:52:52 [debug] 398217#398217: epoll timer: 59999 +2025/08/19 13:52:52 [debug] 398217#398217: epoll: fd:10 ev:2005 d:00007877C5D892C9 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http upstream request: "/upload?" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http upstream process header +2025/08/19 13:52:52 [debug] 398217#398217: *14 malloc: 000061F3F26B1150:4096 +2025/08/19 13:52:52 [debug] 398217#398217: *14 recv: eof:1, avail:-1 +2025/08/19 13:52:52 [debug] 398217#398217: *14 recv: fd:10 1664 of 4096 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 01 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 06 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 00 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 01 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 06 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 5D +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 03 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 00 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record length: 1629 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header: "LOG: [2025-08-19 13:52:52] PUT /upload - Auth: pending - Status: 0" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiJlM2QxNzYzNDBkMzU1MDRjNTAzNjRkYzk1ODIzZmFkYzg0NDkxNWFkYzFiZGRiNzI2MzU5MGQ0ZjRiMzY3ZGI0IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjU5NzIsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI4NzhhNjM4NDcxMjBiZTljMjk0OTg0NTk4OTE0NGEwYTE0NjBiNWY2NmEzMDBmZTA0ZDBjN2Y5ZmEzOTA2ZTc1Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTU3MSJdXSwiY29udGVudCI6IiIsInNpZyI6ImMxZTg2YmY4NmQ2YzkxMTc5ZGMyMjAxYTUxOTA1YzU1N2E4YTk3MGFkYmY1YjU2NWEwN2I4Nzk3OWIyNWZjYWM4M2EyMzY2ZjYyZmQ0MGJhNmJjYjU0MGNkNmFiMWNmZTdlOTk5MDAxMmQ2YTAyZTI0OTMwMjRjNmY5YzFiZTdiIn0=" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header: "DEBUG: Authenticating request - method: PUT, hash: null" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header: "DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiJlM2QxNzYzNDBkMzU1MDRjNTAzNjRkYzk1ODIzZmFkYzg0NDkxNWFkYzFiZGRiNzI2MzU5MGQ0..." +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header: "DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"e3d176340d35504c50364dc95823fadc844915adc1bddb7263590d4f4b367db4","pubkey":"79be..." +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header: "DEBUG: Nostr event validation failed: -32 (Event has invalid public key)" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header: "Status: 401 Unauthorized" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header: "Content-Type: application/json" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi parser: 1 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi header done +2025/08/19 13:52:52 [debug] 398217#398217: *14 posix_memalign: 000061F3F26B2160:4096 @16 +2025/08/19 13:52:52 [debug] 398217#398217: *14 HTTP/1.1 401 Unauthorized +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:52:52 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 +LOG: [2025-08-19 13:52:52] PUT /upload - Auth: pending - Status: 0 +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiJlM2QxNzYzNDBkMzU1MDRjNTAzNjRkYzk1ODIzZmFkYzg0NDkxNWFkYzFiZGRiNzI2MzU5MGQ0ZjRiMzY3ZGI0IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjU5NzIsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI4NzhhNjM4NDcxMjBiZTljMjk0OTg0NTk4OTE0NGEwYTE0NjBiNWY2NmEzMDBmZTA0ZDBjN2Y5ZmEzOTA2ZTc1Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTU3MSJdXSwiY29udGVudCI6IiIsInNpZyI6ImMxZTg2YmY4NmQ2YzkxMTc5ZGMyMjAxYTUxOTA1YzU1N2E4YTk3MGFkYmY1YjU2NWEwN2I4Nzk3OWIyNWZjYWM4M2EyMzY2ZjYyZmQ0MGJhNmJjYjU0MGNkNmFiMWNmZTdlOTk5MDAxMmQ2YTAyZTI0OTMwMjRjNmY5YzFiZTdiIn0= +DEBUG: Authenticating request - method: PUT, hash: null +DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiJlM2QxNzYzNDBkMzU1MDRjNTAzNjRkYzk1ODIzZmFkYzg0NDkxNWFkYzFiZGRiNzI2MzU5MGQ0... +DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"e3d176340d35504c50364dc95823fadc844915adc1bddb7263590d4f4b367db4","pubkey":"79be... +DEBUG: Nostr event validation failed: -32 (Event has invalid public key) + +2025/08/19 13:52:52 [debug] 398217#398217: *14 write new buf t:1 f:0 000061F3F26B2180, pos 000061F3F26B2180, size: 1493 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http write filter: l:0 f:0 s:1493 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http write filter limit 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 writev: 1493 of 1493 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http write filter 0000000000000000 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http cacheable: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http upstream process upstream +2025/08/19 13:52:52 [debug] 398217#398217: *14 pipe read upstream: 1 +2025/08/19 13:52:52 [debug] 398217#398217: *14 pipe preread: 284 +2025/08/19 13:52:52 [debug] 398217#398217: *14 readv: eof:1, avail:0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 readv: 1, last:2432 +2025/08/19 13:52:52 [debug] 398217#398217: *14 pipe recv chain: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 pipe buf free s:0 t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 284 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 pipe length: -1 +2025/08/19 13:52:52 [debug] 398217#398217: *14 input buf #0 000061F3F26B16B4 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 01 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 06 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 00 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 01 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 00 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 00 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 00 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 00 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record length: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi closed stdout +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 01 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 03 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 00 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 01 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 00 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 08 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 00 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record byte: 00 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi record length: 8 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http fastcgi sent end request +2025/08/19 13:52:52 [debug] 398217#398217: *14 input buf 000061F3F26B16B4 257 +2025/08/19 13:52:52 [debug] 398217#398217: *14 pipe write downstream: 1 +2025/08/19 13:52:52 [debug] 398217#398217: *14 pipe write downstream flush in +2025/08/19 13:52:52 [debug] 398217#398217: *14 http output filter "/upload?" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http copy filter: "/upload?" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http postpone filter "/upload?" 000061F3F26BCBE0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http chunk: 257 +2025/08/19 13:52:52 [debug] 398217#398217: *14 write new buf t:1 f:0 000061F3F26B10F8, pos 000061F3F26B10F8, size: 5 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 write new buf t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 257 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http write filter: l:0 f:0 s:264 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http copy filter: 0 "/upload?" +2025/08/19 13:52:52 [debug] 398217#398217: *14 pipe write downstream done +2025/08/19 13:52:52 [debug] 398217#398217: *14 event timer: 10, old: 192765252, new: 192765254 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http upstream exit: 0000000000000000 +2025/08/19 13:52:52 [debug] 398217#398217: *14 finalize http upstream request: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 finalize http fastcgi request +2025/08/19 13:52:52 [debug] 398217#398217: *14 free rr peer 1 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 close http upstream connection: 10 +2025/08/19 13:52:52 [debug] 398217#398217: *14 free: 000061F3F268FF20, unused: 48 +2025/08/19 13:52:52 [debug] 398217#398217: *14 event timer del: 10: 192765252 +2025/08/19 13:52:52 [debug] 398217#398217: *14 reusable connection: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http upstream temp fd: -1 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http output filter "/upload?" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http copy filter: "/upload?" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http postpone filter "/upload?" 00007FFE4490F9F0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http chunk: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 write old buf t:1 f:0 000061F3F26B10F8, pos 000061F3F26B10F8, size: 5 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 write old buf t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 257 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 write old buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E5, size: 5 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http write filter: l:1 f:0 s:269 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http write filter limit 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 writev: 269 of 269 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http write filter 0000000000000000 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http copy filter: 0 "/upload?" +2025/08/19 13:52:52 [debug] 398217#398217: *14 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 13:52:52 [debug] 398217#398217: *14 set http keepalive handler +2025/08/19 13:52:52 [debug] 398217#398217: *14 http close request +2025/08/19 13:52:52 [debug] 398217#398217: *14 http log handler +2025/08/19 13:52:52 [debug] 398217#398217: *14 free: 000061F3F26B1150 +2025/08/19 13:52:52 [debug] 398217#398217: *14 free: 000061F3F26C5A20, unused: 3 +2025/08/19 13:52:52 [debug] 398217#398217: *14 free: 000061F3F26BBD90, unused: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 free: 000061F3F26B0140, unused: 54 +2025/08/19 13:52:52 [debug] 398217#398217: *14 free: 000061F3F26B2160, unused: 2202 +2025/08/19 13:52:52 [debug] 398217#398217: *14 free: 000061F3F26A90A0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 hc free: 0000000000000000 +2025/08/19 13:52:52 [debug] 398217#398217: *14 hc busy: 0000000000000000 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 tcp_nodelay +2025/08/19 13:52:52 [debug] 398217#398217: *14 reusable connection: 1 +2025/08/19 13:52:52 [debug] 398217#398217: *14 event timer add: 6: 65000:192770254 +2025/08/19 13:52:52 [debug] 398217#398217: *14 post event 000061F3F26F7760 +2025/08/19 13:52:52 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:52:52 [debug] 398217#398217: posted event 000061F3F26F7760 +2025/08/19 13:52:52 [debug] 398217#398217: *14 delete posted event 000061F3F26F7760 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http keepalive handler +2025/08/19 13:52:52 [debug] 398217#398217: *14 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:52:52 [debug] 398217#398217: *14 recv: eof:0, avail:0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 free: 000061F3F26A90A0 +2025/08/19 13:52:52 [debug] 398217#398217: worker cycle +2025/08/19 13:52:52 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:52:52 [debug] 398217#398217: epoll: fd:6 ev:2005 d:00007877C5D891E0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 http keepalive handler +2025/08/19 13:52:52 [debug] 398217#398217: *14 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:52:52 [debug] 398217#398217: *14 recv: eof:1, avail:-1 +2025/08/19 13:52:52 [debug] 398217#398217: *14 recv: fd:6 0 of 1024 +2025/08/19 13:52:52 [info] 398217#398217: *14 client 127.0.0.1 closed keepalive connection +2025/08/19 13:52:52 [debug] 398217#398217: *14 close http connection: 6 +2025/08/19 13:52:52 [debug] 398217#398217: *14 event timer del: 6: 192770254 +2025/08/19 13:52:52 [debug] 398217#398217: *14 reusable connection: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 free: 000061F3F26A90A0 +2025/08/19 13:52:52 [debug] 398217#398217: *14 free: 000061F3F26A6840, unused: 120 +2025/08/19 13:52:52 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:52:52 [debug] 398217#398217: worker cycle +2025/08/19 13:52:52 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:52:52 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:52:52 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:52:52 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:52:52 [debug] 398217#398217: *16 accept: 127.0.0.1:41484 fd:6 +2025/08/19 13:52:52 [debug] 398217#398217: *16 event timer add: 6: 60000:192765265 +2025/08/19 13:52:52 [debug] 398217#398217: *16 reusable connection: 1 +2025/08/19 13:52:52 [debug] 398217#398217: *16 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:52:52 [debug] 398217#398217: timer delta: 10 +2025/08/19 13:52:52 [debug] 398217#398217: worker cycle +2025/08/19 13:52:52 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:52:52 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E1 +2025/08/19 13:52:52 [debug] 398217#398217: *16 http wait request handler +2025/08/19 13:52:52 [debug] 398217#398217: *16 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:52:52 [debug] 398217#398217: *16 recv: eof:0, avail:-1 +2025/08/19 13:52:52 [debug] 398217#398217: *16 recv: fd:6 142 of 1024 +2025/08/19 13:52:52 [debug] 398217#398217: *16 reusable connection: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *16 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:52:52 [debug] 398217#398217: *16 http process request line +2025/08/19 13:52:52 [debug] 398217#398217: *16 http request line: "GET /878a63847120be9c2949845989144a0a1460b5f66a300fe04d0c7f9fa3906e75 HTTP/1.1" +2025/08/19 13:52:52 [debug] 398217#398217: *16 http uri: "/878a63847120be9c2949845989144a0a1460b5f66a300fe04d0c7f9fa3906e75" +2025/08/19 13:52:52 [debug] 398217#398217: *16 http args: "" +2025/08/19 13:52:52 [debug] 398217#398217: *16 http exten: "" +2025/08/19 13:52:52 [debug] 398217#398217: *16 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:52:52 [debug] 398217#398217: *16 http process request header line +2025/08/19 13:52:52 [debug] 398217#398217: *16 http header: "Host: localhost:9001" +2025/08/19 13:52:52 [debug] 398217#398217: *16 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:52:52 [debug] 398217#398217: *16 http header: "Accept: */*" +2025/08/19 13:52:52 [debug] 398217#398217: *16 http header done +2025/08/19 13:52:52 [debug] 398217#398217: *16 event timer del: 6: 192765265 +2025/08/19 13:52:52 [debug] 398217#398217: *16 generic phase: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *16 rewrite phase: 1 +2025/08/19 13:52:52 [debug] 398217#398217: *16 test location: "/health" +2025/08/19 13:52:52 [debug] 398217#398217: *16 test location: "/debug/list" +2025/08/19 13:52:52 [debug] 398217#398217: *16 test location: "/" +2025/08/19 13:52:52 [debug] 398217#398217: *16 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:52:52 [debug] 398217#398217: *16 using configuration "^/([a-f0-9]{64}).*$" +2025/08/19 13:52:52 [debug] 398217#398217: *16 http cl:-1 max:104857600 +2025/08/19 13:52:52 [debug] 398217#398217: *16 rewrite phase: 3 +2025/08/19 13:52:52 [debug] 398217#398217: *16 http script var +2025/08/19 13:52:52 [debug] 398217#398217: *16 http script var: "GET" +2025/08/19 13:52:52 [debug] 398217#398217: *16 http script value: "DELETE" +2025/08/19 13:52:52 [debug] 398217#398217: *16 http script not equal +2025/08/19 13:52:52 [debug] 398217#398217: *16 http script if +2025/08/19 13:52:52 [debug] 398217#398217: *16 http finalize request: 404, "/878a63847120be9c2949845989144a0a1460b5f66a300fe04d0c7f9fa3906e75?" a:1, c:1 +2025/08/19 13:52:52 [debug] 398217#398217: *16 http special response: 404, "/878a63847120be9c2949845989144a0a1460b5f66a300fe04d0c7f9fa3906e75?" +2025/08/19 13:52:52 [debug] 398217#398217: *16 http set discard body +2025/08/19 13:52:52 [debug] 398217#398217: *16 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:52:52 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 13:52:52 [debug] 398217#398217: *16 write new buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 164 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *16 http write filter: l:0 f:0 s:164 +2025/08/19 13:52:52 [debug] 398217#398217: *16 http output filter "/878a63847120be9c2949845989144a0a1460b5f66a300fe04d0c7f9fa3906e75?" +2025/08/19 13:52:52 [debug] 398217#398217: *16 http copy filter: "/878a63847120be9c2949845989144a0a1460b5f66a300fe04d0c7f9fa3906e75?" +2025/08/19 13:52:52 [debug] 398217#398217: *16 http postpone filter "/878a63847120be9c2949845989144a0a1460b5f66a300fe04d0c7f9fa3906e75?" 000061F3F26BC300 +2025/08/19 13:52:52 [debug] 398217#398217: *16 write old buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 164 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *16 write new buf t:0 f:0 0000000000000000, pos 000061F3D7DA4580, size: 100 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *16 write new buf t:0 f:0 0000000000000000, pos 000061F3D7DA4C80, size: 62 file: 0, size: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *16 http write filter: l:1 f:0 s:326 +2025/08/19 13:52:52 [debug] 398217#398217: *16 http write filter limit 0 +2025/08/19 13:52:52 [debug] 398217#398217: *16 writev: 326 of 326 +2025/08/19 13:52:52 [debug] 398217#398217: *16 http write filter 0000000000000000 +2025/08/19 13:52:52 [debug] 398217#398217: *16 http copy filter: 0 "/878a63847120be9c2949845989144a0a1460b5f66a300fe04d0c7f9fa3906e75?" +2025/08/19 13:52:52 [debug] 398217#398217: *16 http finalize request: 0, "/878a63847120be9c2949845989144a0a1460b5f66a300fe04d0c7f9fa3906e75?" a:1, c:1 +2025/08/19 13:52:52 [debug] 398217#398217: *16 set http keepalive handler +2025/08/19 13:52:52 [debug] 398217#398217: *16 http close request +2025/08/19 13:52:52 [debug] 398217#398217: *16 http log handler +2025/08/19 13:52:52 [debug] 398217#398217: *16 free: 000061F3F26C5A20, unused: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *16 free: 000061F3F26BBD90, unused: 2456 +2025/08/19 13:52:52 [debug] 398217#398217: *16 free: 000061F3F26A90A0 +2025/08/19 13:52:52 [debug] 398217#398217: *16 hc free: 0000000000000000 +2025/08/19 13:52:52 [debug] 398217#398217: *16 hc busy: 0000000000000000 0 +2025/08/19 13:52:52 [debug] 398217#398217: *16 tcp_nodelay +2025/08/19 13:52:52 [debug] 398217#398217: *16 reusable connection: 1 +2025/08/19 13:52:52 [debug] 398217#398217: *16 event timer add: 6: 65000:192770265 +2025/08/19 13:52:52 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:52:52 [debug] 398217#398217: worker cycle +2025/08/19 13:52:52 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:52:52 [debug] 398217#398217: epoll: fd:6 ev:2001 d:00007877C5D891E1 +2025/08/19 13:52:52 [debug] 398217#398217: *16 http keepalive handler +2025/08/19 13:52:52 [debug] 398217#398217: *16 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:52:52 [debug] 398217#398217: *16 recv: eof:1, avail:-1 +2025/08/19 13:52:52 [debug] 398217#398217: *16 recv: fd:6 0 of 1024 +2025/08/19 13:52:52 [info] 398217#398217: *16 client 127.0.0.1 closed keepalive connection +2025/08/19 13:52:52 [debug] 398217#398217: *16 close http connection: 6 +2025/08/19 13:52:52 [debug] 398217#398217: *16 event timer del: 6: 192770265 +2025/08/19 13:52:52 [debug] 398217#398217: *16 reusable connection: 0 +2025/08/19 13:52:52 [debug] 398217#398217: *16 free: 000061F3F26A90A0 +2025/08/19 13:52:52 [debug] 398217#398217: *16 free: 000061F3F26A6840, unused: 136 +2025/08/19 13:52:52 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:52:52 [debug] 398217#398217: worker cycle +2025/08/19 13:52:52 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:55:05 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:55:05 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:55:05 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:55:05 [debug] 398217#398217: *17 accept: 127.0.0.1:51368 fd:6 +2025/08/19 13:55:05 [debug] 398217#398217: *17 event timer add: 6: 60000:192898662 +2025/08/19 13:55:05 [debug] 398217#398217: *17 reusable connection: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *17 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:55:05 [debug] 398217#398217: timer delta: 133396 +2025/08/19 13:55:05 [debug] 398217#398217: worker cycle +2025/08/19 13:55:05 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:55:05 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E0 +2025/08/19 13:55:05 [debug] 398217#398217: *17 http wait request handler +2025/08/19 13:55:05 [debug] 398217#398217: *17 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:55:05 [debug] 398217#398217: *17 recv: eof:0, avail:-1 +2025/08/19 13:55:05 [debug] 398217#398217: *17 recv: fd:6 84 of 1024 +2025/08/19 13:55:05 [debug] 398217#398217: *17 reusable connection: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *17 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:55:05 [debug] 398217#398217: *17 http process request line +2025/08/19 13:55:05 [debug] 398217#398217: *17 http request line: "GET /health HTTP/1.1" +2025/08/19 13:55:05 [debug] 398217#398217: *17 http uri: "/health" +2025/08/19 13:55:05 [debug] 398217#398217: *17 http args: "" +2025/08/19 13:55:05 [debug] 398217#398217: *17 http exten: "" +2025/08/19 13:55:05 [debug] 398217#398217: *17 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:55:05 [debug] 398217#398217: *17 http process request header line +2025/08/19 13:55:05 [debug] 398217#398217: *17 http header: "Host: localhost:9001" +2025/08/19 13:55:05 [debug] 398217#398217: *17 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:55:05 [debug] 398217#398217: *17 http header: "Accept: */*" +2025/08/19 13:55:05 [debug] 398217#398217: *17 http header done +2025/08/19 13:55:05 [debug] 398217#398217: *17 event timer del: 6: 192898662 +2025/08/19 13:55:05 [debug] 398217#398217: *17 generic phase: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *17 rewrite phase: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *17 test location: "/health" +2025/08/19 13:55:05 [debug] 398217#398217: *17 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:55:05 [debug] 398217#398217: *17 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 13:55:05 [debug] 398217#398217: *17 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 13:55:05 [debug] 398217#398217: *17 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 13:55:05 [debug] 398217#398217: *17 using configuration "/health" +2025/08/19 13:55:05 [debug] 398217#398217: *17 http cl:-1 max:104857600 +2025/08/19 13:55:05 [debug] 398217#398217: *17 rewrite phase: 3 +2025/08/19 13:55:05 [debug] 398217#398217: *17 http set discard body +2025/08/19 13:55:05 [debug] 398217#398217: *17 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:55:05 GMT +Content-Type: application/octet-stream +Content-Length: 3 +Connection: keep-alive +Content-Type: text/plain + +2025/08/19 13:55:05 [debug] 398217#398217: *17 write new buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 196 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *17 http write filter: l:0 f:0 s:196 +2025/08/19 13:55:05 [debug] 398217#398217: *17 http output filter "/health?" +2025/08/19 13:55:05 [debug] 398217#398217: *17 http copy filter: "/health?" +2025/08/19 13:55:05 [debug] 398217#398217: *17 http postpone filter "/health?" 00007FFE4490F940 +2025/08/19 13:55:05 [debug] 398217#398217: *17 write old buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 196 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *17 write new buf t:0 f:0 0000000000000000, pos 000061F3F26E3B32, size: 3 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *17 http write filter: l:1 f:0 s:199 +2025/08/19 13:55:05 [debug] 398217#398217: *17 http write filter limit 0 +2025/08/19 13:55:05 [debug] 398217#398217: *17 writev: 199 of 199 +2025/08/19 13:55:05 [debug] 398217#398217: *17 http write filter 0000000000000000 +2025/08/19 13:55:05 [debug] 398217#398217: *17 http copy filter: 0 "/health?" +2025/08/19 13:55:05 [debug] 398217#398217: *17 http finalize request: 0, "/health?" a:1, c:1 +2025/08/19 13:55:05 [debug] 398217#398217: *17 set http keepalive handler +2025/08/19 13:55:05 [debug] 398217#398217: *17 http close request +2025/08/19 13:55:05 [debug] 398217#398217: *17 http log handler +2025/08/19 13:55:05 [debug] 398217#398217: *17 free: 000061F3F26C5A20, unused: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *17 free: 000061F3F26BBD90, unused: 2736 +2025/08/19 13:55:05 [debug] 398217#398217: *17 free: 000061F3F26A90A0 +2025/08/19 13:55:05 [debug] 398217#398217: *17 hc free: 0000000000000000 +2025/08/19 13:55:05 [debug] 398217#398217: *17 hc busy: 0000000000000000 0 +2025/08/19 13:55:05 [debug] 398217#398217: *17 tcp_nodelay +2025/08/19 13:55:05 [debug] 398217#398217: *17 reusable connection: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *17 event timer add: 6: 65000:192903662 +2025/08/19 13:55:05 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:55:05 [debug] 398217#398217: worker cycle +2025/08/19 13:55:05 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:55:05 [debug] 398217#398217: epoll: fd:6 ev:2001 d:00007877C5D891E0 +2025/08/19 13:55:05 [debug] 398217#398217: *17 http keepalive handler +2025/08/19 13:55:05 [debug] 398217#398217: *17 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:55:05 [debug] 398217#398217: *17 recv: eof:1, avail:-1 +2025/08/19 13:55:05 [debug] 398217#398217: *17 recv: fd:6 0 of 1024 +2025/08/19 13:55:05 [info] 398217#398217: *17 client 127.0.0.1 closed keepalive connection +2025/08/19 13:55:05 [debug] 398217#398217: *17 close http connection: 6 +2025/08/19 13:55:05 [debug] 398217#398217: *17 event timer del: 6: 192903662 +2025/08/19 13:55:05 [debug] 398217#398217: *17 reusable connection: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *17 free: 000061F3F26A90A0 +2025/08/19 13:55:05 [debug] 398217#398217: *17 free: 000061F3F26A6840, unused: 136 +2025/08/19 13:55:05 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:55:05 [debug] 398217#398217: worker cycle +2025/08/19 13:55:05 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:55:05 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:55:05 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:55:05 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:55:05 [debug] 398217#398217: *18 accept: 127.0.0.1:51382 fd:6 +2025/08/19 13:55:05 [debug] 398217#398217: *18 event timer add: 6: 60000:192898940 +2025/08/19 13:55:05 [debug] 398217#398217: *18 reusable connection: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:55:05 [debug] 398217#398217: timer delta: 278 +2025/08/19 13:55:05 [debug] 398217#398217: worker cycle +2025/08/19 13:55:05 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:55:05 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http wait request handler +2025/08/19 13:55:05 [debug] 398217#398217: *18 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:55:05 [debug] 398217#398217: *18 recv: eof:0, avail:-1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 recv: fd:6 1024 of 1024 +2025/08/19 13:55:05 [debug] 398217#398217: *18 recv: avail:112 +2025/08/19 13:55:05 [debug] 398217#398217: *18 reusable connection: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http process request line +2025/08/19 13:55:05 [debug] 398217#398217: *18 http request line: "PUT /upload HTTP/1.1" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http uri: "/upload" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http args: "" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http exten: "" +2025/08/19 13:55:05 [debug] 398217#398217: *18 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http process request header line +2025/08/19 13:55:05 [debug] 398217#398217: *18 http header: "Host: localhost:9001" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http header: "Accept: */*" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIzODQ1N2M5OTc4OTZhYTU3YTUxM2VlOWNjNGM4ZTRiNzEwZDRmYThiNzQ4YjNhOTBkNWFjYTEzYzRmY2NjMWI0IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjYxMDUsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI3MzliYjFiYzNmM2MxNmVjYTBmY2QzMzY2MTFhOGUyMTY2NjExYmRhMGQ0NzdlNmZjODhmMzk2NzU4ZjNjNGE2Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTcwNSJdXSwiY29udGVudCI6IiIsInNpZyI6ImQ5MTdjNDJlYTcxZWVhMDUyNTUwZjdiOTlhMGZiNmNmNWQ4OTlkMDM4NDI3NWVjZjgwOTYxZGE0MzgzNjJmMzg1MzU2YTJhNTdjYzkwZGQ4YTI4MzhlNTM0YzU1MGZkMjIyYjM1OGI1MDY2MDA0ZGIyZTg1NzFjZGE5YWFmZmM4In0=" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http header: "Content-Type: text/plain" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http header: "Content-Disposition: attachment; filename="test_blob_1755626105.txt"" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http header: "Content-Length: 296" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http header done +2025/08/19 13:55:05 [debug] 398217#398217: *18 event timer del: 6: 192898940 +2025/08/19 13:55:05 [debug] 398217#398217: *18 generic phase: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 rewrite phase: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 test location: "/health" +2025/08/19 13:55:05 [debug] 398217#398217: *18 test location: "/upload" +2025/08/19 13:55:05 [debug] 398217#398217: *18 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:55:05 [debug] 398217#398217: *18 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 13:55:05 [debug] 398217#398217: *18 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 13:55:05 [debug] 398217#398217: *18 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 13:55:05 [debug] 398217#398217: *18 using configuration "/upload" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http cl:296 max:104857600 +2025/08/19 13:55:05 [debug] 398217#398217: *18 rewrite phase: 3 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "PUT" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script regex: "^(PUT)$" +2025/08/19 13:55:05 [notice] 398217#398217: *18 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script if +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script if: false +2025/08/19 13:55:05 [debug] 398217#398217: *18 post rewrite phase: 4 +2025/08/19 13:55:05 [debug] 398217#398217: *18 generic phase: 5 +2025/08/19 13:55:05 [debug] 398217#398217: *18 generic phase: 6 +2025/08/19 13:55:05 [debug] 398217#398217: *18 generic phase: 7 +2025/08/19 13:55:05 [debug] 398217#398217: *18 access phase: 8 +2025/08/19 13:55:05 [debug] 398217#398217: *18 access phase: 9 +2025/08/19 13:55:05 [debug] 398217#398217: *18 access phase: 10 +2025/08/19 13:55:05 [debug] 398217#398217: *18 post access phase: 11 +2025/08/19 13:55:05 [debug] 398217#398217: *18 generic phase: 12 +2025/08/19 13:55:05 [debug] 398217#398217: *18 generic phase: 13 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http client request body preread 184 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http request body content length filter +2025/08/19 13:55:05 [debug] 398217#398217: *18 http body new buf t:1 f:0 000061F3F26A93E8, pos 000061F3F26A93E8, size: 184 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http read client request body +2025/08/19 13:55:05 [debug] 398217#398217: *18 recv: eof:0, avail:112 +2025/08/19 13:55:05 [debug] 398217#398217: *18 recv: fd:6 112 of 112 +2025/08/19 13:55:05 [debug] 398217#398217: *18 recv: avail:0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http client request body recv 112 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http body new buf t:1 f:0 000061F3F26BC820, pos 000061F3F26BC820, size: 112 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http client request body rest 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http init upstream, client timer: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 13:55:05 [debug] 398217#398217: *18 posix_memalign: 000061F3F26B0140:4096 @16 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "QUERY_STRING" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "QUERY_STRING: " +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "REQUEST_METHOD" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "PUT" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "CONTENT_TYPE" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "text/plain" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "CONTENT_LENGTH" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "296" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "SCRIPT_NAME" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "/upload" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "REQUEST_URI" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "/upload" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "DOCUMENT_URI" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "/upload" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "DOCUMENT_ROOT" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "./blobs" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "SERVER_PROTOCOL" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "HTTP/1.1" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "REQUEST_SCHEME" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "http" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "GATEWAY_INTERFACE" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "CGI/1.1" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "SERVER_SOFTWARE" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "nginx/" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "1.18.0" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "REMOTE_ADDR" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "127.0.0.1" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "REMOTE_PORT" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "51382" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "REMOTE_PORT: 51382" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "SERVER_ADDR" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "127.0.0.1" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "SERVER_PORT" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "9001" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "SERVER_NAME" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "localhost" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "REDIRECT_STATUS" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "200" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "SCRIPT_FILENAME" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script var: "./blobs" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http script copy: "/ginxsom.fcgi" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIzODQ1N2M5OTc4OTZhYTU3YTUxM2VlOWNjNGM4ZTRiNzEwZDRmYThiNzQ4YjNhOTBkNWFjYTEzYzRmY2NjMWI0IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjYxMDUsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI3MzliYjFiYzNmM2MxNmVjYTBmY2QzMzY2MTFhOGUyMTY2NjExYmRhMGQ0NzdlNmZjODhmMzk2NzU4ZjNjNGE2Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTcwNSJdXSwiY29udGVudCI6IiIsInNpZyI6ImQ5MTdjNDJlYTcxZWVhMDUyNTUwZjdiOTlhMGZiNmNmNWQ4OTlkMDM4NDI3NWVjZjgwOTYxZGE0MzgzNjJmMzg1MzU2YTJhNTdjYzkwZGQ4YTI4MzhlNTM0YzU1MGZkMjIyYjM1OGI1MDY2MDA0ZGIyZTg1NzFjZGE5YWFmZmM4In0=" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755626105.txt"" +2025/08/19 13:55:05 [debug] 398217#398217: *18 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http cleanup add: 000061F3F26BCB70 +2025/08/19 13:55:05 [debug] 398217#398217: *18 get rr peer, try: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 stream socket 10 +2025/08/19 13:55:05 [debug] 398217#398217: *18 epoll add connection: fd:10 ev:80002005 +2025/08/19 13:55:05 [debug] 398217#398217: *18 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #19 +2025/08/19 13:55:05 [debug] 398217#398217: *18 connected +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream connect: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 posix_memalign: 000061F3F268FF20:128 @16 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream send request +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream send request body +2025/08/19 13:55:05 [debug] 398217#398217: *18 chain writer buf fl:0 s:1304 +2025/08/19 13:55:05 [debug] 398217#398217: *18 chain writer buf fl:0 s:184 +2025/08/19 13:55:05 [debug] 398217#398217: *18 chain writer buf fl:0 s:8 +2025/08/19 13:55:05 [debug] 398217#398217: *18 chain writer buf fl:0 s:112 +2025/08/19 13:55:05 [debug] 398217#398217: *18 chain writer buf fl:0 s:8 +2025/08/19 13:55:05 [debug] 398217#398217: *18 chain writer in: 000061F3F26BCC00 +2025/08/19 13:55:05 [debug] 398217#398217: *18 writev: 1616 of 1616 +2025/08/19 13:55:05 [debug] 398217#398217: *18 chain writer out: 0000000000000000 +2025/08/19 13:55:05 [debug] 398217#398217: *18 event timer add: 10: 60000:192898940 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http request count:2 blk:0 +2025/08/19 13:55:05 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:55:05 [debug] 398217#398217: worker cycle +2025/08/19 13:55:05 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:55:05 [debug] 398217#398217: epoll: fd:6 ev:0004 d:00007877C5D891E1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http run request: "/upload?" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream check client, write event:1, "/upload" +2025/08/19 13:55:05 [debug] 398217#398217: epoll: fd:10 ev:0004 d:00007877C5D892C8 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream request: "/upload?" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream dummy handler +2025/08/19 13:55:05 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:55:05 [debug] 398217#398217: worker cycle +2025/08/19 13:55:05 [debug] 398217#398217: epoll timer: 59999 +2025/08/19 13:55:05 [debug] 398217#398217: epoll: fd:10 ev:0005 d:00007877C5D892C8 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream request: "/upload?" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream process header +2025/08/19 13:55:05 [debug] 398217#398217: *18 malloc: 000061F3F26B1150:4096 +2025/08/19 13:55:05 [debug] 398217#398217: *18 recv: eof:0, avail:-1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 recv: fd:10 1664 of 4096 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 01 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 06 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 00 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 01 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 06 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 5D +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 03 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 00 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record length: 1629 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header: "LOG: [2025-08-19 13:55:05] PUT /upload - Auth: pending - Status: 0" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIzODQ1N2M5OTc4OTZhYTU3YTUxM2VlOWNjNGM4ZTRiNzEwZDRmYThiNzQ4YjNhOTBkNWFjYTEzYzRmY2NjMWI0IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjYxMDUsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI3MzliYjFiYzNmM2MxNmVjYTBmY2QzMzY2MTFhOGUyMTY2NjExYmRhMGQ0NzdlNmZjODhmMzk2NzU4ZjNjNGE2Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTcwNSJdXSwiY29udGVudCI6IiIsInNpZyI6ImQ5MTdjNDJlYTcxZWVhMDUyNTUwZjdiOTlhMGZiNmNmNWQ4OTlkMDM4NDI3NWVjZjgwOTYxZGE0MzgzNjJmMzg1MzU2YTJhNTdjYzkwZGQ4YTI4MzhlNTM0YzU1MGZkMjIyYjM1OGI1MDY2MDA0ZGIyZTg1NzFjZGE5YWFmZmM4In0=" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header: "DEBUG: Authenticating request - method: PUT, hash: null" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header: "DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiIzODQ1N2M5OTc4OTZhYTU3YTUxM2VlOWNjNGM4ZTRiNzEwZDRmYThiNzQ4YjNhOTBkNWFjYTEz..." +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header: "DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"38457c997896aa57a513ee9cc4c8e4b710d4fa8b748b3a90d5aca13c4fccc1b4","pubkey":"79be..." +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header: "DEBUG: Nostr event validation failed: -32 (Event has invalid public key)" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header: "Status: 401 Unauthorized" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header: "Content-Type: application/json" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi parser: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi header done +2025/08/19 13:55:05 [debug] 398217#398217: *18 posix_memalign: 000061F3F26B2160:4096 @16 +2025/08/19 13:55:05 [debug] 398217#398217: *18 HTTP/1.1 401 Unauthorized +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:55:05 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 +LOG: [2025-08-19 13:55:05] PUT /upload - Auth: pending - Status: 0 +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIzODQ1N2M5OTc4OTZhYTU3YTUxM2VlOWNjNGM4ZTRiNzEwZDRmYThiNzQ4YjNhOTBkNWFjYTEzYzRmY2NjMWI0IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjYxMDUsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI3MzliYjFiYzNmM2MxNmVjYTBmY2QzMzY2MTFhOGUyMTY2NjExYmRhMGQ0NzdlNmZjODhmMzk2NzU4ZjNjNGE2Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTcwNSJdXSwiY29udGVudCI6IiIsInNpZyI6ImQ5MTdjNDJlYTcxZWVhMDUyNTUwZjdiOTlhMGZiNmNmNWQ4OTlkMDM4NDI3NWVjZjgwOTYxZGE0MzgzNjJmMzg1MzU2YTJhNTdjYzkwZGQ4YTI4MzhlNTM0YzU1MGZkMjIyYjM1OGI1MDY2MDA0ZGIyZTg1NzFjZGE5YWFmZmM4In0= +DEBUG: Authenticating request - method: PUT, hash: null +DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiIzODQ1N2M5OTc4OTZhYTU3YTUxM2VlOWNjNGM4ZTRiNzEwZDRmYThiNzQ4YjNhOTBkNWFjYTEz... +DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"38457c997896aa57a513ee9cc4c8e4b710d4fa8b748b3a90d5aca13c4fccc1b4","pubkey":"79be... +DEBUG: Nostr event validation failed: -32 (Event has invalid public key) + +2025/08/19 13:55:05 [debug] 398217#398217: *18 write new buf t:1 f:0 000061F3F26B2180, pos 000061F3F26B2180, size: 1493 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http write filter: l:0 f:0 s:1493 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http write filter limit 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 writev: 1493 of 1493 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http write filter 0000000000000000 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http cacheable: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream process upstream +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe read upstream: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe preread: 284 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe buf free s:0 t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 284 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe length: -1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe write downstream: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe write busy: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe write: out:0000000000000000, f:0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe read upstream: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe buf free s:0 t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 284 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe length: -1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 event timer: 10, old: 192898940, new: 192898941 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream request: "/upload?" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream dummy handler +2025/08/19 13:55:05 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:55:05 [debug] 398217#398217: worker cycle +2025/08/19 13:55:05 [debug] 398217#398217: epoll timer: 59999 +2025/08/19 13:55:05 [debug] 398217#398217: epoll: fd:10 ev:2005 d:00007877C5D892C8 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream request: "/upload?" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream process upstream +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe read upstream: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 readv: eof:1, avail:-1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 readv: 1, last:2432 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe recv chain: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe buf free s:0 t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 284 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe length: -1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 input buf #0 000061F3F26B16B4 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 01 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 06 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 00 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 01 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 00 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 00 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 00 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 00 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record length: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi closed stdout +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 01 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 03 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 00 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 01 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 00 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 08 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 00 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record byte: 00 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi record length: 8 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http fastcgi sent end request +2025/08/19 13:55:05 [debug] 398217#398217: *18 input buf 000061F3F26B16B4 257 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe write downstream: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe write downstream flush in +2025/08/19 13:55:05 [debug] 398217#398217: *18 http output filter "/upload?" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http copy filter: "/upload?" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http postpone filter "/upload?" 000061F3F26BCBE0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http chunk: 257 +2025/08/19 13:55:05 [debug] 398217#398217: *18 write new buf t:1 f:0 000061F3F26B10F8, pos 000061F3F26B10F8, size: 5 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 write new buf t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 257 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http write filter: l:0 f:0 s:264 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http copy filter: 0 "/upload?" +2025/08/19 13:55:05 [debug] 398217#398217: *18 pipe write downstream done +2025/08/19 13:55:05 [debug] 398217#398217: *18 event timer: 10, old: 192898940, new: 192898941 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream exit: 0000000000000000 +2025/08/19 13:55:05 [debug] 398217#398217: *18 finalize http upstream request: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 finalize http fastcgi request +2025/08/19 13:55:05 [debug] 398217#398217: *18 free rr peer 1 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 close http upstream connection: 10 +2025/08/19 13:55:05 [debug] 398217#398217: *18 free: 000061F3F268FF20, unused: 48 +2025/08/19 13:55:05 [debug] 398217#398217: *18 event timer del: 10: 192898940 +2025/08/19 13:55:05 [debug] 398217#398217: *18 reusable connection: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http upstream temp fd: -1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http output filter "/upload?" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http copy filter: "/upload?" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http postpone filter "/upload?" 00007FFE4490F9F0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http chunk: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 write old buf t:1 f:0 000061F3F26B10F8, pos 000061F3F26B10F8, size: 5 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 write old buf t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 257 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 write old buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E5, size: 5 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http write filter: l:1 f:0 s:269 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http write filter limit 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 writev: 269 of 269 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http write filter 0000000000000000 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http copy filter: 0 "/upload?" +2025/08/19 13:55:05 [debug] 398217#398217: *18 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 set http keepalive handler +2025/08/19 13:55:05 [debug] 398217#398217: *18 http close request +2025/08/19 13:55:05 [debug] 398217#398217: *18 http log handler +2025/08/19 13:55:05 [debug] 398217#398217: *18 free: 000061F3F26B1150 +2025/08/19 13:55:05 [debug] 398217#398217: *18 free: 000061F3F26C5A20, unused: 3 +2025/08/19 13:55:05 [debug] 398217#398217: *18 free: 000061F3F26BBD90, unused: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 free: 000061F3F26B0140, unused: 54 +2025/08/19 13:55:05 [debug] 398217#398217: *18 free: 000061F3F26B2160, unused: 2202 +2025/08/19 13:55:05 [debug] 398217#398217: *18 free: 000061F3F26A90A0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 hc free: 0000000000000000 +2025/08/19 13:55:05 [debug] 398217#398217: *18 hc busy: 0000000000000000 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 tcp_nodelay +2025/08/19 13:55:05 [debug] 398217#398217: *18 reusable connection: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 event timer add: 6: 65000:192903941 +2025/08/19 13:55:05 [debug] 398217#398217: *18 post event 000061F3F26F7760 +2025/08/19 13:55:05 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:55:05 [debug] 398217#398217: posted event 000061F3F26F7760 +2025/08/19 13:55:05 [debug] 398217#398217: *18 delete posted event 000061F3F26F7760 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http keepalive handler +2025/08/19 13:55:05 [debug] 398217#398217: *18 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:55:05 [debug] 398217#398217: *18 recv: eof:0, avail:0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 free: 000061F3F26A90A0 +2025/08/19 13:55:05 [debug] 398217#398217: worker cycle +2025/08/19 13:55:05 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:55:05 [debug] 398217#398217: epoll: fd:6 ev:2005 d:00007877C5D891E1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 http keepalive handler +2025/08/19 13:55:05 [debug] 398217#398217: *18 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:55:05 [debug] 398217#398217: *18 recv: eof:1, avail:-1 +2025/08/19 13:55:05 [debug] 398217#398217: *18 recv: fd:6 0 of 1024 +2025/08/19 13:55:05 [info] 398217#398217: *18 client 127.0.0.1 closed keepalive connection +2025/08/19 13:55:05 [debug] 398217#398217: *18 close http connection: 6 +2025/08/19 13:55:05 [debug] 398217#398217: *18 event timer del: 6: 192903941 +2025/08/19 13:55:05 [debug] 398217#398217: *18 reusable connection: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 free: 000061F3F26A90A0 +2025/08/19 13:55:05 [debug] 398217#398217: *18 free: 000061F3F26A6840, unused: 120 +2025/08/19 13:55:05 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:55:05 [debug] 398217#398217: worker cycle +2025/08/19 13:55:05 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:55:05 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:55:05 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:55:05 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:55:05 [debug] 398217#398217: *20 accept: 127.0.0.1:51398 fd:6 +2025/08/19 13:55:05 [debug] 398217#398217: *20 event timer add: 6: 60000:192898946 +2025/08/19 13:55:05 [debug] 398217#398217: *20 reusable connection: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *20 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:55:05 [debug] 398217#398217: timer delta: 5 +2025/08/19 13:55:05 [debug] 398217#398217: worker cycle +2025/08/19 13:55:05 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:55:05 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 http wait request handler +2025/08/19 13:55:05 [debug] 398217#398217: *20 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:55:05 [debug] 398217#398217: *20 recv: eof:0, avail:-1 +2025/08/19 13:55:05 [debug] 398217#398217: *20 recv: fd:6 142 of 1024 +2025/08/19 13:55:05 [debug] 398217#398217: *20 reusable connection: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:55:05 [debug] 398217#398217: *20 http process request line +2025/08/19 13:55:05 [debug] 398217#398217: *20 http request line: "GET /739bb1bc3f3c16eca0fcd336611a8e2166611bda0d477e6fc88f396758f3c4a6 HTTP/1.1" +2025/08/19 13:55:05 [debug] 398217#398217: *20 http uri: "/739bb1bc3f3c16eca0fcd336611a8e2166611bda0d477e6fc88f396758f3c4a6" +2025/08/19 13:55:05 [debug] 398217#398217: *20 http args: "" +2025/08/19 13:55:05 [debug] 398217#398217: *20 http exten: "" +2025/08/19 13:55:05 [debug] 398217#398217: *20 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:55:05 [debug] 398217#398217: *20 http process request header line +2025/08/19 13:55:05 [debug] 398217#398217: *20 http header: "Host: localhost:9001" +2025/08/19 13:55:05 [debug] 398217#398217: *20 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:55:05 [debug] 398217#398217: *20 http header: "Accept: */*" +2025/08/19 13:55:05 [debug] 398217#398217: *20 http header done +2025/08/19 13:55:05 [debug] 398217#398217: *20 event timer del: 6: 192898946 +2025/08/19 13:55:05 [debug] 398217#398217: *20 generic phase: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 rewrite phase: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *20 test location: "/health" +2025/08/19 13:55:05 [debug] 398217#398217: *20 test location: "/debug/list" +2025/08/19 13:55:05 [debug] 398217#398217: *20 test location: "/" +2025/08/19 13:55:05 [debug] 398217#398217: *20 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:55:05 [debug] 398217#398217: *20 using configuration "^/([a-f0-9]{64}).*$" +2025/08/19 13:55:05 [debug] 398217#398217: *20 http cl:-1 max:104857600 +2025/08/19 13:55:05 [debug] 398217#398217: *20 rewrite phase: 3 +2025/08/19 13:55:05 [debug] 398217#398217: *20 http script var +2025/08/19 13:55:05 [debug] 398217#398217: *20 http script var: "GET" +2025/08/19 13:55:05 [debug] 398217#398217: *20 http script value: "DELETE" +2025/08/19 13:55:05 [debug] 398217#398217: *20 http script not equal +2025/08/19 13:55:05 [debug] 398217#398217: *20 http script if +2025/08/19 13:55:05 [debug] 398217#398217: *20 http finalize request: 404, "/739bb1bc3f3c16eca0fcd336611a8e2166611bda0d477e6fc88f396758f3c4a6?" a:1, c:1 +2025/08/19 13:55:05 [debug] 398217#398217: *20 http special response: 404, "/739bb1bc3f3c16eca0fcd336611a8e2166611bda0d477e6fc88f396758f3c4a6?" +2025/08/19 13:55:05 [debug] 398217#398217: *20 http set discard body +2025/08/19 13:55:05 [debug] 398217#398217: *20 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:55:05 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 13:55:05 [debug] 398217#398217: *20 write new buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 164 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 http write filter: l:0 f:0 s:164 +2025/08/19 13:55:05 [debug] 398217#398217: *20 http output filter "/739bb1bc3f3c16eca0fcd336611a8e2166611bda0d477e6fc88f396758f3c4a6?" +2025/08/19 13:55:05 [debug] 398217#398217: *20 http copy filter: "/739bb1bc3f3c16eca0fcd336611a8e2166611bda0d477e6fc88f396758f3c4a6?" +2025/08/19 13:55:05 [debug] 398217#398217: *20 http postpone filter "/739bb1bc3f3c16eca0fcd336611a8e2166611bda0d477e6fc88f396758f3c4a6?" 000061F3F26BC300 +2025/08/19 13:55:05 [debug] 398217#398217: *20 write old buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 164 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 write new buf t:0 f:0 0000000000000000, pos 000061F3D7DA4580, size: 100 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 write new buf t:0 f:0 0000000000000000, pos 000061F3D7DA4C80, size: 62 file: 0, size: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 http write filter: l:1 f:0 s:326 +2025/08/19 13:55:05 [debug] 398217#398217: *20 http write filter limit 0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 writev: 326 of 326 +2025/08/19 13:55:05 [debug] 398217#398217: *20 http write filter 0000000000000000 +2025/08/19 13:55:05 [debug] 398217#398217: *20 http copy filter: 0 "/739bb1bc3f3c16eca0fcd336611a8e2166611bda0d477e6fc88f396758f3c4a6?" +2025/08/19 13:55:05 [debug] 398217#398217: *20 http finalize request: 0, "/739bb1bc3f3c16eca0fcd336611a8e2166611bda0d477e6fc88f396758f3c4a6?" a:1, c:1 +2025/08/19 13:55:05 [debug] 398217#398217: *20 set http keepalive handler +2025/08/19 13:55:05 [debug] 398217#398217: *20 http close request +2025/08/19 13:55:05 [debug] 398217#398217: *20 http log handler +2025/08/19 13:55:05 [debug] 398217#398217: *20 free: 000061F3F26C5A20, unused: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 free: 000061F3F26BBD90, unused: 2456 +2025/08/19 13:55:05 [debug] 398217#398217: *20 free: 000061F3F26A90A0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 hc free: 0000000000000000 +2025/08/19 13:55:05 [debug] 398217#398217: *20 hc busy: 0000000000000000 0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 tcp_nodelay +2025/08/19 13:55:05 [debug] 398217#398217: *20 reusable connection: 1 +2025/08/19 13:55:05 [debug] 398217#398217: *20 event timer add: 6: 65000:192903946 +2025/08/19 13:55:05 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:55:05 [debug] 398217#398217: worker cycle +2025/08/19 13:55:05 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:55:05 [debug] 398217#398217: epoll: fd:6 ev:2001 d:00007877C5D891E0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 http keepalive handler +2025/08/19 13:55:05 [debug] 398217#398217: *20 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:55:05 [debug] 398217#398217: *20 recv: eof:1, avail:-1 +2025/08/19 13:55:05 [debug] 398217#398217: *20 recv: fd:6 0 of 1024 +2025/08/19 13:55:05 [info] 398217#398217: *20 client 127.0.0.1 closed keepalive connection +2025/08/19 13:55:05 [debug] 398217#398217: *20 close http connection: 6 +2025/08/19 13:55:05 [debug] 398217#398217: *20 event timer del: 6: 192903946 +2025/08/19 13:55:05 [debug] 398217#398217: *20 reusable connection: 0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 free: 000061F3F26A90A0 +2025/08/19 13:55:05 [debug] 398217#398217: *20 free: 000061F3F26A6840, unused: 136 +2025/08/19 13:55:05 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:55:05 [debug] 398217#398217: worker cycle +2025/08/19 13:55:05 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:56:03 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:56:03 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:56:03 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:56:03 [debug] 398217#398217: *21 accept: 127.0.0.1:45856 fd:6 +2025/08/19 13:56:03 [debug] 398217#398217: *21 event timer add: 6: 60000:192956173 +2025/08/19 13:56:03 [debug] 398217#398217: *21 reusable connection: 1 +2025/08/19 13:56:03 [debug] 398217#398217: *21 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:56:03 [debug] 398217#398217: timer delta: 57227 +2025/08/19 13:56:03 [debug] 398217#398217: worker cycle +2025/08/19 13:56:03 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:56:03 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E1 +2025/08/19 13:56:03 [debug] 398217#398217: *21 http wait request handler +2025/08/19 13:56:03 [debug] 398217#398217: *21 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:56:03 [debug] 398217#398217: *21 recv: eof:0, avail:-1 +2025/08/19 13:56:03 [debug] 398217#398217: *21 recv: fd:6 84 of 1024 +2025/08/19 13:56:03 [debug] 398217#398217: *21 reusable connection: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *21 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:56:03 [debug] 398217#398217: *21 http process request line +2025/08/19 13:56:03 [debug] 398217#398217: *21 http request line: "GET /health HTTP/1.1" +2025/08/19 13:56:03 [debug] 398217#398217: *21 http uri: "/health" +2025/08/19 13:56:03 [debug] 398217#398217: *21 http args: "" +2025/08/19 13:56:03 [debug] 398217#398217: *21 http exten: "" +2025/08/19 13:56:03 [debug] 398217#398217: *21 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:56:03 [debug] 398217#398217: *21 http process request header line +2025/08/19 13:56:03 [debug] 398217#398217: *21 http header: "Host: localhost:9001" +2025/08/19 13:56:03 [debug] 398217#398217: *21 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:56:03 [debug] 398217#398217: *21 http header: "Accept: */*" +2025/08/19 13:56:03 [debug] 398217#398217: *21 http header done +2025/08/19 13:56:03 [debug] 398217#398217: *21 event timer del: 6: 192956173 +2025/08/19 13:56:03 [debug] 398217#398217: *21 generic phase: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *21 rewrite phase: 1 +2025/08/19 13:56:03 [debug] 398217#398217: *21 test location: "/health" +2025/08/19 13:56:03 [debug] 398217#398217: *21 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:56:03 [debug] 398217#398217: *21 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 13:56:03 [debug] 398217#398217: *21 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 13:56:03 [debug] 398217#398217: *21 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 13:56:03 [debug] 398217#398217: *21 using configuration "/health" +2025/08/19 13:56:03 [debug] 398217#398217: *21 http cl:-1 max:104857600 +2025/08/19 13:56:03 [debug] 398217#398217: *21 rewrite phase: 3 +2025/08/19 13:56:03 [debug] 398217#398217: *21 http set discard body +2025/08/19 13:56:03 [debug] 398217#398217: *21 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:56:03 GMT +Content-Type: application/octet-stream +Content-Length: 3 +Connection: keep-alive +Content-Type: text/plain + +2025/08/19 13:56:03 [debug] 398217#398217: *21 write new buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 196 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *21 http write filter: l:0 f:0 s:196 +2025/08/19 13:56:03 [debug] 398217#398217: *21 http output filter "/health?" +2025/08/19 13:56:03 [debug] 398217#398217: *21 http copy filter: "/health?" +2025/08/19 13:56:03 [debug] 398217#398217: *21 http postpone filter "/health?" 00007FFE4490F940 +2025/08/19 13:56:03 [debug] 398217#398217: *21 write old buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 196 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *21 write new buf t:0 f:0 0000000000000000, pos 000061F3F26E3B32, size: 3 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *21 http write filter: l:1 f:0 s:199 +2025/08/19 13:56:03 [debug] 398217#398217: *21 http write filter limit 0 +2025/08/19 13:56:03 [debug] 398217#398217: *21 writev: 199 of 199 +2025/08/19 13:56:03 [debug] 398217#398217: *21 http write filter 0000000000000000 +2025/08/19 13:56:03 [debug] 398217#398217: *21 http copy filter: 0 "/health?" +2025/08/19 13:56:03 [debug] 398217#398217: *21 http finalize request: 0, "/health?" a:1, c:1 +2025/08/19 13:56:03 [debug] 398217#398217: *21 set http keepalive handler +2025/08/19 13:56:03 [debug] 398217#398217: *21 http close request +2025/08/19 13:56:03 [debug] 398217#398217: *21 http log handler +2025/08/19 13:56:03 [debug] 398217#398217: *21 free: 000061F3F26C5A20, unused: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *21 free: 000061F3F26BBD90, unused: 2736 +2025/08/19 13:56:03 [debug] 398217#398217: *21 free: 000061F3F26A90A0 +2025/08/19 13:56:03 [debug] 398217#398217: *21 hc free: 0000000000000000 +2025/08/19 13:56:03 [debug] 398217#398217: *21 hc busy: 0000000000000000 0 +2025/08/19 13:56:03 [debug] 398217#398217: *21 tcp_nodelay +2025/08/19 13:56:03 [debug] 398217#398217: *21 reusable connection: 1 +2025/08/19 13:56:03 [debug] 398217#398217: *21 event timer add: 6: 65000:192961174 +2025/08/19 13:56:03 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:56:03 [debug] 398217#398217: worker cycle +2025/08/19 13:56:03 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:56:03 [debug] 398217#398217: epoll: fd:6 ev:2001 d:00007877C5D891E1 +2025/08/19 13:56:03 [debug] 398217#398217: *21 http keepalive handler +2025/08/19 13:56:03 [debug] 398217#398217: *21 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:56:03 [debug] 398217#398217: *21 recv: eof:1, avail:-1 +2025/08/19 13:56:03 [debug] 398217#398217: *21 recv: fd:6 0 of 1024 +2025/08/19 13:56:03 [info] 398217#398217: *21 client 127.0.0.1 closed keepalive connection +2025/08/19 13:56:03 [debug] 398217#398217: *21 close http connection: 6 +2025/08/19 13:56:03 [debug] 398217#398217: *21 event timer del: 6: 192961174 +2025/08/19 13:56:03 [debug] 398217#398217: *21 reusable connection: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *21 free: 000061F3F26A90A0 +2025/08/19 13:56:03 [debug] 398217#398217: *21 free: 000061F3F26A6840, unused: 136 +2025/08/19 13:56:03 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:56:03 [debug] 398217#398217: worker cycle +2025/08/19 13:56:03 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:56:03 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:56:03 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:56:03 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:56:03 [debug] 398217#398217: *22 accept: 127.0.0.1:45866 fd:6 +2025/08/19 13:56:03 [debug] 398217#398217: *22 event timer add: 6: 60000:192956446 +2025/08/19 13:56:03 [debug] 398217#398217: *22 reusable connection: 1 +2025/08/19 13:56:03 [debug] 398217#398217: *22 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:56:03 [debug] 398217#398217: timer delta: 272 +2025/08/19 13:56:03 [debug] 398217#398217: worker cycle +2025/08/19 13:56:03 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:56:03 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http wait request handler +2025/08/19 13:56:03 [debug] 398217#398217: *22 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:56:03 [debug] 398217#398217: *22 recv: eof:0, avail:-1 +2025/08/19 13:56:03 [debug] 398217#398217: *22 recv: fd:6 1024 of 1024 +2025/08/19 13:56:03 [debug] 398217#398217: *22 recv: avail:112 +2025/08/19 13:56:03 [debug] 398217#398217: *22 reusable connection: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http process request line +2025/08/19 13:56:03 [debug] 398217#398217: *22 http request line: "PUT /upload HTTP/1.1" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http uri: "/upload" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http args: "" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http exten: "" +2025/08/19 13:56:03 [debug] 398217#398217: *22 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http process request header line +2025/08/19 13:56:03 [debug] 398217#398217: *22 http header: "Host: localhost:9001" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http header: "Accept: */*" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIyYWZmODJiZGNjODllYWQzOGExOGU2YmRkZWY3MjgwMjU0NWMzYjU2MDJiNTUyMzEwODBiOGQwNzE2NGMwOTcyIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjYxNjMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJjZWM1YWMyODhlN2MyODU1ZGYyN2QwOTA3YTdlMDVhNjcyMWY5ODgzNzU4NmE0NTJkYmM5MTdkOTQ5NDEzNWNjIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTc2MyJdXSwiY29udGVudCI6IiIsInNpZyI6ImM5NGUyZTcyMTQxMDc0N2I5NDIxZTRlYzUxOTE1M2E1OWNhYjY2Yjk4MmI4OTA0Zjk5YjQ4OTk1OTYyMmU3N2YwMjNmYzczODAxNDI1MmU3MGRkN2UyY2M5MGQ2YjFlZmJhNzExNTE1MjlkMDcyYmIwZGNmMGE3YjgyN2FiN2RjIn0=" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http header: "Content-Type: text/plain" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http header: "Content-Disposition: attachment; filename="test_blob_1755626163.txt"" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http header: "Content-Length: 296" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http header done +2025/08/19 13:56:03 [debug] 398217#398217: *22 event timer del: 6: 192956446 +2025/08/19 13:56:03 [debug] 398217#398217: *22 generic phase: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 rewrite phase: 1 +2025/08/19 13:56:03 [debug] 398217#398217: *22 test location: "/health" +2025/08/19 13:56:03 [debug] 398217#398217: *22 test location: "/upload" +2025/08/19 13:56:03 [debug] 398217#398217: *22 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:56:03 [debug] 398217#398217: *22 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 13:56:03 [debug] 398217#398217: *22 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 13:56:03 [debug] 398217#398217: *22 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 13:56:03 [debug] 398217#398217: *22 using configuration "/upload" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http cl:296 max:104857600 +2025/08/19 13:56:03 [debug] 398217#398217: *22 rewrite phase: 3 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "PUT" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script regex: "^(PUT)$" +2025/08/19 13:56:03 [notice] 398217#398217: *22 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script if +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script if: false +2025/08/19 13:56:03 [debug] 398217#398217: *22 post rewrite phase: 4 +2025/08/19 13:56:03 [debug] 398217#398217: *22 generic phase: 5 +2025/08/19 13:56:03 [debug] 398217#398217: *22 generic phase: 6 +2025/08/19 13:56:03 [debug] 398217#398217: *22 generic phase: 7 +2025/08/19 13:56:03 [debug] 398217#398217: *22 access phase: 8 +2025/08/19 13:56:03 [debug] 398217#398217: *22 access phase: 9 +2025/08/19 13:56:03 [debug] 398217#398217: *22 access phase: 10 +2025/08/19 13:56:03 [debug] 398217#398217: *22 post access phase: 11 +2025/08/19 13:56:03 [debug] 398217#398217: *22 generic phase: 12 +2025/08/19 13:56:03 [debug] 398217#398217: *22 generic phase: 13 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http client request body preread 184 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http request body content length filter +2025/08/19 13:56:03 [debug] 398217#398217: *22 http body new buf t:1 f:0 000061F3F26A93E8, pos 000061F3F26A93E8, size: 184 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http read client request body +2025/08/19 13:56:03 [debug] 398217#398217: *22 recv: eof:0, avail:112 +2025/08/19 13:56:03 [debug] 398217#398217: *22 recv: fd:6 112 of 112 +2025/08/19 13:56:03 [debug] 398217#398217: *22 recv: avail:0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http client request body recv 112 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http body new buf t:1 f:0 000061F3F26BC820, pos 000061F3F26BC820, size: 112 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http client request body rest 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http init upstream, client timer: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 13:56:03 [debug] 398217#398217: *22 posix_memalign: 000061F3F26B0140:4096 @16 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "QUERY_STRING" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "QUERY_STRING: " +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "REQUEST_METHOD" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "PUT" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "CONTENT_TYPE" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "text/plain" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "CONTENT_LENGTH" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "296" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "SCRIPT_NAME" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "/upload" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "REQUEST_URI" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "/upload" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "DOCUMENT_URI" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "/upload" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "DOCUMENT_ROOT" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "./blobs" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "SERVER_PROTOCOL" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "HTTP/1.1" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "REQUEST_SCHEME" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "http" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "GATEWAY_INTERFACE" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "CGI/1.1" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "SERVER_SOFTWARE" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "nginx/" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "1.18.0" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "REMOTE_ADDR" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "127.0.0.1" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "REMOTE_PORT" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "45866" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "REMOTE_PORT: 45866" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "SERVER_ADDR" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "127.0.0.1" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "SERVER_PORT" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "9001" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "SERVER_NAME" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "localhost" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "REDIRECT_STATUS" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "200" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "SCRIPT_FILENAME" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script var: "./blobs" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http script copy: "/ginxsom.fcgi" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIyYWZmODJiZGNjODllYWQzOGExOGU2YmRkZWY3MjgwMjU0NWMzYjU2MDJiNTUyMzEwODBiOGQwNzE2NGMwOTcyIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjYxNjMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJjZWM1YWMyODhlN2MyODU1ZGYyN2QwOTA3YTdlMDVhNjcyMWY5ODgzNzU4NmE0NTJkYmM5MTdkOTQ5NDEzNWNjIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTc2MyJdXSwiY29udGVudCI6IiIsInNpZyI6ImM5NGUyZTcyMTQxMDc0N2I5NDIxZTRlYzUxOTE1M2E1OWNhYjY2Yjk4MmI4OTA0Zjk5YjQ4OTk1OTYyMmU3N2YwMjNmYzczODAxNDI1MmU3MGRkN2UyY2M5MGQ2YjFlZmJhNzExNTE1MjlkMDcyYmIwZGNmMGE3YjgyN2FiN2RjIn0=" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755626163.txt"" +2025/08/19 13:56:03 [debug] 398217#398217: *22 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http cleanup add: 000061F3F26BCB70 +2025/08/19 13:56:03 [debug] 398217#398217: *22 get rr peer, try: 1 +2025/08/19 13:56:03 [debug] 398217#398217: *22 stream socket 10 +2025/08/19 13:56:03 [debug] 398217#398217: *22 epoll add connection: fd:10 ev:80002005 +2025/08/19 13:56:03 [debug] 398217#398217: *22 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #23 +2025/08/19 13:56:03 [debug] 398217#398217: *22 connected +2025/08/19 13:56:03 [debug] 398217#398217: *22 http upstream connect: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 posix_memalign: 000061F3F268FF20:128 @16 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http upstream send request +2025/08/19 13:56:03 [debug] 398217#398217: *22 http upstream send request body +2025/08/19 13:56:03 [debug] 398217#398217: *22 chain writer buf fl:0 s:1304 +2025/08/19 13:56:03 [debug] 398217#398217: *22 chain writer buf fl:0 s:184 +2025/08/19 13:56:03 [debug] 398217#398217: *22 chain writer buf fl:0 s:8 +2025/08/19 13:56:03 [debug] 398217#398217: *22 chain writer buf fl:0 s:112 +2025/08/19 13:56:03 [debug] 398217#398217: *22 chain writer buf fl:0 s:8 +2025/08/19 13:56:03 [debug] 398217#398217: *22 chain writer in: 000061F3F26BCC00 +2025/08/19 13:56:03 [debug] 398217#398217: *22 writev: 1616 of 1616 +2025/08/19 13:56:03 [debug] 398217#398217: *22 chain writer out: 0000000000000000 +2025/08/19 13:56:03 [debug] 398217#398217: *22 event timer add: 10: 60000:192956446 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http request count:2 blk:0 +2025/08/19 13:56:03 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:56:03 [debug] 398217#398217: worker cycle +2025/08/19 13:56:03 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:56:03 [debug] 398217#398217: epoll: fd:6 ev:0004 d:00007877C5D891E0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http run request: "/upload?" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http upstream check client, write event:1, "/upload" +2025/08/19 13:56:03 [debug] 398217#398217: epoll: fd:10 ev:0004 d:00007877C5D892C9 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http upstream request: "/upload?" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http upstream dummy handler +2025/08/19 13:56:03 [debug] 398217#398217: timer delta: 2 +2025/08/19 13:56:03 [debug] 398217#398217: worker cycle +2025/08/19 13:56:03 [debug] 398217#398217: epoll timer: 59998 +2025/08/19 13:56:03 [debug] 398217#398217: epoll: fd:10 ev:2005 d:00007877C5D892C9 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http upstream request: "/upload?" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http upstream process header +2025/08/19 13:56:03 [debug] 398217#398217: *22 malloc: 000061F3F26B1150:4096 +2025/08/19 13:56:03 [debug] 398217#398217: *22 recv: eof:1, avail:-1 +2025/08/19 13:56:03 [debug] 398217#398217: *22 recv: fd:10 1664 of 4096 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 01 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 06 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 00 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 01 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 06 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 5D +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 03 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 00 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record length: 1629 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header: "LOG: [2025-08-19 13:56:03] PUT /upload - Auth: pending - Status: 0" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIyYWZmODJiZGNjODllYWQzOGExOGU2YmRkZWY3MjgwMjU0NWMzYjU2MDJiNTUyMzEwODBiOGQwNzE2NGMwOTcyIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjYxNjMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJjZWM1YWMyODhlN2MyODU1ZGYyN2QwOTA3YTdlMDVhNjcyMWY5ODgzNzU4NmE0NTJkYmM5MTdkOTQ5NDEzNWNjIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTc2MyJdXSwiY29udGVudCI6IiIsInNpZyI6ImM5NGUyZTcyMTQxMDc0N2I5NDIxZTRlYzUxOTE1M2E1OWNhYjY2Yjk4MmI4OTA0Zjk5YjQ4OTk1OTYyMmU3N2YwMjNmYzczODAxNDI1MmU3MGRkN2UyY2M5MGQ2YjFlZmJhNzExNTE1MjlkMDcyYmIwZGNmMGE3YjgyN2FiN2RjIn0=" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header: "DEBUG: Authenticating request - method: PUT, hash: null" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header: "DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiIyYWZmODJiZGNjODllYWQzOGExOGU2YmRkZWY3MjgwMjU0NWMzYjU2MDJiNTUyMzEwODBiOGQw..." +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header: "DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"2aff82bdcc89ead38a18e6bddef72802545c3b5602b55231080b8d07164c0972","pubkey":"79be..." +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header: "DEBUG: Nostr event validation failed: -32 (Event has invalid public key)" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header: "Status: 401 Unauthorized" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header: "Content-Type: application/json" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi parser: 1 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi header done +2025/08/19 13:56:03 [debug] 398217#398217: *22 posix_memalign: 000061F3F26B2160:4096 @16 +2025/08/19 13:56:03 [debug] 398217#398217: *22 HTTP/1.1 401 Unauthorized +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:56:03 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 +LOG: [2025-08-19 13:56:03] PUT /upload - Auth: pending - Status: 0 +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIyYWZmODJiZGNjODllYWQzOGExOGU2YmRkZWY3MjgwMjU0NWMzYjU2MDJiNTUyMzEwODBiOGQwNzE2NGMwOTcyIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjYxNjMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJjZWM1YWMyODhlN2MyODU1ZGYyN2QwOTA3YTdlMDVhNjcyMWY5ODgzNzU4NmE0NTJkYmM5MTdkOTQ5NDEzNWNjIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTc2MyJdXSwiY29udGVudCI6IiIsInNpZyI6ImM5NGUyZTcyMTQxMDc0N2I5NDIxZTRlYzUxOTE1M2E1OWNhYjY2Yjk4MmI4OTA0Zjk5YjQ4OTk1OTYyMmU3N2YwMjNmYzczODAxNDI1MmU3MGRkN2UyY2M5MGQ2YjFlZmJhNzExNTE1MjlkMDcyYmIwZGNmMGE3YjgyN2FiN2RjIn0= +DEBUG: Authenticating request - method: PUT, hash: null +DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiIyYWZmODJiZGNjODllYWQzOGExOGU2YmRkZWY3MjgwMjU0NWMzYjU2MDJiNTUyMzEwODBiOGQw... +DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"2aff82bdcc89ead38a18e6bddef72802545c3b5602b55231080b8d07164c0972","pubkey":"79be... +DEBUG: Nostr event validation failed: -32 (Event has invalid public key) + +2025/08/19 13:56:03 [debug] 398217#398217: *22 write new buf t:1 f:0 000061F3F26B2180, pos 000061F3F26B2180, size: 1493 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http write filter: l:0 f:0 s:1493 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http write filter limit 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 writev: 1493 of 1493 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http write filter 0000000000000000 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http cacheable: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http upstream process upstream +2025/08/19 13:56:03 [debug] 398217#398217: *22 pipe read upstream: 1 +2025/08/19 13:56:03 [debug] 398217#398217: *22 pipe preread: 284 +2025/08/19 13:56:03 [debug] 398217#398217: *22 readv: eof:1, avail:0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 readv: 1, last:2432 +2025/08/19 13:56:03 [debug] 398217#398217: *22 pipe recv chain: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 pipe buf free s:0 t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 284 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 pipe length: -1 +2025/08/19 13:56:03 [debug] 398217#398217: *22 input buf #0 000061F3F26B16B4 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 01 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 06 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 00 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 01 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 00 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 00 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 00 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 00 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record length: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi closed stdout +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 01 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 03 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 00 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 01 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 00 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 08 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 00 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record byte: 00 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi record length: 8 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http fastcgi sent end request +2025/08/19 13:56:03 [debug] 398217#398217: *22 input buf 000061F3F26B16B4 257 +2025/08/19 13:56:03 [debug] 398217#398217: *22 pipe write downstream: 1 +2025/08/19 13:56:03 [debug] 398217#398217: *22 pipe write downstream flush in +2025/08/19 13:56:03 [debug] 398217#398217: *22 http output filter "/upload?" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http copy filter: "/upload?" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http postpone filter "/upload?" 000061F3F26BCBE0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http chunk: 257 +2025/08/19 13:56:03 [debug] 398217#398217: *22 write new buf t:1 f:0 000061F3F26B10F8, pos 000061F3F26B10F8, size: 5 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 write new buf t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 257 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http write filter: l:0 f:0 s:264 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http copy filter: 0 "/upload?" +2025/08/19 13:56:03 [debug] 398217#398217: *22 pipe write downstream done +2025/08/19 13:56:03 [debug] 398217#398217: *22 event timer: 10, old: 192956446, new: 192956448 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http upstream exit: 0000000000000000 +2025/08/19 13:56:03 [debug] 398217#398217: *22 finalize http upstream request: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 finalize http fastcgi request +2025/08/19 13:56:03 [debug] 398217#398217: *22 free rr peer 1 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 close http upstream connection: 10 +2025/08/19 13:56:03 [debug] 398217#398217: *22 free: 000061F3F268FF20, unused: 48 +2025/08/19 13:56:03 [debug] 398217#398217: *22 event timer del: 10: 192956446 +2025/08/19 13:56:03 [debug] 398217#398217: *22 reusable connection: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http upstream temp fd: -1 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http output filter "/upload?" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http copy filter: "/upload?" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http postpone filter "/upload?" 00007FFE4490F9F0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http chunk: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 write old buf t:1 f:0 000061F3F26B10F8, pos 000061F3F26B10F8, size: 5 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 write old buf t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 257 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 write old buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E5, size: 5 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http write filter: l:1 f:0 s:269 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http write filter limit 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 writev: 269 of 269 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http write filter 0000000000000000 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http copy filter: 0 "/upload?" +2025/08/19 13:56:03 [debug] 398217#398217: *22 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 13:56:03 [debug] 398217#398217: *22 set http keepalive handler +2025/08/19 13:56:03 [debug] 398217#398217: *22 http close request +2025/08/19 13:56:03 [debug] 398217#398217: *22 http log handler +2025/08/19 13:56:03 [debug] 398217#398217: *22 free: 000061F3F26B1150 +2025/08/19 13:56:03 [debug] 398217#398217: *22 free: 000061F3F26C5A20, unused: 3 +2025/08/19 13:56:03 [debug] 398217#398217: *22 free: 000061F3F26BBD90, unused: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 free: 000061F3F26B0140, unused: 54 +2025/08/19 13:56:03 [debug] 398217#398217: *22 free: 000061F3F26B2160, unused: 2202 +2025/08/19 13:56:03 [debug] 398217#398217: *22 free: 000061F3F26A90A0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 hc free: 0000000000000000 +2025/08/19 13:56:03 [debug] 398217#398217: *22 hc busy: 0000000000000000 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 tcp_nodelay +2025/08/19 13:56:03 [debug] 398217#398217: *22 reusable connection: 1 +2025/08/19 13:56:03 [debug] 398217#398217: *22 event timer add: 6: 65000:192961448 +2025/08/19 13:56:03 [debug] 398217#398217: *22 post event 000061F3F26F7760 +2025/08/19 13:56:03 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:56:03 [debug] 398217#398217: posted event 000061F3F26F7760 +2025/08/19 13:56:03 [debug] 398217#398217: *22 delete posted event 000061F3F26F7760 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http keepalive handler +2025/08/19 13:56:03 [debug] 398217#398217: *22 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:56:03 [debug] 398217#398217: *22 recv: eof:0, avail:0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 free: 000061F3F26A90A0 +2025/08/19 13:56:03 [debug] 398217#398217: worker cycle +2025/08/19 13:56:03 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:56:03 [debug] 398217#398217: epoll: fd:6 ev:2005 d:00007877C5D891E0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 http keepalive handler +2025/08/19 13:56:03 [debug] 398217#398217: *22 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:56:03 [debug] 398217#398217: *22 recv: eof:1, avail:-1 +2025/08/19 13:56:03 [debug] 398217#398217: *22 recv: fd:6 0 of 1024 +2025/08/19 13:56:03 [info] 398217#398217: *22 client 127.0.0.1 closed keepalive connection +2025/08/19 13:56:03 [debug] 398217#398217: *22 close http connection: 6 +2025/08/19 13:56:03 [debug] 398217#398217: *22 event timer del: 6: 192961448 +2025/08/19 13:56:03 [debug] 398217#398217: *22 reusable connection: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 free: 000061F3F26A90A0 +2025/08/19 13:56:03 [debug] 398217#398217: *22 free: 000061F3F26A6840, unused: 120 +2025/08/19 13:56:03 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:56:03 [debug] 398217#398217: worker cycle +2025/08/19 13:56:03 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:56:03 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:56:03 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:56:03 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:56:03 [debug] 398217#398217: *24 accept: 127.0.0.1:45868 fd:6 +2025/08/19 13:56:03 [debug] 398217#398217: *24 event timer add: 6: 60000:192956458 +2025/08/19 13:56:03 [debug] 398217#398217: *24 reusable connection: 1 +2025/08/19 13:56:03 [debug] 398217#398217: *24 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:56:03 [debug] 398217#398217: timer delta: 9 +2025/08/19 13:56:03 [debug] 398217#398217: worker cycle +2025/08/19 13:56:03 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:56:03 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E1 +2025/08/19 13:56:03 [debug] 398217#398217: *24 http wait request handler +2025/08/19 13:56:03 [debug] 398217#398217: *24 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:56:03 [debug] 398217#398217: *24 recv: eof:0, avail:-1 +2025/08/19 13:56:03 [debug] 398217#398217: *24 recv: fd:6 142 of 1024 +2025/08/19 13:56:03 [debug] 398217#398217: *24 reusable connection: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *24 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:56:03 [debug] 398217#398217: *24 http process request line +2025/08/19 13:56:03 [debug] 398217#398217: *24 http request line: "GET /cec5ac288e7c2855df27d0907a7e05a6721f98837586a452dbc917d9494135cc HTTP/1.1" +2025/08/19 13:56:03 [debug] 398217#398217: *24 http uri: "/cec5ac288e7c2855df27d0907a7e05a6721f98837586a452dbc917d9494135cc" +2025/08/19 13:56:03 [debug] 398217#398217: *24 http args: "" +2025/08/19 13:56:03 [debug] 398217#398217: *24 http exten: "" +2025/08/19 13:56:03 [debug] 398217#398217: *24 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:56:03 [debug] 398217#398217: *24 http process request header line +2025/08/19 13:56:03 [debug] 398217#398217: *24 http header: "Host: localhost:9001" +2025/08/19 13:56:03 [debug] 398217#398217: *24 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:56:03 [debug] 398217#398217: *24 http header: "Accept: */*" +2025/08/19 13:56:03 [debug] 398217#398217: *24 http header done +2025/08/19 13:56:03 [debug] 398217#398217: *24 event timer del: 6: 192956458 +2025/08/19 13:56:03 [debug] 398217#398217: *24 generic phase: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *24 rewrite phase: 1 +2025/08/19 13:56:03 [debug] 398217#398217: *24 test location: "/health" +2025/08/19 13:56:03 [debug] 398217#398217: *24 test location: "/debug/list" +2025/08/19 13:56:03 [debug] 398217#398217: *24 test location: "/" +2025/08/19 13:56:03 [debug] 398217#398217: *24 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:56:03 [debug] 398217#398217: *24 using configuration "^/([a-f0-9]{64}).*$" +2025/08/19 13:56:03 [debug] 398217#398217: *24 http cl:-1 max:104857600 +2025/08/19 13:56:03 [debug] 398217#398217: *24 rewrite phase: 3 +2025/08/19 13:56:03 [debug] 398217#398217: *24 http script var +2025/08/19 13:56:03 [debug] 398217#398217: *24 http script var: "GET" +2025/08/19 13:56:03 [debug] 398217#398217: *24 http script value: "DELETE" +2025/08/19 13:56:03 [debug] 398217#398217: *24 http script not equal +2025/08/19 13:56:03 [debug] 398217#398217: *24 http script if +2025/08/19 13:56:03 [debug] 398217#398217: *24 http finalize request: 404, "/cec5ac288e7c2855df27d0907a7e05a6721f98837586a452dbc917d9494135cc?" a:1, c:1 +2025/08/19 13:56:03 [debug] 398217#398217: *24 http special response: 404, "/cec5ac288e7c2855df27d0907a7e05a6721f98837586a452dbc917d9494135cc?" +2025/08/19 13:56:03 [debug] 398217#398217: *24 http set discard body +2025/08/19 13:56:03 [debug] 398217#398217: *24 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:56:03 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 13:56:03 [debug] 398217#398217: *24 write new buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 164 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *24 http write filter: l:0 f:0 s:164 +2025/08/19 13:56:03 [debug] 398217#398217: *24 http output filter "/cec5ac288e7c2855df27d0907a7e05a6721f98837586a452dbc917d9494135cc?" +2025/08/19 13:56:03 [debug] 398217#398217: *24 http copy filter: "/cec5ac288e7c2855df27d0907a7e05a6721f98837586a452dbc917d9494135cc?" +2025/08/19 13:56:03 [debug] 398217#398217: *24 http postpone filter "/cec5ac288e7c2855df27d0907a7e05a6721f98837586a452dbc917d9494135cc?" 000061F3F26BC300 +2025/08/19 13:56:03 [debug] 398217#398217: *24 write old buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 164 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *24 write new buf t:0 f:0 0000000000000000, pos 000061F3D7DA4580, size: 100 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *24 write new buf t:0 f:0 0000000000000000, pos 000061F3D7DA4C80, size: 62 file: 0, size: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *24 http write filter: l:1 f:0 s:326 +2025/08/19 13:56:03 [debug] 398217#398217: *24 http write filter limit 0 +2025/08/19 13:56:03 [debug] 398217#398217: *24 writev: 326 of 326 +2025/08/19 13:56:03 [debug] 398217#398217: *24 http write filter 0000000000000000 +2025/08/19 13:56:03 [debug] 398217#398217: *24 http copy filter: 0 "/cec5ac288e7c2855df27d0907a7e05a6721f98837586a452dbc917d9494135cc?" +2025/08/19 13:56:03 [debug] 398217#398217: *24 http finalize request: 0, "/cec5ac288e7c2855df27d0907a7e05a6721f98837586a452dbc917d9494135cc?" a:1, c:1 +2025/08/19 13:56:03 [debug] 398217#398217: *24 set http keepalive handler +2025/08/19 13:56:03 [debug] 398217#398217: *24 http close request +2025/08/19 13:56:03 [debug] 398217#398217: *24 http log handler +2025/08/19 13:56:03 [debug] 398217#398217: *24 free: 000061F3F26C5A20, unused: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *24 free: 000061F3F26BBD90, unused: 2456 +2025/08/19 13:56:03 [debug] 398217#398217: *24 free: 000061F3F26A90A0 +2025/08/19 13:56:03 [debug] 398217#398217: *24 hc free: 0000000000000000 +2025/08/19 13:56:03 [debug] 398217#398217: *24 hc busy: 0000000000000000 0 +2025/08/19 13:56:03 [debug] 398217#398217: *24 tcp_nodelay +2025/08/19 13:56:03 [debug] 398217#398217: *24 reusable connection: 1 +2025/08/19 13:56:03 [debug] 398217#398217: *24 event timer add: 6: 65000:192961458 +2025/08/19 13:56:03 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:56:03 [debug] 398217#398217: worker cycle +2025/08/19 13:56:03 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:56:03 [debug] 398217#398217: epoll: fd:6 ev:2001 d:00007877C5D891E1 +2025/08/19 13:56:03 [debug] 398217#398217: *24 http keepalive handler +2025/08/19 13:56:03 [debug] 398217#398217: *24 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:56:03 [debug] 398217#398217: *24 recv: eof:1, avail:-1 +2025/08/19 13:56:03 [debug] 398217#398217: *24 recv: fd:6 0 of 1024 +2025/08/19 13:56:03 [info] 398217#398217: *24 client 127.0.0.1 closed keepalive connection +2025/08/19 13:56:03 [debug] 398217#398217: *24 close http connection: 6 +2025/08/19 13:56:03 [debug] 398217#398217: *24 event timer del: 6: 192961458 +2025/08/19 13:56:03 [debug] 398217#398217: *24 reusable connection: 0 +2025/08/19 13:56:03 [debug] 398217#398217: *24 free: 000061F3F26A90A0 +2025/08/19 13:56:03 [debug] 398217#398217: *24 free: 000061F3F26A6840, unused: 136 +2025/08/19 13:56:03 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:56:03 [debug] 398217#398217: worker cycle +2025/08/19 13:56:03 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:59:02 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:59:02 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:59:02 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:59:02 [debug] 398217#398217: *25 accept: 127.0.0.1:33928 fd:6 +2025/08/19 13:59:02 [debug] 398217#398217: *25 event timer add: 6: 60000:193135994 +2025/08/19 13:59:02 [debug] 398217#398217: *25 reusable connection: 1 +2025/08/19 13:59:02 [debug] 398217#398217: *25 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:59:02 [debug] 398217#398217: timer delta: 179536 +2025/08/19 13:59:02 [debug] 398217#398217: worker cycle +2025/08/19 13:59:02 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:59:02 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E0 +2025/08/19 13:59:02 [debug] 398217#398217: *25 http wait request handler +2025/08/19 13:59:02 [debug] 398217#398217: *25 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:59:02 [debug] 398217#398217: *25 recv: eof:0, avail:-1 +2025/08/19 13:59:02 [debug] 398217#398217: *25 recv: fd:6 84 of 1024 +2025/08/19 13:59:02 [debug] 398217#398217: *25 reusable connection: 0 +2025/08/19 13:59:02 [debug] 398217#398217: *25 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:59:02 [debug] 398217#398217: *25 http process request line +2025/08/19 13:59:02 [debug] 398217#398217: *25 http request line: "GET /health HTTP/1.1" +2025/08/19 13:59:02 [debug] 398217#398217: *25 http uri: "/health" +2025/08/19 13:59:02 [debug] 398217#398217: *25 http args: "" +2025/08/19 13:59:02 [debug] 398217#398217: *25 http exten: "" +2025/08/19 13:59:02 [debug] 398217#398217: *25 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:59:02 [debug] 398217#398217: *25 http process request header line +2025/08/19 13:59:02 [debug] 398217#398217: *25 http header: "Host: localhost:9001" +2025/08/19 13:59:02 [debug] 398217#398217: *25 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:59:02 [debug] 398217#398217: *25 http header: "Accept: */*" +2025/08/19 13:59:02 [debug] 398217#398217: *25 http header done +2025/08/19 13:59:02 [debug] 398217#398217: *25 event timer del: 6: 193135994 +2025/08/19 13:59:02 [debug] 398217#398217: *25 generic phase: 0 +2025/08/19 13:59:02 [debug] 398217#398217: *25 rewrite phase: 1 +2025/08/19 13:59:02 [debug] 398217#398217: *25 test location: "/health" +2025/08/19 13:59:02 [debug] 398217#398217: *25 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:59:02 [debug] 398217#398217: *25 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 13:59:02 [debug] 398217#398217: *25 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 13:59:02 [debug] 398217#398217: *25 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 13:59:02 [debug] 398217#398217: *25 using configuration "/health" +2025/08/19 13:59:02 [debug] 398217#398217: *25 http cl:-1 max:104857600 +2025/08/19 13:59:02 [debug] 398217#398217: *25 rewrite phase: 3 +2025/08/19 13:59:02 [debug] 398217#398217: *25 http set discard body +2025/08/19 13:59:02 [debug] 398217#398217: *25 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:59:02 GMT +Content-Type: application/octet-stream +Content-Length: 3 +Connection: keep-alive +Content-Type: text/plain + +2025/08/19 13:59:02 [debug] 398217#398217: *25 write new buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 196 file: 0, size: 0 +2025/08/19 13:59:02 [debug] 398217#398217: *25 http write filter: l:0 f:0 s:196 +2025/08/19 13:59:02 [debug] 398217#398217: *25 http output filter "/health?" +2025/08/19 13:59:02 [debug] 398217#398217: *25 http copy filter: "/health?" +2025/08/19 13:59:02 [debug] 398217#398217: *25 http postpone filter "/health?" 00007FFE4490F940 +2025/08/19 13:59:02 [debug] 398217#398217: *25 write old buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 196 file: 0, size: 0 +2025/08/19 13:59:02 [debug] 398217#398217: *25 write new buf t:0 f:0 0000000000000000, pos 000061F3F26E3B32, size: 3 file: 0, size: 0 +2025/08/19 13:59:02 [debug] 398217#398217: *25 http write filter: l:1 f:0 s:199 +2025/08/19 13:59:02 [debug] 398217#398217: *25 http write filter limit 0 +2025/08/19 13:59:02 [debug] 398217#398217: *25 writev: 199 of 199 +2025/08/19 13:59:02 [debug] 398217#398217: *25 http write filter 0000000000000000 +2025/08/19 13:59:02 [debug] 398217#398217: *25 http copy filter: 0 "/health?" +2025/08/19 13:59:02 [debug] 398217#398217: *25 http finalize request: 0, "/health?" a:1, c:1 +2025/08/19 13:59:02 [debug] 398217#398217: *25 set http keepalive handler +2025/08/19 13:59:02 [debug] 398217#398217: *25 http close request +2025/08/19 13:59:02 [debug] 398217#398217: *25 http log handler +2025/08/19 13:59:02 [debug] 398217#398217: *25 free: 000061F3F26C5A20, unused: 0 +2025/08/19 13:59:02 [debug] 398217#398217: *25 free: 000061F3F26BBD90, unused: 2736 +2025/08/19 13:59:02 [debug] 398217#398217: *25 free: 000061F3F26A90A0 +2025/08/19 13:59:02 [debug] 398217#398217: *25 hc free: 0000000000000000 +2025/08/19 13:59:02 [debug] 398217#398217: *25 hc busy: 0000000000000000 0 +2025/08/19 13:59:02 [debug] 398217#398217: *25 tcp_nodelay +2025/08/19 13:59:02 [debug] 398217#398217: *25 reusable connection: 1 +2025/08/19 13:59:02 [debug] 398217#398217: *25 event timer add: 6: 65000:193140995 +2025/08/19 13:59:02 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:59:02 [debug] 398217#398217: worker cycle +2025/08/19 13:59:02 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:59:02 [debug] 398217#398217: epoll: fd:6 ev:2001 d:00007877C5D891E0 +2025/08/19 13:59:02 [debug] 398217#398217: *25 http keepalive handler +2025/08/19 13:59:02 [debug] 398217#398217: *25 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:59:02 [debug] 398217#398217: *25 recv: eof:1, avail:-1 +2025/08/19 13:59:02 [debug] 398217#398217: *25 recv: fd:6 0 of 1024 +2025/08/19 13:59:02 [info] 398217#398217: *25 client 127.0.0.1 closed keepalive connection +2025/08/19 13:59:02 [debug] 398217#398217: *25 close http connection: 6 +2025/08/19 13:59:02 [debug] 398217#398217: *25 event timer del: 6: 193140995 +2025/08/19 13:59:02 [debug] 398217#398217: *25 reusable connection: 0 +2025/08/19 13:59:02 [debug] 398217#398217: *25 free: 000061F3F26A90A0 +2025/08/19 13:59:02 [debug] 398217#398217: *25 free: 000061F3F26A6840, unused: 136 +2025/08/19 13:59:02 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:59:02 [debug] 398217#398217: worker cycle +2025/08/19 13:59:02 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:59:03 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:59:03 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:59:03 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:59:03 [debug] 398217#398217: *26 accept: 127.0.0.1:33942 fd:6 +2025/08/19 13:59:03 [debug] 398217#398217: *26 event timer add: 6: 60000:193136288 +2025/08/19 13:59:03 [debug] 398217#398217: *26 reusable connection: 1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:59:03 [debug] 398217#398217: timer delta: 293 +2025/08/19 13:59:03 [debug] 398217#398217: worker cycle +2025/08/19 13:59:03 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:59:03 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http wait request handler +2025/08/19 13:59:03 [debug] 398217#398217: *26 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:59:03 [debug] 398217#398217: *26 recv: eof:0, avail:-1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 recv: fd:6 1024 of 1024 +2025/08/19 13:59:03 [debug] 398217#398217: *26 recv: avail:112 +2025/08/19 13:59:03 [debug] 398217#398217: *26 reusable connection: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http process request line +2025/08/19 13:59:03 [debug] 398217#398217: *26 http request line: "PUT /upload HTTP/1.1" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http uri: "/upload" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http args: "" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http exten: "" +2025/08/19 13:59:03 [debug] 398217#398217: *26 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http process request header line +2025/08/19 13:59:03 [debug] 398217#398217: *26 http header: "Host: localhost:9001" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http header: "Accept: */*" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiJkMzU4M2EyODRmM2UyMzE5ZTkxMjlkYzY0ZjI2NWFkODlhODY1NTM0MmEzNjhiMjY0YzU3ZWUwZTM1NTQyZDJmIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjYzNDMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCIwYzQzNTFjZTE3YmY3NTlmYjMyOGQ2ZGIwNTBkNGI3M2U2ZDIwNGU4YTJhZjgyOTcxY2Y1ZTRlM2QwZTQ0NjgwIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTk0MiJdXSwiY29udGVudCI6IiIsInNpZyI6IjQzYjZhNzkzZGQ5NGViNWExYTU2YjM0YTVmN2RkZTY1M2E2NjQxNGVmMDdlOTA0MjAyOWFlYWQ1MmRhMGRkMGE3YzU1Y2M4ZWUzMjM0NTk0N2Y5OTE2ZDYwNDc3ODc3NTVjOWMwNmYzMGEwZmY3MzQzNzYyMGU5NzQ5ZmNjNGNiIn0=" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http header: "Content-Type: text/plain" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http header: "Content-Disposition: attachment; filename="test_blob_1755626342.txt"" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http header: "Content-Length: 296" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http header done +2025/08/19 13:59:03 [debug] 398217#398217: *26 event timer del: 6: 193136288 +2025/08/19 13:59:03 [debug] 398217#398217: *26 generic phase: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 rewrite phase: 1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 test location: "/health" +2025/08/19 13:59:03 [debug] 398217#398217: *26 test location: "/upload" +2025/08/19 13:59:03 [debug] 398217#398217: *26 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:59:03 [debug] 398217#398217: *26 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 13:59:03 [debug] 398217#398217: *26 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 13:59:03 [debug] 398217#398217: *26 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 13:59:03 [debug] 398217#398217: *26 using configuration "/upload" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http cl:296 max:104857600 +2025/08/19 13:59:03 [debug] 398217#398217: *26 rewrite phase: 3 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "PUT" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script regex: "^(PUT)$" +2025/08/19 13:59:03 [notice] 398217#398217: *26 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script if +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script if: false +2025/08/19 13:59:03 [debug] 398217#398217: *26 post rewrite phase: 4 +2025/08/19 13:59:03 [debug] 398217#398217: *26 generic phase: 5 +2025/08/19 13:59:03 [debug] 398217#398217: *26 generic phase: 6 +2025/08/19 13:59:03 [debug] 398217#398217: *26 generic phase: 7 +2025/08/19 13:59:03 [debug] 398217#398217: *26 access phase: 8 +2025/08/19 13:59:03 [debug] 398217#398217: *26 access phase: 9 +2025/08/19 13:59:03 [debug] 398217#398217: *26 access phase: 10 +2025/08/19 13:59:03 [debug] 398217#398217: *26 post access phase: 11 +2025/08/19 13:59:03 [debug] 398217#398217: *26 generic phase: 12 +2025/08/19 13:59:03 [debug] 398217#398217: *26 generic phase: 13 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http client request body preread 184 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http request body content length filter +2025/08/19 13:59:03 [debug] 398217#398217: *26 http body new buf t:1 f:0 000061F3F26A93E8, pos 000061F3F26A93E8, size: 184 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http read client request body +2025/08/19 13:59:03 [debug] 398217#398217: *26 recv: eof:0, avail:112 +2025/08/19 13:59:03 [debug] 398217#398217: *26 recv: fd:6 112 of 112 +2025/08/19 13:59:03 [debug] 398217#398217: *26 recv: avail:0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http client request body recv 112 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http body new buf t:1 f:0 000061F3F26BC820, pos 000061F3F26BC820, size: 112 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http client request body rest 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http init upstream, client timer: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 13:59:03 [debug] 398217#398217: *26 posix_memalign: 000061F3F26B0140:4096 @16 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "QUERY_STRING" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "QUERY_STRING: " +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "REQUEST_METHOD" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "PUT" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "CONTENT_TYPE" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "text/plain" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "CONTENT_LENGTH" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "296" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "SCRIPT_NAME" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "/upload" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "REQUEST_URI" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "/upload" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "DOCUMENT_URI" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "/upload" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "DOCUMENT_ROOT" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "./blobs" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "SERVER_PROTOCOL" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "HTTP/1.1" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "REQUEST_SCHEME" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "http" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "GATEWAY_INTERFACE" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "CGI/1.1" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "SERVER_SOFTWARE" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "nginx/" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "1.18.0" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "REMOTE_ADDR" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "127.0.0.1" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "REMOTE_PORT" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "33942" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "REMOTE_PORT: 33942" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "SERVER_ADDR" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "127.0.0.1" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "SERVER_PORT" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "9001" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "SERVER_NAME" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "localhost" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "REDIRECT_STATUS" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "200" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "SCRIPT_FILENAME" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script var: "./blobs" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http script copy: "/ginxsom.fcgi" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiJkMzU4M2EyODRmM2UyMzE5ZTkxMjlkYzY0ZjI2NWFkODlhODY1NTM0MmEzNjhiMjY0YzU3ZWUwZTM1NTQyZDJmIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjYzNDMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCIwYzQzNTFjZTE3YmY3NTlmYjMyOGQ2ZGIwNTBkNGI3M2U2ZDIwNGU4YTJhZjgyOTcxY2Y1ZTRlM2QwZTQ0NjgwIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTk0MiJdXSwiY29udGVudCI6IiIsInNpZyI6IjQzYjZhNzkzZGQ5NGViNWExYTU2YjM0YTVmN2RkZTY1M2E2NjQxNGVmMDdlOTA0MjAyOWFlYWQ1MmRhMGRkMGE3YzU1Y2M4ZWUzMjM0NTk0N2Y5OTE2ZDYwNDc3ODc3NTVjOWMwNmYzMGEwZmY3MzQzNzYyMGU5NzQ5ZmNjNGNiIn0=" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755626342.txt"" +2025/08/19 13:59:03 [debug] 398217#398217: *26 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http cleanup add: 000061F3F26BCB70 +2025/08/19 13:59:03 [debug] 398217#398217: *26 get rr peer, try: 1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 stream socket 10 +2025/08/19 13:59:03 [debug] 398217#398217: *26 epoll add connection: fd:10 ev:80002005 +2025/08/19 13:59:03 [debug] 398217#398217: *26 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #27 +2025/08/19 13:59:03 [debug] 398217#398217: *26 connected +2025/08/19 13:59:03 [debug] 398217#398217: *26 http upstream connect: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 posix_memalign: 000061F3F268FF20:128 @16 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http upstream send request +2025/08/19 13:59:03 [debug] 398217#398217: *26 http upstream send request body +2025/08/19 13:59:03 [debug] 398217#398217: *26 chain writer buf fl:0 s:1304 +2025/08/19 13:59:03 [debug] 398217#398217: *26 chain writer buf fl:0 s:184 +2025/08/19 13:59:03 [debug] 398217#398217: *26 chain writer buf fl:0 s:8 +2025/08/19 13:59:03 [debug] 398217#398217: *26 chain writer buf fl:0 s:112 +2025/08/19 13:59:03 [debug] 398217#398217: *26 chain writer buf fl:0 s:8 +2025/08/19 13:59:03 [debug] 398217#398217: *26 chain writer in: 000061F3F26BCC00 +2025/08/19 13:59:03 [debug] 398217#398217: *26 writev: 1616 of 1616 +2025/08/19 13:59:03 [debug] 398217#398217: *26 chain writer out: 0000000000000000 +2025/08/19 13:59:03 [debug] 398217#398217: *26 event timer add: 10: 60000:193136288 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http request count:2 blk:0 +2025/08/19 13:59:03 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:59:03 [debug] 398217#398217: worker cycle +2025/08/19 13:59:03 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:59:03 [debug] 398217#398217: epoll: fd:6 ev:0004 d:00007877C5D891E1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http run request: "/upload?" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http upstream check client, write event:1, "/upload" +2025/08/19 13:59:03 [debug] 398217#398217: epoll: fd:10 ev:0004 d:00007877C5D892C8 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http upstream request: "/upload?" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http upstream dummy handler +2025/08/19 13:59:03 [debug] 398217#398217: timer delta: 2 +2025/08/19 13:59:03 [debug] 398217#398217: worker cycle +2025/08/19 13:59:03 [debug] 398217#398217: epoll timer: 59998 +2025/08/19 13:59:03 [debug] 398217#398217: epoll: fd:10 ev:2005 d:00007877C5D892C8 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http upstream request: "/upload?" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http upstream process header +2025/08/19 13:59:03 [debug] 398217#398217: *26 malloc: 000061F3F26B1150:4096 +2025/08/19 13:59:03 [debug] 398217#398217: *26 recv: eof:1, avail:-1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 recv: fd:10 1664 of 4096 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 01 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 06 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 00 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 01 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 06 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 5D +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 03 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 00 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record length: 1629 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header: "LOG: [2025-08-19 13:59:03] PUT /upload - Auth: pending - Status: 0" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiJkMzU4M2EyODRmM2UyMzE5ZTkxMjlkYzY0ZjI2NWFkODlhODY1NTM0MmEzNjhiMjY0YzU3ZWUwZTM1NTQyZDJmIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjYzNDMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCIwYzQzNTFjZTE3YmY3NTlmYjMyOGQ2ZGIwNTBkNGI3M2U2ZDIwNGU4YTJhZjgyOTcxY2Y1ZTRlM2QwZTQ0NjgwIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTk0MiJdXSwiY29udGVudCI6IiIsInNpZyI6IjQzYjZhNzkzZGQ5NGViNWExYTU2YjM0YTVmN2RkZTY1M2E2NjQxNGVmMDdlOTA0MjAyOWFlYWQ1MmRhMGRkMGE3YzU1Y2M4ZWUzMjM0NTk0N2Y5OTE2ZDYwNDc3ODc3NTVjOWMwNmYzMGEwZmY3MzQzNzYyMGU5NzQ5ZmNjNGNiIn0=" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header: "DEBUG: Authenticating request - method: PUT, hash: null" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header: "DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiJkMzU4M2EyODRmM2UyMzE5ZTkxMjlkYzY0ZjI2NWFkODlhODY1NTM0MmEzNjhiMjY0YzU3ZWUw..." +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header: "DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"d3583a284f3e2319e9129dc64f265ad89a8655342a368b264c57ee0e35542d2f","pubkey":"79be..." +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header: "DEBUG: Nostr event validation failed: -32 (Event has invalid public key)" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header: "Status: 401 Unauthorized" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header: "Content-Type: application/json" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi parser: 1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi header done +2025/08/19 13:59:03 [debug] 398217#398217: *26 posix_memalign: 000061F3F26B2160:4096 @16 +2025/08/19 13:59:03 [debug] 398217#398217: *26 HTTP/1.1 401 Unauthorized +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:59:03 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 +LOG: [2025-08-19 13:59:03] PUT /upload - Auth: pending - Status: 0 +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiJkMzU4M2EyODRmM2UyMzE5ZTkxMjlkYzY0ZjI2NWFkODlhODY1NTM0MmEzNjhiMjY0YzU3ZWUwZTM1NTQyZDJmIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjYzNDMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCIwYzQzNTFjZTE3YmY3NTlmYjMyOGQ2ZGIwNTBkNGI3M2U2ZDIwNGU4YTJhZjgyOTcxY2Y1ZTRlM2QwZTQ0NjgwIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYyOTk0MiJdXSwiY29udGVudCI6IiIsInNpZyI6IjQzYjZhNzkzZGQ5NGViNWExYTU2YjM0YTVmN2RkZTY1M2E2NjQxNGVmMDdlOTA0MjAyOWFlYWQ1MmRhMGRkMGE3YzU1Y2M4ZWUzMjM0NTk0N2Y5OTE2ZDYwNDc3ODc3NTVjOWMwNmYzMGEwZmY3MzQzNzYyMGU5NzQ5ZmNjNGNiIn0= +DEBUG: Authenticating request - method: PUT, hash: null +DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiJkMzU4M2EyODRmM2UyMzE5ZTkxMjlkYzY0ZjI2NWFkODlhODY1NTM0MmEzNjhiMjY0YzU3ZWUw... +DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"d3583a284f3e2319e9129dc64f265ad89a8655342a368b264c57ee0e35542d2f","pubkey":"79be... +DEBUG: Nostr event validation failed: -32 (Event has invalid public key) + +2025/08/19 13:59:03 [debug] 398217#398217: *26 write new buf t:1 f:0 000061F3F26B2180, pos 000061F3F26B2180, size: 1493 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http write filter: l:0 f:0 s:1493 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http write filter limit 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 writev: 1493 of 1493 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http write filter 0000000000000000 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http cacheable: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http upstream process upstream +2025/08/19 13:59:03 [debug] 398217#398217: *26 pipe read upstream: 1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 pipe preread: 284 +2025/08/19 13:59:03 [debug] 398217#398217: *26 readv: eof:1, avail:0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 readv: 1, last:2432 +2025/08/19 13:59:03 [debug] 398217#398217: *26 pipe recv chain: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 pipe buf free s:0 t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 284 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 pipe length: -1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 input buf #0 000061F3F26B16B4 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 01 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 06 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 00 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 01 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 00 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 00 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 00 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 00 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record length: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi closed stdout +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 01 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 03 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 00 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 01 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 00 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 08 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 00 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record byte: 00 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi record length: 8 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http fastcgi sent end request +2025/08/19 13:59:03 [debug] 398217#398217: *26 input buf 000061F3F26B16B4 257 +2025/08/19 13:59:03 [debug] 398217#398217: *26 pipe write downstream: 1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 pipe write downstream flush in +2025/08/19 13:59:03 [debug] 398217#398217: *26 http output filter "/upload?" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http copy filter: "/upload?" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http postpone filter "/upload?" 000061F3F26BCBE0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http chunk: 257 +2025/08/19 13:59:03 [debug] 398217#398217: *26 write new buf t:1 f:0 000061F3F26B10F8, pos 000061F3F26B10F8, size: 5 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 write new buf t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 257 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http write filter: l:0 f:0 s:264 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http copy filter: 0 "/upload?" +2025/08/19 13:59:03 [debug] 398217#398217: *26 pipe write downstream done +2025/08/19 13:59:03 [debug] 398217#398217: *26 event timer: 10, old: 193136288, new: 193136290 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http upstream exit: 0000000000000000 +2025/08/19 13:59:03 [debug] 398217#398217: *26 finalize http upstream request: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 finalize http fastcgi request +2025/08/19 13:59:03 [debug] 398217#398217: *26 free rr peer 1 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 close http upstream connection: 10 +2025/08/19 13:59:03 [debug] 398217#398217: *26 free: 000061F3F268FF20, unused: 48 +2025/08/19 13:59:03 [debug] 398217#398217: *26 event timer del: 10: 193136288 +2025/08/19 13:59:03 [debug] 398217#398217: *26 reusable connection: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http upstream temp fd: -1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http output filter "/upload?" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http copy filter: "/upload?" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http postpone filter "/upload?" 00007FFE4490F9F0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http chunk: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 write old buf t:1 f:0 000061F3F26B10F8, pos 000061F3F26B10F8, size: 5 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 write old buf t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 257 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 write old buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E5, size: 5 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http write filter: l:1 f:0 s:269 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http write filter limit 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 writev: 269 of 269 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http write filter 0000000000000000 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http copy filter: 0 "/upload?" +2025/08/19 13:59:03 [debug] 398217#398217: *26 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 set http keepalive handler +2025/08/19 13:59:03 [debug] 398217#398217: *26 http close request +2025/08/19 13:59:03 [debug] 398217#398217: *26 http log handler +2025/08/19 13:59:03 [debug] 398217#398217: *26 free: 000061F3F26B1150 +2025/08/19 13:59:03 [debug] 398217#398217: *26 free: 000061F3F26C5A20, unused: 3 +2025/08/19 13:59:03 [debug] 398217#398217: *26 free: 000061F3F26BBD90, unused: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 free: 000061F3F26B0140, unused: 54 +2025/08/19 13:59:03 [debug] 398217#398217: *26 free: 000061F3F26B2160, unused: 2202 +2025/08/19 13:59:03 [debug] 398217#398217: *26 free: 000061F3F26A90A0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 hc free: 0000000000000000 +2025/08/19 13:59:03 [debug] 398217#398217: *26 hc busy: 0000000000000000 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 tcp_nodelay +2025/08/19 13:59:03 [debug] 398217#398217: *26 reusable connection: 1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 event timer add: 6: 65000:193141290 +2025/08/19 13:59:03 [debug] 398217#398217: *26 post event 000061F3F26F7760 +2025/08/19 13:59:03 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:59:03 [debug] 398217#398217: posted event 000061F3F26F7760 +2025/08/19 13:59:03 [debug] 398217#398217: *26 delete posted event 000061F3F26F7760 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http keepalive handler +2025/08/19 13:59:03 [debug] 398217#398217: *26 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:59:03 [debug] 398217#398217: *26 recv: eof:0, avail:0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 free: 000061F3F26A90A0 +2025/08/19 13:59:03 [debug] 398217#398217: worker cycle +2025/08/19 13:59:03 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:59:03 [debug] 398217#398217: epoll: fd:6 ev:2005 d:00007877C5D891E1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 http keepalive handler +2025/08/19 13:59:03 [debug] 398217#398217: *26 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:59:03 [debug] 398217#398217: *26 recv: eof:1, avail:-1 +2025/08/19 13:59:03 [debug] 398217#398217: *26 recv: fd:6 0 of 1024 +2025/08/19 13:59:03 [info] 398217#398217: *26 client 127.0.0.1 closed keepalive connection +2025/08/19 13:59:03 [debug] 398217#398217: *26 close http connection: 6 +2025/08/19 13:59:03 [debug] 398217#398217: *26 event timer del: 6: 193141290 +2025/08/19 13:59:03 [debug] 398217#398217: *26 reusable connection: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 free: 000061F3F26A90A0 +2025/08/19 13:59:03 [debug] 398217#398217: *26 free: 000061F3F26A6840, unused: 120 +2025/08/19 13:59:03 [debug] 398217#398217: timer delta: 2 +2025/08/19 13:59:03 [debug] 398217#398217: worker cycle +2025/08/19 13:59:03 [debug] 398217#398217: epoll timer: -1 +2025/08/19 13:59:03 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 13:59:03 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 13:59:03 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 13:59:03 [debug] 398217#398217: *28 accept: 127.0.0.1:33946 fd:6 +2025/08/19 13:59:03 [debug] 398217#398217: *28 event timer add: 6: 60000:193136304 +2025/08/19 13:59:03 [debug] 398217#398217: *28 reusable connection: 1 +2025/08/19 13:59:03 [debug] 398217#398217: *28 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 13:59:03 [debug] 398217#398217: timer delta: 12 +2025/08/19 13:59:03 [debug] 398217#398217: worker cycle +2025/08/19 13:59:03 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 13:59:03 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 http wait request handler +2025/08/19 13:59:03 [debug] 398217#398217: *28 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:59:03 [debug] 398217#398217: *28 recv: eof:0, avail:-1 +2025/08/19 13:59:03 [debug] 398217#398217: *28 recv: fd:6 142 of 1024 +2025/08/19 13:59:03 [debug] 398217#398217: *28 reusable connection: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 13:59:03 [debug] 398217#398217: *28 http process request line +2025/08/19 13:59:03 [debug] 398217#398217: *28 http request line: "GET /0c4351ce17bf759fb328d6db050d4b73e6d204e8a2af82971cf5e4e3d0e44680 HTTP/1.1" +2025/08/19 13:59:03 [debug] 398217#398217: *28 http uri: "/0c4351ce17bf759fb328d6db050d4b73e6d204e8a2af82971cf5e4e3d0e44680" +2025/08/19 13:59:03 [debug] 398217#398217: *28 http args: "" +2025/08/19 13:59:03 [debug] 398217#398217: *28 http exten: "" +2025/08/19 13:59:03 [debug] 398217#398217: *28 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 13:59:03 [debug] 398217#398217: *28 http process request header line +2025/08/19 13:59:03 [debug] 398217#398217: *28 http header: "Host: localhost:9001" +2025/08/19 13:59:03 [debug] 398217#398217: *28 http header: "User-Agent: curl/8.15.0" +2025/08/19 13:59:03 [debug] 398217#398217: *28 http header: "Accept: */*" +2025/08/19 13:59:03 [debug] 398217#398217: *28 http header done +2025/08/19 13:59:03 [debug] 398217#398217: *28 event timer del: 6: 193136304 +2025/08/19 13:59:03 [debug] 398217#398217: *28 generic phase: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 rewrite phase: 1 +2025/08/19 13:59:03 [debug] 398217#398217: *28 test location: "/health" +2025/08/19 13:59:03 [debug] 398217#398217: *28 test location: "/debug/list" +2025/08/19 13:59:03 [debug] 398217#398217: *28 test location: "/" +2025/08/19 13:59:03 [debug] 398217#398217: *28 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 13:59:03 [debug] 398217#398217: *28 using configuration "^/([a-f0-9]{64}).*$" +2025/08/19 13:59:03 [debug] 398217#398217: *28 http cl:-1 max:104857600 +2025/08/19 13:59:03 [debug] 398217#398217: *28 rewrite phase: 3 +2025/08/19 13:59:03 [debug] 398217#398217: *28 http script var +2025/08/19 13:59:03 [debug] 398217#398217: *28 http script var: "GET" +2025/08/19 13:59:03 [debug] 398217#398217: *28 http script value: "DELETE" +2025/08/19 13:59:03 [debug] 398217#398217: *28 http script not equal +2025/08/19 13:59:03 [debug] 398217#398217: *28 http script if +2025/08/19 13:59:03 [debug] 398217#398217: *28 http finalize request: 404, "/0c4351ce17bf759fb328d6db050d4b73e6d204e8a2af82971cf5e4e3d0e44680?" a:1, c:1 +2025/08/19 13:59:03 [debug] 398217#398217: *28 http special response: 404, "/0c4351ce17bf759fb328d6db050d4b73e6d204e8a2af82971cf5e4e3d0e44680?" +2025/08/19 13:59:03 [debug] 398217#398217: *28 http set discard body +2025/08/19 13:59:03 [debug] 398217#398217: *28 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 17:59:03 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 13:59:03 [debug] 398217#398217: *28 write new buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 164 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 http write filter: l:0 f:0 s:164 +2025/08/19 13:59:03 [debug] 398217#398217: *28 http output filter "/0c4351ce17bf759fb328d6db050d4b73e6d204e8a2af82971cf5e4e3d0e44680?" +2025/08/19 13:59:03 [debug] 398217#398217: *28 http copy filter: "/0c4351ce17bf759fb328d6db050d4b73e6d204e8a2af82971cf5e4e3d0e44680?" +2025/08/19 13:59:03 [debug] 398217#398217: *28 http postpone filter "/0c4351ce17bf759fb328d6db050d4b73e6d204e8a2af82971cf5e4e3d0e44680?" 000061F3F26BC300 +2025/08/19 13:59:03 [debug] 398217#398217: *28 write old buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 164 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 write new buf t:0 f:0 0000000000000000, pos 000061F3D7DA4580, size: 100 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 write new buf t:0 f:0 0000000000000000, pos 000061F3D7DA4C80, size: 62 file: 0, size: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 http write filter: l:1 f:0 s:326 +2025/08/19 13:59:03 [debug] 398217#398217: *28 http write filter limit 0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 writev: 326 of 326 +2025/08/19 13:59:03 [debug] 398217#398217: *28 http write filter 0000000000000000 +2025/08/19 13:59:03 [debug] 398217#398217: *28 http copy filter: 0 "/0c4351ce17bf759fb328d6db050d4b73e6d204e8a2af82971cf5e4e3d0e44680?" +2025/08/19 13:59:03 [debug] 398217#398217: *28 http finalize request: 0, "/0c4351ce17bf759fb328d6db050d4b73e6d204e8a2af82971cf5e4e3d0e44680?" a:1, c:1 +2025/08/19 13:59:03 [debug] 398217#398217: *28 set http keepalive handler +2025/08/19 13:59:03 [debug] 398217#398217: *28 http close request +2025/08/19 13:59:03 [debug] 398217#398217: *28 http log handler +2025/08/19 13:59:03 [debug] 398217#398217: *28 free: 000061F3F26C5A20, unused: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 free: 000061F3F26BBD90, unused: 2456 +2025/08/19 13:59:03 [debug] 398217#398217: *28 free: 000061F3F26A90A0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 hc free: 0000000000000000 +2025/08/19 13:59:03 [debug] 398217#398217: *28 hc busy: 0000000000000000 0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 tcp_nodelay +2025/08/19 13:59:03 [debug] 398217#398217: *28 reusable connection: 1 +2025/08/19 13:59:03 [debug] 398217#398217: *28 event timer add: 6: 65000:193141304 +2025/08/19 13:59:03 [debug] 398217#398217: timer delta: 0 +2025/08/19 13:59:03 [debug] 398217#398217: worker cycle +2025/08/19 13:59:03 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 13:59:03 [debug] 398217#398217: epoll: fd:6 ev:2001 d:00007877C5D891E0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 http keepalive handler +2025/08/19 13:59:03 [debug] 398217#398217: *28 malloc: 000061F3F26A90A0:1024 +2025/08/19 13:59:03 [debug] 398217#398217: *28 recv: eof:1, avail:-1 +2025/08/19 13:59:03 [debug] 398217#398217: *28 recv: fd:6 0 of 1024 +2025/08/19 13:59:03 [info] 398217#398217: *28 client 127.0.0.1 closed keepalive connection +2025/08/19 13:59:03 [debug] 398217#398217: *28 close http connection: 6 +2025/08/19 13:59:03 [debug] 398217#398217: *28 event timer del: 6: 193141304 +2025/08/19 13:59:03 [debug] 398217#398217: *28 reusable connection: 0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 free: 000061F3F26A90A0 +2025/08/19 13:59:03 [debug] 398217#398217: *28 free: 000061F3F26A6840, unused: 136 +2025/08/19 13:59:03 [debug] 398217#398217: timer delta: 1 +2025/08/19 13:59:03 [debug] 398217#398217: worker cycle +2025/08/19 13:59:03 [debug] 398217#398217: epoll timer: -1 +2025/08/19 14:00:27 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 14:00:27 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:00:27 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 14:00:27 [debug] 398217#398217: *29 accept: 127.0.0.1:45064 fd:6 +2025/08/19 14:00:27 [debug] 398217#398217: *29 event timer add: 6: 60000:193220453 +2025/08/19 14:00:27 [debug] 398217#398217: *29 reusable connection: 1 +2025/08/19 14:00:27 [debug] 398217#398217: *29 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:00:27 [debug] 398217#398217: timer delta: 84148 +2025/08/19 14:00:27 [debug] 398217#398217: worker cycle +2025/08/19 14:00:27 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 14:00:27 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E1 +2025/08/19 14:00:27 [debug] 398217#398217: *29 http wait request handler +2025/08/19 14:00:27 [debug] 398217#398217: *29 malloc: 000061F3F26A90A0:1024 +2025/08/19 14:00:27 [debug] 398217#398217: *29 recv: eof:0, avail:-1 +2025/08/19 14:00:27 [debug] 398217#398217: *29 recv: fd:6 84 of 1024 +2025/08/19 14:00:27 [debug] 398217#398217: *29 reusable connection: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *29 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 14:00:27 [debug] 398217#398217: *29 http process request line +2025/08/19 14:00:27 [debug] 398217#398217: *29 http request line: "GET /health HTTP/1.1" +2025/08/19 14:00:27 [debug] 398217#398217: *29 http uri: "/health" +2025/08/19 14:00:27 [debug] 398217#398217: *29 http args: "" +2025/08/19 14:00:27 [debug] 398217#398217: *29 http exten: "" +2025/08/19 14:00:27 [debug] 398217#398217: *29 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 14:00:27 [debug] 398217#398217: *29 http process request header line +2025/08/19 14:00:27 [debug] 398217#398217: *29 http header: "Host: localhost:9001" +2025/08/19 14:00:27 [debug] 398217#398217: *29 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:00:27 [debug] 398217#398217: *29 http header: "Accept: */*" +2025/08/19 14:00:27 [debug] 398217#398217: *29 http header done +2025/08/19 14:00:27 [debug] 398217#398217: *29 event timer del: 6: 193220453 +2025/08/19 14:00:27 [debug] 398217#398217: *29 generic phase: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *29 rewrite phase: 1 +2025/08/19 14:00:27 [debug] 398217#398217: *29 test location: "/health" +2025/08/19 14:00:27 [debug] 398217#398217: *29 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:00:27 [debug] 398217#398217: *29 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 14:00:27 [debug] 398217#398217: *29 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 14:00:27 [debug] 398217#398217: *29 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 14:00:27 [debug] 398217#398217: *29 using configuration "/health" +2025/08/19 14:00:27 [debug] 398217#398217: *29 http cl:-1 max:104857600 +2025/08/19 14:00:27 [debug] 398217#398217: *29 rewrite phase: 3 +2025/08/19 14:00:27 [debug] 398217#398217: *29 http set discard body +2025/08/19 14:00:27 [debug] 398217#398217: *29 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:00:27 GMT +Content-Type: application/octet-stream +Content-Length: 3 +Connection: keep-alive +Content-Type: text/plain + +2025/08/19 14:00:27 [debug] 398217#398217: *29 write new buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 196 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *29 http write filter: l:0 f:0 s:196 +2025/08/19 14:00:27 [debug] 398217#398217: *29 http output filter "/health?" +2025/08/19 14:00:27 [debug] 398217#398217: *29 http copy filter: "/health?" +2025/08/19 14:00:27 [debug] 398217#398217: *29 http postpone filter "/health?" 00007FFE4490F940 +2025/08/19 14:00:27 [debug] 398217#398217: *29 write old buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 196 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *29 write new buf t:0 f:0 0000000000000000, pos 000061F3F26E3B32, size: 3 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *29 http write filter: l:1 f:0 s:199 +2025/08/19 14:00:27 [debug] 398217#398217: *29 http write filter limit 0 +2025/08/19 14:00:27 [debug] 398217#398217: *29 writev: 199 of 199 +2025/08/19 14:00:27 [debug] 398217#398217: *29 http write filter 0000000000000000 +2025/08/19 14:00:27 [debug] 398217#398217: *29 http copy filter: 0 "/health?" +2025/08/19 14:00:27 [debug] 398217#398217: *29 http finalize request: 0, "/health?" a:1, c:1 +2025/08/19 14:00:27 [debug] 398217#398217: *29 set http keepalive handler +2025/08/19 14:00:27 [debug] 398217#398217: *29 http close request +2025/08/19 14:00:27 [debug] 398217#398217: *29 http log handler +2025/08/19 14:00:27 [debug] 398217#398217: *29 free: 000061F3F26C5A20, unused: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *29 free: 000061F3F26BBD90, unused: 2736 +2025/08/19 14:00:27 [debug] 398217#398217: *29 free: 000061F3F26A90A0 +2025/08/19 14:00:27 [debug] 398217#398217: *29 hc free: 0000000000000000 +2025/08/19 14:00:27 [debug] 398217#398217: *29 hc busy: 0000000000000000 0 +2025/08/19 14:00:27 [debug] 398217#398217: *29 tcp_nodelay +2025/08/19 14:00:27 [debug] 398217#398217: *29 reusable connection: 1 +2025/08/19 14:00:27 [debug] 398217#398217: *29 event timer add: 6: 65000:193225454 +2025/08/19 14:00:27 [debug] 398217#398217: timer delta: 1 +2025/08/19 14:00:27 [debug] 398217#398217: worker cycle +2025/08/19 14:00:27 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 14:00:27 [debug] 398217#398217: epoll: fd:6 ev:2001 d:00007877C5D891E1 +2025/08/19 14:00:27 [debug] 398217#398217: *29 http keepalive handler +2025/08/19 14:00:27 [debug] 398217#398217: *29 malloc: 000061F3F26A90A0:1024 +2025/08/19 14:00:27 [debug] 398217#398217: *29 recv: eof:1, avail:-1 +2025/08/19 14:00:27 [debug] 398217#398217: *29 recv: fd:6 0 of 1024 +2025/08/19 14:00:27 [info] 398217#398217: *29 client 127.0.0.1 closed keepalive connection +2025/08/19 14:00:27 [debug] 398217#398217: *29 close http connection: 6 +2025/08/19 14:00:27 [debug] 398217#398217: *29 event timer del: 6: 193225454 +2025/08/19 14:00:27 [debug] 398217#398217: *29 reusable connection: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *29 free: 000061F3F26A90A0 +2025/08/19 14:00:27 [debug] 398217#398217: *29 free: 000061F3F26A6840, unused: 136 +2025/08/19 14:00:27 [debug] 398217#398217: timer delta: 1 +2025/08/19 14:00:27 [debug] 398217#398217: worker cycle +2025/08/19 14:00:27 [debug] 398217#398217: epoll timer: -1 +2025/08/19 14:00:27 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 14:00:27 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:00:27 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 14:00:27 [debug] 398217#398217: *30 accept: 127.0.0.1:45078 fd:6 +2025/08/19 14:00:27 [debug] 398217#398217: *30 event timer add: 6: 60000:193220780 +2025/08/19 14:00:27 [debug] 398217#398217: *30 reusable connection: 1 +2025/08/19 14:00:27 [debug] 398217#398217: *30 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:00:27 [debug] 398217#398217: timer delta: 325 +2025/08/19 14:00:27 [debug] 398217#398217: worker cycle +2025/08/19 14:00:27 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 14:00:27 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http wait request handler +2025/08/19 14:00:27 [debug] 398217#398217: *30 malloc: 000061F3F26A90A0:1024 +2025/08/19 14:00:27 [debug] 398217#398217: *30 recv: eof:0, avail:-1 +2025/08/19 14:00:27 [debug] 398217#398217: *30 recv: fd:6 1024 of 1024 +2025/08/19 14:00:27 [debug] 398217#398217: *30 recv: avail:112 +2025/08/19 14:00:27 [debug] 398217#398217: *30 reusable connection: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http process request line +2025/08/19 14:00:27 [debug] 398217#398217: *30 http request line: "PUT /upload HTTP/1.1" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http uri: "/upload" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http args: "" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http exten: "" +2025/08/19 14:00:27 [debug] 398217#398217: *30 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http process request header line +2025/08/19 14:00:27 [debug] 398217#398217: *30 http header: "Host: localhost:9001" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http header: "Accept: */*" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI1NjQzNDM2NDZhNzliMzJmNjg1Mzg5ZDMyZDM1ODRlZDgyNDY3NTBkNTg1MDM3ZDgxYjVjZTEwYmQxMjJiNTQ2IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjY0MjcsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI4MTNjZGZmNDExMmY5ODBkOGRkMjhhMzJlYjhhNmNlMzM3OTVhMjdjMDExMTJjMThmOTRjYTgzYTljNGE2YzIwIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMDAyNyJdXSwiY29udGVudCI6IiIsInNpZyI6ImRlMDlkZTExMmJjMjFiYTAwOGM2N2U2MzBkMTliNzhhYWUxMjUwM2YxNzQxODliYmRlYzgzYzZlNzRjY2QxNDZjM2QxYjgwYjE3ZWI4Y2ZkNjA1YmQ4MzY0ZDlhNzU0ODdmOGRhYWExMjIyY2JiNDFmYjNlODBjYzY2ZWViYmM2In0=" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http header: "Content-Type: text/plain" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http header: "Content-Disposition: attachment; filename="test_blob_1755626427.txt"" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http header: "Content-Length: 296" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http header done +2025/08/19 14:00:27 [debug] 398217#398217: *30 event timer del: 6: 193220780 +2025/08/19 14:00:27 [debug] 398217#398217: *30 generic phase: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 rewrite phase: 1 +2025/08/19 14:00:27 [debug] 398217#398217: *30 test location: "/health" +2025/08/19 14:00:27 [debug] 398217#398217: *30 test location: "/upload" +2025/08/19 14:00:27 [debug] 398217#398217: *30 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:00:27 [debug] 398217#398217: *30 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 14:00:27 [debug] 398217#398217: *30 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 14:00:27 [debug] 398217#398217: *30 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 14:00:27 [debug] 398217#398217: *30 using configuration "/upload" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http cl:296 max:104857600 +2025/08/19 14:00:27 [debug] 398217#398217: *30 rewrite phase: 3 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "PUT" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script regex: "^(PUT)$" +2025/08/19 14:00:27 [notice] 398217#398217: *30 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script if +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script if: false +2025/08/19 14:00:27 [debug] 398217#398217: *30 post rewrite phase: 4 +2025/08/19 14:00:27 [debug] 398217#398217: *30 generic phase: 5 +2025/08/19 14:00:27 [debug] 398217#398217: *30 generic phase: 6 +2025/08/19 14:00:27 [debug] 398217#398217: *30 generic phase: 7 +2025/08/19 14:00:27 [debug] 398217#398217: *30 access phase: 8 +2025/08/19 14:00:27 [debug] 398217#398217: *30 access phase: 9 +2025/08/19 14:00:27 [debug] 398217#398217: *30 access phase: 10 +2025/08/19 14:00:27 [debug] 398217#398217: *30 post access phase: 11 +2025/08/19 14:00:27 [debug] 398217#398217: *30 generic phase: 12 +2025/08/19 14:00:27 [debug] 398217#398217: *30 generic phase: 13 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http client request body preread 184 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http request body content length filter +2025/08/19 14:00:27 [debug] 398217#398217: *30 http body new buf t:1 f:0 000061F3F26A93E8, pos 000061F3F26A93E8, size: 184 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http read client request body +2025/08/19 14:00:27 [debug] 398217#398217: *30 recv: eof:0, avail:112 +2025/08/19 14:00:27 [debug] 398217#398217: *30 recv: fd:6 112 of 112 +2025/08/19 14:00:27 [debug] 398217#398217: *30 recv: avail:0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http client request body recv 112 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http body new buf t:1 f:0 000061F3F26BC820, pos 000061F3F26BC820, size: 112 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http client request body rest 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http init upstream, client timer: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 14:00:27 [debug] 398217#398217: *30 posix_memalign: 000061F3F26B0140:4096 @16 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "QUERY_STRING" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "QUERY_STRING: " +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "REQUEST_METHOD" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "PUT" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "CONTENT_TYPE" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "text/plain" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "CONTENT_LENGTH" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "296" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "SCRIPT_NAME" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "/upload" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "REQUEST_URI" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "/upload" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "DOCUMENT_URI" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "/upload" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "DOCUMENT_ROOT" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "./blobs" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "SERVER_PROTOCOL" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "HTTP/1.1" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "REQUEST_SCHEME" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "http" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "GATEWAY_INTERFACE" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "CGI/1.1" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "SERVER_SOFTWARE" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "nginx/" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "1.18.0" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "REMOTE_ADDR" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "127.0.0.1" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "REMOTE_PORT" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "45078" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "REMOTE_PORT: 45078" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "SERVER_ADDR" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "127.0.0.1" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "SERVER_PORT" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "9001" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "SERVER_NAME" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "localhost" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "REDIRECT_STATUS" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "200" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "SCRIPT_FILENAME" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script var: "./blobs" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http script copy: "/ginxsom.fcgi" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI1NjQzNDM2NDZhNzliMzJmNjg1Mzg5ZDMyZDM1ODRlZDgyNDY3NTBkNTg1MDM3ZDgxYjVjZTEwYmQxMjJiNTQ2IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjY0MjcsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI4MTNjZGZmNDExMmY5ODBkOGRkMjhhMzJlYjhhNmNlMzM3OTVhMjdjMDExMTJjMThmOTRjYTgzYTljNGE2YzIwIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMDAyNyJdXSwiY29udGVudCI6IiIsInNpZyI6ImRlMDlkZTExMmJjMjFiYTAwOGM2N2U2MzBkMTliNzhhYWUxMjUwM2YxNzQxODliYmRlYzgzYzZlNzRjY2QxNDZjM2QxYjgwYjE3ZWI4Y2ZkNjA1YmQ4MzY0ZDlhNzU0ODdmOGRhYWExMjIyY2JiNDFmYjNlODBjYzY2ZWViYmM2In0=" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755626427.txt"" +2025/08/19 14:00:27 [debug] 398217#398217: *30 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http cleanup add: 000061F3F26BCB70 +2025/08/19 14:00:27 [debug] 398217#398217: *30 get rr peer, try: 1 +2025/08/19 14:00:27 [debug] 398217#398217: *30 stream socket 10 +2025/08/19 14:00:27 [debug] 398217#398217: *30 epoll add connection: fd:10 ev:80002005 +2025/08/19 14:00:27 [debug] 398217#398217: *30 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #31 +2025/08/19 14:00:27 [debug] 398217#398217: *30 connected +2025/08/19 14:00:27 [debug] 398217#398217: *30 http upstream connect: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 posix_memalign: 000061F3F268FF20:128 @16 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http upstream send request +2025/08/19 14:00:27 [debug] 398217#398217: *30 http upstream send request body +2025/08/19 14:00:27 [debug] 398217#398217: *30 chain writer buf fl:0 s:1304 +2025/08/19 14:00:27 [debug] 398217#398217: *30 chain writer buf fl:0 s:184 +2025/08/19 14:00:27 [debug] 398217#398217: *30 chain writer buf fl:0 s:8 +2025/08/19 14:00:27 [debug] 398217#398217: *30 chain writer buf fl:0 s:112 +2025/08/19 14:00:27 [debug] 398217#398217: *30 chain writer buf fl:0 s:8 +2025/08/19 14:00:27 [debug] 398217#398217: *30 chain writer in: 000061F3F26BCC00 +2025/08/19 14:00:27 [debug] 398217#398217: *30 writev: 1616 of 1616 +2025/08/19 14:00:27 [debug] 398217#398217: *30 chain writer out: 0000000000000000 +2025/08/19 14:00:27 [debug] 398217#398217: *30 event timer add: 10: 60000:193220781 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http request count:2 blk:0 +2025/08/19 14:00:27 [debug] 398217#398217: timer delta: 1 +2025/08/19 14:00:27 [debug] 398217#398217: worker cycle +2025/08/19 14:00:27 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 14:00:27 [debug] 398217#398217: epoll: fd:6 ev:0004 d:00007877C5D891E0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http run request: "/upload?" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http upstream check client, write event:1, "/upload" +2025/08/19 14:00:27 [debug] 398217#398217: epoll: fd:10 ev:0004 d:00007877C5D892C9 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http upstream request: "/upload?" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http upstream dummy handler +2025/08/19 14:00:27 [debug] 398217#398217: timer delta: 2 +2025/08/19 14:00:27 [debug] 398217#398217: worker cycle +2025/08/19 14:00:27 [debug] 398217#398217: epoll timer: 59998 +2025/08/19 14:00:27 [debug] 398217#398217: epoll: fd:10 ev:2005 d:00007877C5D892C9 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http upstream request: "/upload?" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http upstream process header +2025/08/19 14:00:27 [debug] 398217#398217: *30 malloc: 000061F3F26B1150:4096 +2025/08/19 14:00:27 [debug] 398217#398217: *30 recv: eof:1, avail:-1 +2025/08/19 14:00:27 [debug] 398217#398217: *30 recv: fd:10 1664 of 4096 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 01 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 06 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 00 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 01 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 06 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 5D +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 03 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 00 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record length: 1629 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header: "LOG: [2025-08-19 14:00:27] PUT /upload - Auth: pending - Status: 0" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI1NjQzNDM2NDZhNzliMzJmNjg1Mzg5ZDMyZDM1ODRlZDgyNDY3NTBkNTg1MDM3ZDgxYjVjZTEwYmQxMjJiNTQ2IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjY0MjcsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI4MTNjZGZmNDExMmY5ODBkOGRkMjhhMzJlYjhhNmNlMzM3OTVhMjdjMDExMTJjMThmOTRjYTgzYTljNGE2YzIwIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMDAyNyJdXSwiY29udGVudCI6IiIsInNpZyI6ImRlMDlkZTExMmJjMjFiYTAwOGM2N2U2MzBkMTliNzhhYWUxMjUwM2YxNzQxODliYmRlYzgzYzZlNzRjY2QxNDZjM2QxYjgwYjE3ZWI4Y2ZkNjA1YmQ4MzY0ZDlhNzU0ODdmOGRhYWExMjIyY2JiNDFmYjNlODBjYzY2ZWViYmM2In0=" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header: "DEBUG: Authenticating request - method: PUT, hash: null" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header: "DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiI1NjQzNDM2NDZhNzliMzJmNjg1Mzg5ZDMyZDM1ODRlZDgyNDY3NTBkNTg1MDM3ZDgxYjVjZTEw..." +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header: "DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"564343646a79b32f685389d32d3584ed8246750d585037d81b5ce10bd122b546","pubkey":"79be..." +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header: "DEBUG: Nostr event validation failed: -32 (Event has invalid public key)" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header: "Status: 401 Unauthorized" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header: "Content-Type: application/json" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi parser: 1 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi header done +2025/08/19 14:00:27 [debug] 398217#398217: *30 posix_memalign: 000061F3F26B2160:4096 @16 +2025/08/19 14:00:27 [debug] 398217#398217: *30 HTTP/1.1 401 Unauthorized +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:00:27 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 +LOG: [2025-08-19 14:00:27] PUT /upload - Auth: pending - Status: 0 +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI1NjQzNDM2NDZhNzliMzJmNjg1Mzg5ZDMyZDM1ODRlZDgyNDY3NTBkNTg1MDM3ZDgxYjVjZTEwYmQxMjJiNTQ2IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjY0MjcsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI4MTNjZGZmNDExMmY5ODBkOGRkMjhhMzJlYjhhNmNlMzM3OTVhMjdjMDExMTJjMThmOTRjYTgzYTljNGE2YzIwIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMDAyNyJdXSwiY29udGVudCI6IiIsInNpZyI6ImRlMDlkZTExMmJjMjFiYTAwOGM2N2U2MzBkMTliNzhhYWUxMjUwM2YxNzQxODliYmRlYzgzYzZlNzRjY2QxNDZjM2QxYjgwYjE3ZWI4Y2ZkNjA1YmQ4MzY0ZDlhNzU0ODdmOGRhYWExMjIyY2JiNDFmYjNlODBjYzY2ZWViYmM2In0= +DEBUG: Authenticating request - method: PUT, hash: null +DEBUG: Base64 event from header: eyJraW5kIjoyNDI0MiwiaWQiOiI1NjQzNDM2NDZhNzliMzJmNjg1Mzg5ZDMyZDM1ODRlZDgyNDY3NTBkNTg1MDM3ZDgxYjVjZTEw... +DEBUG: Parsed authorization header, extracted JSON: {"kind":24242,"id":"564343646a79b32f685389d32d3584ed8246750d585037d81b5ce10bd122b546","pubkey":"79be... +DEBUG: Nostr event validation failed: -32 (Event has invalid public key) + +2025/08/19 14:00:27 [debug] 398217#398217: *30 write new buf t:1 f:0 000061F3F26B2180, pos 000061F3F26B2180, size: 1493 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http write filter: l:0 f:0 s:1493 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http write filter limit 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 writev: 1493 of 1493 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http write filter 0000000000000000 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http cacheable: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http upstream process upstream +2025/08/19 14:00:27 [debug] 398217#398217: *30 pipe read upstream: 1 +2025/08/19 14:00:27 [debug] 398217#398217: *30 pipe preread: 284 +2025/08/19 14:00:27 [debug] 398217#398217: *30 readv: eof:1, avail:0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 readv: 1, last:2432 +2025/08/19 14:00:27 [debug] 398217#398217: *30 pipe recv chain: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 pipe buf free s:0 t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 284 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 pipe length: -1 +2025/08/19 14:00:27 [debug] 398217#398217: *30 input buf #0 000061F3F26B16B4 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 01 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 06 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 00 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 01 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 00 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 00 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 00 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 00 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record length: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi closed stdout +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 01 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 03 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 00 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 01 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 00 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 08 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 00 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record byte: 00 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi record length: 8 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http fastcgi sent end request +2025/08/19 14:00:27 [debug] 398217#398217: *30 input buf 000061F3F26B16B4 257 +2025/08/19 14:00:27 [debug] 398217#398217: *30 pipe write downstream: 1 +2025/08/19 14:00:27 [debug] 398217#398217: *30 pipe write downstream flush in +2025/08/19 14:00:27 [debug] 398217#398217: *30 http output filter "/upload?" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http copy filter: "/upload?" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http postpone filter "/upload?" 000061F3F26BCBE0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http chunk: 257 +2025/08/19 14:00:27 [debug] 398217#398217: *30 write new buf t:1 f:0 000061F3F26B10F8, pos 000061F3F26B10F8, size: 5 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 write new buf t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 257 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http write filter: l:0 f:0 s:264 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http copy filter: 0 "/upload?" +2025/08/19 14:00:27 [debug] 398217#398217: *30 pipe write downstream done +2025/08/19 14:00:27 [debug] 398217#398217: *30 event timer: 10, old: 193220781, new: 193220783 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http upstream exit: 0000000000000000 +2025/08/19 14:00:27 [debug] 398217#398217: *30 finalize http upstream request: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 finalize http fastcgi request +2025/08/19 14:00:27 [debug] 398217#398217: *30 free rr peer 1 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 close http upstream connection: 10 +2025/08/19 14:00:27 [debug] 398217#398217: *30 free: 000061F3F268FF20, unused: 48 +2025/08/19 14:00:27 [debug] 398217#398217: *30 event timer del: 10: 193220781 +2025/08/19 14:00:27 [debug] 398217#398217: *30 reusable connection: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http upstream temp fd: -1 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http output filter "/upload?" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http copy filter: "/upload?" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http postpone filter "/upload?" 00007FFE4490F9F0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http chunk: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 write old buf t:1 f:0 000061F3F26B10F8, pos 000061F3F26B10F8, size: 5 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 write old buf t:1 f:0 000061F3F26B1150, pos 000061F3F26B16B4, size: 257 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 write old buf t:0 f:0 0000000000000000, pos 000061F3D7D652E8, size: 2 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 write new buf t:0 f:0 0000000000000000, pos 000061F3D7D652E5, size: 5 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http write filter: l:1 f:0 s:269 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http write filter limit 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 writev: 269 of 269 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http write filter 0000000000000000 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http copy filter: 0 "/upload?" +2025/08/19 14:00:27 [debug] 398217#398217: *30 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 14:00:27 [debug] 398217#398217: *30 set http keepalive handler +2025/08/19 14:00:27 [debug] 398217#398217: *30 http close request +2025/08/19 14:00:27 [debug] 398217#398217: *30 http log handler +2025/08/19 14:00:27 [debug] 398217#398217: *30 free: 000061F3F26B1150 +2025/08/19 14:00:27 [debug] 398217#398217: *30 free: 000061F3F26C5A20, unused: 3 +2025/08/19 14:00:27 [debug] 398217#398217: *30 free: 000061F3F26BBD90, unused: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 free: 000061F3F26B0140, unused: 54 +2025/08/19 14:00:27 [debug] 398217#398217: *30 free: 000061F3F26B2160, unused: 2202 +2025/08/19 14:00:27 [debug] 398217#398217: *30 free: 000061F3F26A90A0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 hc free: 0000000000000000 +2025/08/19 14:00:27 [debug] 398217#398217: *30 hc busy: 0000000000000000 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 tcp_nodelay +2025/08/19 14:00:27 [debug] 398217#398217: *30 reusable connection: 1 +2025/08/19 14:00:27 [debug] 398217#398217: *30 event timer add: 6: 65000:193225783 +2025/08/19 14:00:27 [debug] 398217#398217: *30 post event 000061F3F26F7760 +2025/08/19 14:00:27 [debug] 398217#398217: timer delta: 0 +2025/08/19 14:00:27 [debug] 398217#398217: posted event 000061F3F26F7760 +2025/08/19 14:00:27 [debug] 398217#398217: *30 delete posted event 000061F3F26F7760 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http keepalive handler +2025/08/19 14:00:27 [debug] 398217#398217: *30 malloc: 000061F3F26A90A0:1024 +2025/08/19 14:00:27 [debug] 398217#398217: *30 recv: eof:0, avail:0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 free: 000061F3F26A90A0 +2025/08/19 14:00:27 [debug] 398217#398217: worker cycle +2025/08/19 14:00:27 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 14:00:27 [debug] 398217#398217: epoll: fd:6 ev:2005 d:00007877C5D891E0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 http keepalive handler +2025/08/19 14:00:27 [debug] 398217#398217: *30 malloc: 000061F3F26A90A0:1024 +2025/08/19 14:00:27 [debug] 398217#398217: *30 recv: eof:1, avail:-1 +2025/08/19 14:00:27 [debug] 398217#398217: *30 recv: fd:6 0 of 1024 +2025/08/19 14:00:27 [info] 398217#398217: *30 client 127.0.0.1 closed keepalive connection +2025/08/19 14:00:27 [debug] 398217#398217: *30 close http connection: 6 +2025/08/19 14:00:27 [debug] 398217#398217: *30 event timer del: 6: 193225783 +2025/08/19 14:00:27 [debug] 398217#398217: *30 reusable connection: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 free: 000061F3F26A90A0 +2025/08/19 14:00:27 [debug] 398217#398217: *30 free: 000061F3F26A6840, unused: 120 +2025/08/19 14:00:27 [debug] 398217#398217: timer delta: 1 +2025/08/19 14:00:27 [debug] 398217#398217: worker cycle +2025/08/19 14:00:27 [debug] 398217#398217: epoll timer: -1 +2025/08/19 14:00:27 [debug] 398217#398217: epoll: fd:5 ev:0001 d:00007877C5D89010 +2025/08/19 14:00:27 [debug] 398217#398217: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:00:27 [debug] 398217#398217: posix_memalign: 000061F3F26A6840:512 @16 +2025/08/19 14:00:27 [debug] 398217#398217: *32 accept: 127.0.0.1:45092 fd:6 +2025/08/19 14:00:27 [debug] 398217#398217: *32 event timer add: 6: 60000:193220796 +2025/08/19 14:00:27 [debug] 398217#398217: *32 reusable connection: 1 +2025/08/19 14:00:27 [debug] 398217#398217: *32 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:00:27 [debug] 398217#398217: timer delta: 12 +2025/08/19 14:00:27 [debug] 398217#398217: worker cycle +2025/08/19 14:00:27 [debug] 398217#398217: epoll timer: 60000 +2025/08/19 14:00:27 [debug] 398217#398217: epoll: fd:6 ev:0001 d:00007877C5D891E1 +2025/08/19 14:00:27 [debug] 398217#398217: *32 http wait request handler +2025/08/19 14:00:27 [debug] 398217#398217: *32 malloc: 000061F3F26A90A0:1024 +2025/08/19 14:00:27 [debug] 398217#398217: *32 recv: eof:0, avail:-1 +2025/08/19 14:00:27 [debug] 398217#398217: *32 recv: fd:6 142 of 1024 +2025/08/19 14:00:27 [debug] 398217#398217: *32 reusable connection: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *32 posix_memalign: 000061F3F26C5A20:4096 @16 +2025/08/19 14:00:27 [debug] 398217#398217: *32 http process request line +2025/08/19 14:00:27 [debug] 398217#398217: *32 http request line: "GET /813cdff4112f980d8dd28a32eb8a6ce33795a27c01112c18f94ca83a9c4a6c20 HTTP/1.1" +2025/08/19 14:00:27 [debug] 398217#398217: *32 http uri: "/813cdff4112f980d8dd28a32eb8a6ce33795a27c01112c18f94ca83a9c4a6c20" +2025/08/19 14:00:27 [debug] 398217#398217: *32 http args: "" +2025/08/19 14:00:27 [debug] 398217#398217: *32 http exten: "" +2025/08/19 14:00:27 [debug] 398217#398217: *32 posix_memalign: 000061F3F26BBD90:4096 @16 +2025/08/19 14:00:27 [debug] 398217#398217: *32 http process request header line +2025/08/19 14:00:27 [debug] 398217#398217: *32 http header: "Host: localhost:9001" +2025/08/19 14:00:27 [debug] 398217#398217: *32 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:00:27 [debug] 398217#398217: *32 http header: "Accept: */*" +2025/08/19 14:00:27 [debug] 398217#398217: *32 http header done +2025/08/19 14:00:27 [debug] 398217#398217: *32 event timer del: 6: 193220796 +2025/08/19 14:00:27 [debug] 398217#398217: *32 generic phase: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *32 rewrite phase: 1 +2025/08/19 14:00:27 [debug] 398217#398217: *32 test location: "/health" +2025/08/19 14:00:27 [debug] 398217#398217: *32 test location: "/debug/list" +2025/08/19 14:00:27 [debug] 398217#398217: *32 test location: "/" +2025/08/19 14:00:27 [debug] 398217#398217: *32 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:00:27 [debug] 398217#398217: *32 using configuration "^/([a-f0-9]{64}).*$" +2025/08/19 14:00:27 [debug] 398217#398217: *32 http cl:-1 max:104857600 +2025/08/19 14:00:27 [debug] 398217#398217: *32 rewrite phase: 3 +2025/08/19 14:00:27 [debug] 398217#398217: *32 http script var +2025/08/19 14:00:27 [debug] 398217#398217: *32 http script var: "GET" +2025/08/19 14:00:27 [debug] 398217#398217: *32 http script value: "DELETE" +2025/08/19 14:00:27 [debug] 398217#398217: *32 http script not equal +2025/08/19 14:00:27 [debug] 398217#398217: *32 http script if +2025/08/19 14:00:27 [debug] 398217#398217: *32 http finalize request: 404, "/813cdff4112f980d8dd28a32eb8a6ce33795a27c01112c18f94ca83a9c4a6c20?" a:1, c:1 +2025/08/19 14:00:27 [debug] 398217#398217: *32 http special response: 404, "/813cdff4112f980d8dd28a32eb8a6ce33795a27c01112c18f94ca83a9c4a6c20?" +2025/08/19 14:00:27 [debug] 398217#398217: *32 http set discard body +2025/08/19 14:00:27 [debug] 398217#398217: *32 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:00:27 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 14:00:27 [debug] 398217#398217: *32 write new buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 164 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *32 http write filter: l:0 f:0 s:164 +2025/08/19 14:00:27 [debug] 398217#398217: *32 http output filter "/813cdff4112f980d8dd28a32eb8a6ce33795a27c01112c18f94ca83a9c4a6c20?" +2025/08/19 14:00:27 [debug] 398217#398217: *32 http copy filter: "/813cdff4112f980d8dd28a32eb8a6ce33795a27c01112c18f94ca83a9c4a6c20?" +2025/08/19 14:00:27 [debug] 398217#398217: *32 http postpone filter "/813cdff4112f980d8dd28a32eb8a6ce33795a27c01112c18f94ca83a9c4a6c20?" 000061F3F26BC300 +2025/08/19 14:00:27 [debug] 398217#398217: *32 write old buf t:1 f:0 000061F3F26BC170, pos 000061F3F26BC170, size: 164 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *32 write new buf t:0 f:0 0000000000000000, pos 000061F3D7DA4580, size: 100 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *32 write new buf t:0 f:0 0000000000000000, pos 000061F3D7DA4C80, size: 62 file: 0, size: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *32 http write filter: l:1 f:0 s:326 +2025/08/19 14:00:27 [debug] 398217#398217: *32 http write filter limit 0 +2025/08/19 14:00:27 [debug] 398217#398217: *32 writev: 326 of 326 +2025/08/19 14:00:27 [debug] 398217#398217: *32 http write filter 0000000000000000 +2025/08/19 14:00:27 [debug] 398217#398217: *32 http copy filter: 0 "/813cdff4112f980d8dd28a32eb8a6ce33795a27c01112c18f94ca83a9c4a6c20?" +2025/08/19 14:00:27 [debug] 398217#398217: *32 http finalize request: 0, "/813cdff4112f980d8dd28a32eb8a6ce33795a27c01112c18f94ca83a9c4a6c20?" a:1, c:1 +2025/08/19 14:00:27 [debug] 398217#398217: *32 set http keepalive handler +2025/08/19 14:00:27 [debug] 398217#398217: *32 http close request +2025/08/19 14:00:27 [debug] 398217#398217: *32 http log handler +2025/08/19 14:00:27 [debug] 398217#398217: *32 free: 000061F3F26C5A20, unused: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *32 free: 000061F3F26BBD90, unused: 2456 +2025/08/19 14:00:27 [debug] 398217#398217: *32 free: 000061F3F26A90A0 +2025/08/19 14:00:27 [debug] 398217#398217: *32 hc free: 0000000000000000 +2025/08/19 14:00:27 [debug] 398217#398217: *32 hc busy: 0000000000000000 0 +2025/08/19 14:00:27 [debug] 398217#398217: *32 tcp_nodelay +2025/08/19 14:00:27 [debug] 398217#398217: *32 reusable connection: 1 +2025/08/19 14:00:27 [debug] 398217#398217: *32 event timer add: 6: 65000:193225796 +2025/08/19 14:00:27 [debug] 398217#398217: timer delta: 0 +2025/08/19 14:00:27 [debug] 398217#398217: worker cycle +2025/08/19 14:00:27 [debug] 398217#398217: epoll timer: 65000 +2025/08/19 14:00:27 [debug] 398217#398217: epoll: fd:6 ev:2001 d:00007877C5D891E1 +2025/08/19 14:00:27 [debug] 398217#398217: *32 http keepalive handler +2025/08/19 14:00:27 [debug] 398217#398217: *32 malloc: 000061F3F26A90A0:1024 +2025/08/19 14:00:27 [debug] 398217#398217: *32 recv: eof:1, avail:-1 +2025/08/19 14:00:27 [debug] 398217#398217: *32 recv: fd:6 0 of 1024 +2025/08/19 14:00:27 [info] 398217#398217: *32 client 127.0.0.1 closed keepalive connection +2025/08/19 14:00:27 [debug] 398217#398217: *32 close http connection: 6 +2025/08/19 14:00:27 [debug] 398217#398217: *32 event timer del: 6: 193225796 +2025/08/19 14:00:27 [debug] 398217#398217: *32 reusable connection: 0 +2025/08/19 14:00:27 [debug] 398217#398217: *32 free: 000061F3F26A90A0 +2025/08/19 14:00:27 [debug] 398217#398217: *32 free: 000061F3F26A6840, unused: 136 +2025/08/19 14:00:27 [debug] 398217#398217: timer delta: 1 +2025/08/19 14:00:27 [debug] 398217#398217: worker cycle +2025/08/19 14:00:27 [debug] 398217#398217: epoll timer: -1 +2025/08/19 14:11:35 [notice] 398216#398216: signal 15 (SIGTERM) received from 447374, exiting +2025/08/19 14:11:35 [debug] 398216#398216: wake up, sigio 0 +2025/08/19 14:11:35 [debug] 398216#398216: child: 0 398217 e:0 t:0 d:0 r:1 j:0 +2025/08/19 14:11:35 [debug] 398216#398216: termination cycle: 50 +2025/08/19 14:11:35 [debug] 398216#398216: sigsuspend +2025/08/19 14:11:35 [debug] 398217#398217: epoll: fd:7 ev:0001 d:00007877C5D890F8 +2025/08/19 14:11:35 [debug] 398217#398217: channel handler +2025/08/19 14:11:35 [debug] 398217#398217: channel: 32 +2025/08/19 14:11:35 [debug] 398217#398217: channel command: 4 +2025/08/19 14:11:35 [debug] 398217#398217: channel: -2 +2025/08/19 14:11:35 [debug] 398217#398217: timer delta: 667624 +2025/08/19 14:11:35 [notice] 398217#398217: exiting +2025/08/19 14:11:35 [debug] 398217#398217: flush files +2025/08/19 14:11:35 [debug] 398217#398217: run cleanup: 000061F3F26F4A70 +2025/08/19 14:11:35 [debug] 398217#398217: run cleanup: 000061F3F26E7A08 +2025/08/19 14:11:35 [debug] 398217#398217: cleanup resolver +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26F5DD0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26E8BD0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26C7B40 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26C6A30 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26C0A00 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26BF940 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26BE880 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26BD7C0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26B5160 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26AC130, unused: 0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26B6570, unused: 0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26C1A10, unused: 0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26C8B50, unused: 0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26CCB60, unused: 0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26D0B70, unused: 0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26D4B80, unused: 0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26D8B90, unused: 0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26DCBA0, unused: 0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26E0BB0, unused: 0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26E4BC0, unused: 0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26E9DA0, unused: 0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26EDDB0, unused: 0 +2025/08/19 14:11:35 [debug] 398217#398217: free: 000061F3F26F1DC0, unused: 4920 +2025/08/19 14:11:35 [notice] 398217#398217: exit +2025/08/19 14:11:35 [notice] 398216#398216: signal 17 (SIGCHLD) received from 398217 +2025/08/19 14:11:35 [notice] 398216#398216: worker process 398217 exited with code 0 +2025/08/19 14:11:35 [debug] 398216#398216: shmtx forced unlock +2025/08/19 14:11:35 [debug] 398216#398216: wake up, sigio 3 +2025/08/19 14:11:35 [debug] 398216#398216: reap children +2025/08/19 14:11:35 [debug] 398216#398216: child: 0 398217 e:1 t:1 d:0 r:1 j:0 +2025/08/19 14:11:35 [notice] 398216#398216: exit +2025/08/19 14:11:35 [debug] 398216#398216: close listening 0.0.0.0:9001 #5 +2025/08/19 14:11:35 [debug] 398216#398216: run cleanup: 000061F3F26E7A08 +2025/08/19 14:11:35 [debug] 398216#398216: cleanup resolver +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26F5DD0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26E8BD0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26C7B40 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26C6A30 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26C0A00 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26BF940 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26BE880 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26BD7C0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26B5160 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26AC130, unused: 0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26B6570, unused: 0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26C1A10, unused: 0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26C8B50, unused: 0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26CCB60, unused: 0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26D0B70, unused: 0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26D4B80, unused: 0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26D8B90, unused: 0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26DCBA0, unused: 0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26E0BB0, unused: 0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26E4BC0, unused: 0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26E9DA0, unused: 0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26EDDB0, unused: 0 +2025/08/19 14:11:35 [debug] 398216#398216: free: 000061F3F26F1DC0, unused: 4951 +2025/08/19 14:11:35 [debug] 447375#447375: bind() 0.0.0.0:9001 #5 +2025/08/19 14:11:35 [notice] 447375#447375: using the "epoll" event method +2025/08/19 14:11:35 [debug] 447375#447375: counter: 00007F2328BAC080, 1 +2025/08/19 14:11:35 [notice] 447375#447375: nginx/1.18.0 (Ubuntu) +2025/08/19 14:11:35 [notice] 447375#447375: OS: Linux 6.12.10-76061203-generic +2025/08/19 14:11:35 [notice] 447375#447375: getrlimit(RLIMIT_NOFILE): 1048576:1048576 +2025/08/19 14:11:35 [debug] 447376#447375: write: 6, 00007FFE17FC2990, 7, 0 +2025/08/19 14:11:35 [debug] 447376#447376: setproctitle: "nginx: master process nginx -p . -c config/local-nginx.conf" +2025/08/19 14:11:35 [notice] 447376#447376: start worker processes +2025/08/19 14:11:35 [debug] 447376#447376: channel 6:7 +2025/08/19 14:11:35 [notice] 447376#447376: start worker process 447377 +2025/08/19 14:11:35 [debug] 447376#447376: sigsuspend +2025/08/19 14:11:35 [debug] 447377#447377: add cleanup: 0000556F9E20CA70 +2025/08/19 14:11:35 [debug] 447377#447377: malloc: 0000556F9E1BFBD0:8 +2025/08/19 14:11:35 [debug] 447377#447377: notify eventfd: 9 +2025/08/19 14:11:35 [debug] 447377#447377: testing the EPOLLRDHUP flag: success +2025/08/19 14:11:35 [debug] 447377#447377: malloc: 0000556F9E1D2580:6144 +2025/08/19 14:11:35 [debug] 447377#447377: malloc: 00007F23289A4010:237568 +2025/08/19 14:11:35 [debug] 447377#447377: malloc: 0000556F9E20F6A0:98304 +2025/08/19 14:11:35 [debug] 447377#447377: malloc: 0000556F9E2276B0:98304 +2025/08/19 14:11:35 [debug] 447377#447377: epoll add event: fd:5 op:1 ev:00002001 +2025/08/19 14:11:35 [debug] 447377#447377: epoll add event: fd:7 op:1 ev:00002001 +2025/08/19 14:11:35 [debug] 447377#447377: setproctitle: "nginx: worker process" +2025/08/19 14:11:35 [debug] 447377#447377: worker cycle +2025/08/19 14:11:35 [debug] 447377#447377: epoll timer: -1 +2025/08/19 14:12:19 [debug] 447377#447377: epoll: fd:5 ev:0001 d:00007F23289A4010 +2025/08/19 14:12:19 [debug] 447377#447377: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:12:19 [debug] 447377#447377: posix_memalign: 0000556F9E1BE840:512 @16 +2025/08/19 14:12:19 [debug] 447377#447377: *1 accept: 127.0.0.1:55808 fd:6 +2025/08/19 14:12:19 [debug] 447377#447377: *1 event timer add: 6: 60000:193932786 +2025/08/19 14:12:19 [debug] 447377#447377: *1 reusable connection: 1 +2025/08/19 14:12:19 [debug] 447377#447377: *1 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:12:19 [debug] 447377#447377: timer delta: 44361 +2025/08/19 14:12:19 [debug] 447377#447377: worker cycle +2025/08/19 14:12:19 [debug] 447377#447377: epoll timer: 60000 +2025/08/19 14:12:19 [debug] 447377#447377: epoll: fd:6 ev:0001 d:00007F23289A41E0 +2025/08/19 14:12:19 [debug] 447377#447377: *1 http wait request handler +2025/08/19 14:12:19 [debug] 447377#447377: *1 malloc: 0000556F9E1C10A0:1024 +2025/08/19 14:12:19 [debug] 447377#447377: *1 recv: eof:0, avail:-1 +2025/08/19 14:12:19 [debug] 447377#447377: *1 recv: fd:6 84 of 1024 +2025/08/19 14:12:19 [debug] 447377#447377: *1 reusable connection: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *1 posix_memalign: 0000556F9E1DDA20:4096 @16 +2025/08/19 14:12:19 [debug] 447377#447377: *1 http process request line +2025/08/19 14:12:19 [debug] 447377#447377: *1 http request line: "GET /health HTTP/1.1" +2025/08/19 14:12:19 [debug] 447377#447377: *1 http uri: "/health" +2025/08/19 14:12:19 [debug] 447377#447377: *1 http args: "" +2025/08/19 14:12:19 [debug] 447377#447377: *1 http exten: "" +2025/08/19 14:12:19 [debug] 447377#447377: *1 posix_memalign: 0000556F9E1D3D90:4096 @16 +2025/08/19 14:12:19 [debug] 447377#447377: *1 http process request header line +2025/08/19 14:12:19 [debug] 447377#447377: *1 http header: "Host: localhost:9001" +2025/08/19 14:12:19 [debug] 447377#447377: *1 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:12:19 [debug] 447377#447377: *1 http header: "Accept: */*" +2025/08/19 14:12:19 [debug] 447377#447377: *1 http header done +2025/08/19 14:12:19 [debug] 447377#447377: *1 event timer del: 6: 193932786 +2025/08/19 14:12:19 [debug] 447377#447377: *1 generic phase: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *1 rewrite phase: 1 +2025/08/19 14:12:19 [debug] 447377#447377: *1 test location: "/health" +2025/08/19 14:12:19 [debug] 447377#447377: *1 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:12:19 [debug] 447377#447377: *1 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 14:12:19 [debug] 447377#447377: *1 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 14:12:19 [debug] 447377#447377: *1 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 14:12:19 [debug] 447377#447377: *1 using configuration "/health" +2025/08/19 14:12:19 [debug] 447377#447377: *1 http cl:-1 max:104857600 +2025/08/19 14:12:19 [debug] 447377#447377: *1 rewrite phase: 3 +2025/08/19 14:12:19 [debug] 447377#447377: *1 http set discard body +2025/08/19 14:12:19 [debug] 447377#447377: *1 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:12:19 GMT +Content-Type: application/octet-stream +Content-Length: 3 +Connection: keep-alive +Content-Type: text/plain + +2025/08/19 14:12:19 [debug] 447377#447377: *1 write new buf t:1 f:0 0000556F9E1D4170, pos 0000556F9E1D4170, size: 196 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *1 http write filter: l:0 f:0 s:196 +2025/08/19 14:12:19 [debug] 447377#447377: *1 http output filter "/health?" +2025/08/19 14:12:19 [debug] 447377#447377: *1 http copy filter: "/health?" +2025/08/19 14:12:19 [debug] 447377#447377: *1 http postpone filter "/health?" 00007FFE17FC2520 +2025/08/19 14:12:19 [debug] 447377#447377: *1 write old buf t:1 f:0 0000556F9E1D4170, pos 0000556F9E1D4170, size: 196 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *1 write new buf t:0 f:0 0000000000000000, pos 0000556F9E1FBB32, size: 3 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *1 http write filter: l:1 f:0 s:199 +2025/08/19 14:12:19 [debug] 447377#447377: *1 http write filter limit 0 +2025/08/19 14:12:19 [debug] 447377#447377: *1 writev: 199 of 199 +2025/08/19 14:12:19 [debug] 447377#447377: *1 http write filter 0000000000000000 +2025/08/19 14:12:19 [debug] 447377#447377: *1 http copy filter: 0 "/health?" +2025/08/19 14:12:19 [debug] 447377#447377: *1 http finalize request: 0, "/health?" a:1, c:1 +2025/08/19 14:12:19 [debug] 447377#447377: *1 set http keepalive handler +2025/08/19 14:12:19 [debug] 447377#447377: *1 http close request +2025/08/19 14:12:19 [debug] 447377#447377: *1 http log handler +2025/08/19 14:12:19 [debug] 447377#447377: *1 free: 0000556F9E1DDA20, unused: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *1 free: 0000556F9E1D3D90, unused: 2736 +2025/08/19 14:12:19 [debug] 447377#447377: *1 free: 0000556F9E1C10A0 +2025/08/19 14:12:19 [debug] 447377#447377: *1 hc free: 0000000000000000 +2025/08/19 14:12:19 [debug] 447377#447377: *1 hc busy: 0000000000000000 0 +2025/08/19 14:12:19 [debug] 447377#447377: *1 tcp_nodelay +2025/08/19 14:12:19 [debug] 447377#447377: *1 reusable connection: 1 +2025/08/19 14:12:19 [debug] 447377#447377: *1 event timer add: 6: 65000:193937787 +2025/08/19 14:12:19 [debug] 447377#447377: timer delta: 1 +2025/08/19 14:12:19 [debug] 447377#447377: worker cycle +2025/08/19 14:12:19 [debug] 447377#447377: epoll timer: 65000 +2025/08/19 14:12:19 [debug] 447377#447377: epoll: fd:6 ev:2001 d:00007F23289A41E0 +2025/08/19 14:12:19 [debug] 447377#447377: *1 http keepalive handler +2025/08/19 14:12:19 [debug] 447377#447377: *1 malloc: 0000556F9E1C10A0:1024 +2025/08/19 14:12:19 [debug] 447377#447377: *1 recv: eof:1, avail:-1 +2025/08/19 14:12:19 [debug] 447377#447377: *1 recv: fd:6 0 of 1024 +2025/08/19 14:12:19 [info] 447377#447377: *1 client 127.0.0.1 closed keepalive connection +2025/08/19 14:12:19 [debug] 447377#447377: *1 close http connection: 6 +2025/08/19 14:12:19 [debug] 447377#447377: *1 event timer del: 6: 193937787 +2025/08/19 14:12:19 [debug] 447377#447377: *1 reusable connection: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *1 free: 0000556F9E1C10A0 +2025/08/19 14:12:19 [debug] 447377#447377: *1 free: 0000556F9E1BE840, unused: 136 +2025/08/19 14:12:19 [debug] 447377#447377: timer delta: 0 +2025/08/19 14:12:19 [debug] 447377#447377: worker cycle +2025/08/19 14:12:19 [debug] 447377#447377: epoll timer: -1 +2025/08/19 14:12:19 [debug] 447377#447377: epoll: fd:5 ev:0001 d:00007F23289A4010 +2025/08/19 14:12:19 [debug] 447377#447377: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:12:19 [debug] 447377#447377: posix_memalign: 0000556F9E1BE840:512 @16 +2025/08/19 14:12:19 [debug] 447377#447377: *2 accept: 127.0.0.1:55810 fd:6 +2025/08/19 14:12:19 [debug] 447377#447377: *2 event timer add: 6: 60000:193933046 +2025/08/19 14:12:19 [debug] 447377#447377: *2 reusable connection: 1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:12:19 [debug] 447377#447377: timer delta: 259 +2025/08/19 14:12:19 [debug] 447377#447377: worker cycle +2025/08/19 14:12:19 [debug] 447377#447377: epoll timer: 60000 +2025/08/19 14:12:19 [debug] 447377#447377: epoll: fd:6 ev:0001 d:00007F23289A41E1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http wait request handler +2025/08/19 14:12:19 [debug] 447377#447377: *2 malloc: 0000556F9E1C10A0:1024 +2025/08/19 14:12:19 [debug] 447377#447377: *2 recv: eof:0, avail:-1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 recv: fd:6 1024 of 1024 +2025/08/19 14:12:19 [debug] 447377#447377: *2 recv: avail:112 +2025/08/19 14:12:19 [debug] 447377#447377: *2 reusable connection: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 posix_memalign: 0000556F9E1DDA20:4096 @16 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http process request line +2025/08/19 14:12:19 [debug] 447377#447377: *2 http request line: "PUT /upload HTTP/1.1" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http uri: "/upload" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http args: "" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http exten: "" +2025/08/19 14:12:19 [debug] 447377#447377: *2 posix_memalign: 0000556F9E1D3D90:4096 @16 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http process request header line +2025/08/19 14:12:19 [debug] 447377#447377: *2 http header: "Host: localhost:9001" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http header: "Accept: */*" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI4ZTUxM2I4ZmVlODkzODcxMWIwYjAxZjRjNGQ2NGIzNTA3MzZmYTZkYWY4MGQ4MmJlMTgxOTRmMzMxNDgzMzUzIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjcxMzksInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI5NTgzMGRhYjk4NDRjYjY4ZmFlMjAwMTdhZjAxYTRiOWZjZmViYWVlYzkxOTQyNDlhMTg1MTE0ZWFjNzVjNjg5Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMDczOSJdXSwiY29udGVudCI6IiIsInNpZyI6ImQ5YThkMjE0MjhiZWRlYzRlMmQzYjk5M2JhMzAxYjJiZWEwNDIxZGI5MDg3N2RhYTExN2RlMGFhMjgzMWNkMDdkYmI0YzQ0MDRhZjhmYTU5MjE0N2ZkZjNhNGVlYWZiMzMxMzIxNGM0YzBlODU5MjRmNWE1MjZkOTdmNWJjMWViIn0=" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http header: "Content-Type: text/plain" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http header: "Content-Disposition: attachment; filename="test_blob_1755627139.txt"" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http header: "Content-Length: 296" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http header done +2025/08/19 14:12:19 [debug] 447377#447377: *2 event timer del: 6: 193933046 +2025/08/19 14:12:19 [debug] 447377#447377: *2 generic phase: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 rewrite phase: 1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 test location: "/health" +2025/08/19 14:12:19 [debug] 447377#447377: *2 test location: "/upload" +2025/08/19 14:12:19 [debug] 447377#447377: *2 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:12:19 [debug] 447377#447377: *2 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 14:12:19 [debug] 447377#447377: *2 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 14:12:19 [debug] 447377#447377: *2 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 14:12:19 [debug] 447377#447377: *2 using configuration "/upload" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http cl:296 max:104857600 +2025/08/19 14:12:19 [debug] 447377#447377: *2 rewrite phase: 3 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "PUT" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script regex: "^(PUT)$" +2025/08/19 14:12:19 [notice] 447377#447377: *2 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script if +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script if: false +2025/08/19 14:12:19 [debug] 447377#447377: *2 post rewrite phase: 4 +2025/08/19 14:12:19 [debug] 447377#447377: *2 generic phase: 5 +2025/08/19 14:12:19 [debug] 447377#447377: *2 generic phase: 6 +2025/08/19 14:12:19 [debug] 447377#447377: *2 generic phase: 7 +2025/08/19 14:12:19 [debug] 447377#447377: *2 access phase: 8 +2025/08/19 14:12:19 [debug] 447377#447377: *2 access phase: 9 +2025/08/19 14:12:19 [debug] 447377#447377: *2 access phase: 10 +2025/08/19 14:12:19 [debug] 447377#447377: *2 post access phase: 11 +2025/08/19 14:12:19 [debug] 447377#447377: *2 generic phase: 12 +2025/08/19 14:12:19 [debug] 447377#447377: *2 generic phase: 13 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http client request body preread 184 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http request body content length filter +2025/08/19 14:12:19 [debug] 447377#447377: *2 http body new buf t:1 f:0 0000556F9E1C13E8, pos 0000556F9E1C13E8, size: 184 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http read client request body +2025/08/19 14:12:19 [debug] 447377#447377: *2 recv: eof:0, avail:112 +2025/08/19 14:12:19 [debug] 447377#447377: *2 recv: fd:6 112 of 112 +2025/08/19 14:12:19 [debug] 447377#447377: *2 recv: avail:0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http client request body recv 112 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http body new buf t:1 f:0 0000556F9E1D4820, pos 0000556F9E1D4820, size: 112 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http client request body rest 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http init upstream, client timer: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 14:12:19 [debug] 447377#447377: *2 posix_memalign: 0000556F9E1C8140:4096 @16 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "QUERY_STRING" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "QUERY_STRING: " +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "REQUEST_METHOD" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "PUT" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "CONTENT_TYPE" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "text/plain" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "CONTENT_LENGTH" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "296" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "SCRIPT_NAME" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "/upload" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "REQUEST_URI" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "/upload" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "DOCUMENT_URI" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "/upload" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "DOCUMENT_ROOT" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "./blobs" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "SERVER_PROTOCOL" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "HTTP/1.1" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "REQUEST_SCHEME" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "http" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "GATEWAY_INTERFACE" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "CGI/1.1" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "SERVER_SOFTWARE" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "nginx/" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "1.18.0" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "REMOTE_ADDR" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "127.0.0.1" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "REMOTE_PORT" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "55810" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "REMOTE_PORT: 55810" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "SERVER_ADDR" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "127.0.0.1" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "SERVER_PORT" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "9001" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "SERVER_NAME" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "localhost" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "REDIRECT_STATUS" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "200" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "SCRIPT_FILENAME" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script var: "./blobs" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http script copy: "/ginxsom.fcgi" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI4ZTUxM2I4ZmVlODkzODcxMWIwYjAxZjRjNGQ2NGIzNTA3MzZmYTZkYWY4MGQ4MmJlMTgxOTRmMzMxNDgzMzUzIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjcxMzksInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI5NTgzMGRhYjk4NDRjYjY4ZmFlMjAwMTdhZjAxYTRiOWZjZmViYWVlYzkxOTQyNDlhMTg1MTE0ZWFjNzVjNjg5Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMDczOSJdXSwiY29udGVudCI6IiIsInNpZyI6ImQ5YThkMjE0MjhiZWRlYzRlMmQzYjk5M2JhMzAxYjJiZWEwNDIxZGI5MDg3N2RhYTExN2RlMGFhMjgzMWNkMDdkYmI0YzQ0MDRhZjhmYTU5MjE0N2ZkZjNhNGVlYWZiMzMxMzIxNGM0YzBlODU5MjRmNWE1MjZkOTdmNWJjMWViIn0=" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755627139.txt"" +2025/08/19 14:12:19 [debug] 447377#447377: *2 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http cleanup add: 0000556F9E1D4B70 +2025/08/19 14:12:19 [debug] 447377#447377: *2 get rr peer, try: 1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 stream socket 10 +2025/08/19 14:12:19 [debug] 447377#447377: *2 epoll add connection: fd:10 ev:80002005 +2025/08/19 14:12:19 [debug] 447377#447377: *2 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #3 +2025/08/19 14:12:19 [debug] 447377#447377: *2 connected +2025/08/19 14:12:19 [debug] 447377#447377: *2 http upstream connect: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 posix_memalign: 0000556F9E1A7F20:128 @16 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http upstream send request +2025/08/19 14:12:19 [debug] 447377#447377: *2 http upstream send request body +2025/08/19 14:12:19 [debug] 447377#447377: *2 chain writer buf fl:0 s:1304 +2025/08/19 14:12:19 [debug] 447377#447377: *2 chain writer buf fl:0 s:184 +2025/08/19 14:12:19 [debug] 447377#447377: *2 chain writer buf fl:0 s:8 +2025/08/19 14:12:19 [debug] 447377#447377: *2 chain writer buf fl:0 s:112 +2025/08/19 14:12:19 [debug] 447377#447377: *2 chain writer buf fl:0 s:8 +2025/08/19 14:12:19 [debug] 447377#447377: *2 chain writer in: 0000556F9E1D4C00 +2025/08/19 14:12:19 [debug] 447377#447377: *2 writev: 1616 of 1616 +2025/08/19 14:12:19 [debug] 447377#447377: *2 chain writer out: 0000000000000000 +2025/08/19 14:12:19 [debug] 447377#447377: *2 event timer add: 10: 60000:193933046 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http request count:2 blk:0 +2025/08/19 14:12:19 [debug] 447377#447377: timer delta: 0 +2025/08/19 14:12:19 [debug] 447377#447377: worker cycle +2025/08/19 14:12:19 [debug] 447377#447377: epoll timer: 60000 +2025/08/19 14:12:19 [debug] 447377#447377: epoll: fd:6 ev:0004 d:00007F23289A41E1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http run request: "/upload?" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http upstream check client, write event:1, "/upload" +2025/08/19 14:12:19 [debug] 447377#447377: epoll: fd:10 ev:0004 d:00007F23289A42C8 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http upstream request: "/upload?" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http upstream dummy handler +2025/08/19 14:12:19 [debug] 447377#447377: timer delta: 2 +2025/08/19 14:12:19 [debug] 447377#447377: worker cycle +2025/08/19 14:12:19 [debug] 447377#447377: epoll timer: 59998 +2025/08/19 14:12:19 [debug] 447377#447377: epoll: fd:10 ev:2005 d:00007F23289A42C8 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http upstream request: "/upload?" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http upstream process header +2025/08/19 14:12:19 [debug] 447377#447377: *2 malloc: 0000556F9E1C9150:4096 +2025/08/19 14:12:19 [debug] 447377#447377: *2 recv: eof:1, avail:-1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 recv: fd:10 3504 of 4096 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 01 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 06 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 00 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 01 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 0D +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 8A +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 06 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 00 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record length: 3466 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "LOG: [2025-08-19 14:12:19] PUT /upload - Auth: pending - Status: 0" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI4ZTUxM2I4ZmVlODkzODcxMWIwYjAxZjRjNGQ2NGIzNTA3MzZmYTZkYWY4MGQ4MmJlMTgxOTRmMzMxNDgzMzUzIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjcxMzksInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI5NTgzMGRhYjk4NDRjYjY4ZmFlMjAwMTdhZjAxYTRiOWZjZmViYWVlYzkxOTQyNDlhMTg1MTE0ZWFjNzVjNjg5Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMDczOSJdXSwiY29udGVudCI6IiIsInNpZyI6ImQ5YThkMjE0MjhiZWRlYzRlMmQzYjk5M2JhMzAxYjJiZWEwNDIxZGI5MDg3N2RhYTExN2RlMGFhMjgzMWNkMDdkYmI0YzQ0MDRhZjhmYTU5MjE0N2ZkZjNhNGVlYWZiMzMxMzIxNGM0YzBlODU5MjRmNWE1MjZkOTdmNWJjMWViIn0=" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "LOG: [2025-08-19 14:12:19] PUT /upload - Auth: auth_provided - Status: 0" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: Successfully read DEBUG: Calculated SHA-256: 95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: authenticate_request_with_rules called - method: upload, file_hash: 95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689, mime_type: text/plain, file_size: 296" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: Authorization header provided, starting basic nostr authentication" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: authenticate_request ENTRY - method: upload, hash: 95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: authenticate_request - calling parse_authorization_header" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: parse_authorization_header called with header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI4ZTUxM2I4ZmVlODkz..." +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: Extracted base64 event (length=DEBUG: Base64 decode result - decoded_len=DEBUG: Successfully decoded JSON (length=DEBUG: authenticate_request - parse_authorization_header succeeded" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 posix_memalign: 0000556F9E1CA160:4096 @16 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: authenticate_request - calling cJSON_Parse on: {"kind":24242,"id":"8e513b8fee8938711b0b01f4c4d64b350736fa6daf80d82be18194f331483353","pubkey":"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","created_at":1755627139,"tags":[["t","upload"],["x","95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689"],["expiration","1755630739"]],"content":"","sig":"d9a8d21428bedec4e2d3b993ba301b2bea0421db90877daa117de0aa2831cd07dbb4c4404af8fa592147fdf3a4eeafb3313214c4c0e85924f5a526d97f5bc1eb"}" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: authenticate_request - cJSON_Parse succeeded, event parsed" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: authenticate_request - Event fields before validation:" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: id: 8e513b8fee8938711b0b01f4c4d64b350736fa6daf80d82be18194f331483353" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: pubkey: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: sig: d9a8d21428bedec4e2d3b993ba301b2bea0421db90877daa117de0aa2831cd07dbb4c4404af8fa592147fdf3a4eeafb3313214c4c0e85924f5a526d97f5bc1eb" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: kind: 24242" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: created_at: 1755627139" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: authenticate_request - calling nostr_validate_event" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: authenticate_request - nostr_validate_event returned: -32" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: authenticate_request - Nostr event validation FAILED: -32 (Event has invalid public key)" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "DEBUG: authenticate_request - Pubkey length: DEBUG: Basic nostr authentication failed: -32 (Event has invalid public key)" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "Status: 401 Unauthorized" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header: "Content-Type: application/json" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi parser: 1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi header done +2025/08/19 14:12:19 [debug] 447377#447377: *2 posix_memalign: 0000556F9E1CB170:4096 @16 +2025/08/19 14:12:19 [debug] 447377#447377: *2 HTTP/1.1 401 Unauthorized +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:12:19 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 +LOG: [2025-08-19 14:12:19] PUT /upload - Auth: pending - Status: 0 +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI4ZTUxM2I4ZmVlODkzODcxMWIwYjAxZjRjNGQ2NGIzNTA3MzZmYTZkYWY4MGQ4MmJlMTgxOTRmMzMxNDgzMzUzIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjcxMzksInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI5NTgzMGRhYjk4NDRjYjY4ZmFlMjAwMTdhZjAxYTRiOWZjZmViYWVlYzkxOTQyNDlhMTg1MTE0ZWFjNzVjNjg5Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMDczOSJdXSwiY29udGVudCI6IiIsInNpZyI6ImQ5YThkMjE0MjhiZWRlYzRlMmQzYjk5M2JhMzAxYjJiZWEwNDIxZGI5MDg3N2RhYTExN2RlMGFhMjgzMWNkMDdkYmI0YzQ0MDRhZjhmYTU5MjE0N2ZkZjNhNGVlYWZiMzMxMzIxNGM0YzBlODU5MjRmNWE1MjZkOTdmNWJjMWViIn0= +LOG: [2025-08-19 14:12:19] PUT /upload - Auth: auth_provided - Status: 0 +DEBUG: Successfully read DEBUG: Calculated SHA-256: 95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689 +DEBUG: authenticate_request_with_rules called - method: upload, file_hash: 95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689, mime_type: text/plain, file_size: 296 +DEBUG: Authorization header provided, starting basic nostr authentication +DEBUG: authenticate_request ENTRY - method: upload, hash: 95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689 +DEBUG: authenticate_request - calling parse_authorization_header +DEBUG: parse_authorization_header called with header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI4ZTUxM2I4ZmVlODkz... +DEBUG: Extracted base64 event (length=DEBUG: Base64 decode result - decoded_len=DEBUG: Successfully decoded JSON (length=DEBUG: authenticate_request - parse_authorization_header succeeded +D +2025/08/19 14:12:19 [debug] 447377#447377: *2 write new buf t:1 f:0 0000556F9E1CB190, pos 0000556F9E1CB190, size: 3346 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http write filter: l:0 f:0 s:3346 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http write filter limit 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 writev: 3346 of 3346 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http write filter 0000000000000000 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http cacheable: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http upstream process upstream +2025/08/19 14:12:19 [debug] 447377#447377: *2 pipe read upstream: 1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 pipe preread: 261 +2025/08/19 14:12:19 [debug] 447377#447377: *2 readv: eof:1, avail:0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 readv: 1, last:592 +2025/08/19 14:12:19 [debug] 447377#447377: *2 pipe recv chain: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 pipe buf free s:0 t:1 f:0 0000556F9E1C9150, pos 0000556F9E1C9DFB, size: 261 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 pipe length: -1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 input buf #0 0000556F9E1C9DFB +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 01 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 06 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 00 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 01 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 00 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 00 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 00 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 00 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record length: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi closed stdout +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 01 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 03 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 00 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 01 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 00 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 08 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 00 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record byte: 00 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi record length: 8 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http fastcgi sent end request +2025/08/19 14:12:19 [debug] 447377#447377: *2 input buf 0000556F9E1C9DFB 231 +2025/08/19 14:12:19 [debug] 447377#447377: *2 pipe write downstream: 1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 pipe write downstream flush in +2025/08/19 14:12:19 [debug] 447377#447377: *2 http output filter "/upload?" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http copy filter: "/upload?" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http postpone filter "/upload?" 0000556F9E1D4BE0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http chunk: 231 +2025/08/19 14:12:19 [debug] 447377#447377: *2 write new buf t:1 f:0 0000556F9E1CAFB0, pos 0000556F9E1CAFB0, size: 4 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 write new buf t:1 f:0 0000556F9E1C9150, pos 0000556F9E1C9DFB, size: 231 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 write new buf t:0 f:0 0000000000000000, pos 0000556F961142E8, size: 2 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http write filter: l:0 f:0 s:237 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http copy filter: 0 "/upload?" +2025/08/19 14:12:19 [debug] 447377#447377: *2 pipe write downstream done +2025/08/19 14:12:19 [debug] 447377#447377: *2 event timer: 10, old: 193933046, new: 193933048 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http upstream exit: 0000000000000000 +2025/08/19 14:12:19 [debug] 447377#447377: *2 finalize http upstream request: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 finalize http fastcgi request +2025/08/19 14:12:19 [debug] 447377#447377: *2 free rr peer 1 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 close http upstream connection: 10 +2025/08/19 14:12:19 [debug] 447377#447377: *2 free: 0000556F9E1A7F20, unused: 48 +2025/08/19 14:12:19 [debug] 447377#447377: *2 event timer del: 10: 193933046 +2025/08/19 14:12:19 [debug] 447377#447377: *2 reusable connection: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http upstream temp fd: -1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http output filter "/upload?" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http copy filter: "/upload?" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http postpone filter "/upload?" 00007FFE17FC25D0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http chunk: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 write old buf t:1 f:0 0000556F9E1CAFB0, pos 0000556F9E1CAFB0, size: 4 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 write old buf t:1 f:0 0000556F9E1C9150, pos 0000556F9E1C9DFB, size: 231 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 write old buf t:0 f:0 0000000000000000, pos 0000556F961142E8, size: 2 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 write new buf t:0 f:0 0000000000000000, pos 0000556F961142E5, size: 5 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http write filter: l:1 f:0 s:242 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http write filter limit 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 writev: 242 of 242 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http write filter 0000000000000000 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http copy filter: 0 "/upload?" +2025/08/19 14:12:19 [debug] 447377#447377: *2 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 set http keepalive handler +2025/08/19 14:12:19 [debug] 447377#447377: *2 http close request +2025/08/19 14:12:19 [debug] 447377#447377: *2 http log handler +2025/08/19 14:12:19 [debug] 447377#447377: *2 free: 0000556F9E1C9150 +2025/08/19 14:12:19 [debug] 447377#447377: *2 free: 0000556F9E1DDA20, unused: 3 +2025/08/19 14:12:19 [debug] 447377#447377: *2 free: 0000556F9E1D3D90, unused: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 free: 0000556F9E1C8140, unused: 7 +2025/08/19 14:12:19 [debug] 447377#447377: *2 free: 0000556F9E1CA160, unused: 42 +2025/08/19 14:12:19 [debug] 447377#447377: *2 free: 0000556F9E1CB170, unused: 718 +2025/08/19 14:12:19 [debug] 447377#447377: *2 free: 0000556F9E1C10A0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 hc free: 0000000000000000 +2025/08/19 14:12:19 [debug] 447377#447377: *2 hc busy: 0000000000000000 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 tcp_nodelay +2025/08/19 14:12:19 [debug] 447377#447377: *2 reusable connection: 1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 event timer add: 6: 65000:193938048 +2025/08/19 14:12:19 [debug] 447377#447377: *2 post event 0000556F9E20F760 +2025/08/19 14:12:19 [debug] 447377#447377: timer delta: 0 +2025/08/19 14:12:19 [debug] 447377#447377: posted event 0000556F9E20F760 +2025/08/19 14:12:19 [debug] 447377#447377: *2 delete posted event 0000556F9E20F760 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http keepalive handler +2025/08/19 14:12:19 [debug] 447377#447377: *2 malloc: 0000556F9E1C10A0:1024 +2025/08/19 14:12:19 [debug] 447377#447377: *2 recv: eof:0, avail:0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 free: 0000556F9E1C10A0 +2025/08/19 14:12:19 [debug] 447377#447377: worker cycle +2025/08/19 14:12:19 [debug] 447377#447377: epoll timer: 65000 +2025/08/19 14:12:19 [debug] 447377#447377: epoll: fd:6 ev:2005 d:00007F23289A41E1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 http keepalive handler +2025/08/19 14:12:19 [debug] 447377#447377: *2 malloc: 0000556F9E1C10A0:1024 +2025/08/19 14:12:19 [debug] 447377#447377: *2 recv: eof:1, avail:-1 +2025/08/19 14:12:19 [debug] 447377#447377: *2 recv: fd:6 0 of 1024 +2025/08/19 14:12:19 [info] 447377#447377: *2 client 127.0.0.1 closed keepalive connection +2025/08/19 14:12:19 [debug] 447377#447377: *2 close http connection: 6 +2025/08/19 14:12:19 [debug] 447377#447377: *2 event timer del: 6: 193938048 +2025/08/19 14:12:19 [debug] 447377#447377: *2 reusable connection: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 free: 0000556F9E1C10A0 +2025/08/19 14:12:19 [debug] 447377#447377: *2 free: 0000556F9E1BE840, unused: 120 +2025/08/19 14:12:19 [debug] 447377#447377: timer delta: 2 +2025/08/19 14:12:19 [debug] 447377#447377: worker cycle +2025/08/19 14:12:19 [debug] 447377#447377: epoll timer: -1 +2025/08/19 14:12:19 [debug] 447377#447377: epoll: fd:5 ev:0001 d:00007F23289A4010 +2025/08/19 14:12:19 [debug] 447377#447377: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:12:19 [debug] 447377#447377: posix_memalign: 0000556F9E1BE840:512 @16 +2025/08/19 14:12:19 [debug] 447377#447377: *4 accept: 127.0.0.1:55826 fd:6 +2025/08/19 14:12:19 [debug] 447377#447377: *4 event timer add: 6: 60000:193933061 +2025/08/19 14:12:19 [debug] 447377#447377: *4 reusable connection: 1 +2025/08/19 14:12:19 [debug] 447377#447377: *4 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:12:19 [debug] 447377#447377: timer delta: 11 +2025/08/19 14:12:19 [debug] 447377#447377: worker cycle +2025/08/19 14:12:19 [debug] 447377#447377: epoll timer: 60000 +2025/08/19 14:12:19 [debug] 447377#447377: epoll: fd:6 ev:0001 d:00007F23289A41E0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 http wait request handler +2025/08/19 14:12:19 [debug] 447377#447377: *4 malloc: 0000556F9E1C10A0:1024 +2025/08/19 14:12:19 [debug] 447377#447377: *4 recv: eof:0, avail:-1 +2025/08/19 14:12:19 [debug] 447377#447377: *4 recv: fd:6 142 of 1024 +2025/08/19 14:12:19 [debug] 447377#447377: *4 reusable connection: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 posix_memalign: 0000556F9E1DDA20:4096 @16 +2025/08/19 14:12:19 [debug] 447377#447377: *4 http process request line +2025/08/19 14:12:19 [debug] 447377#447377: *4 http request line: "GET /95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689 HTTP/1.1" +2025/08/19 14:12:19 [debug] 447377#447377: *4 http uri: "/95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689" +2025/08/19 14:12:19 [debug] 447377#447377: *4 http args: "" +2025/08/19 14:12:19 [debug] 447377#447377: *4 http exten: "" +2025/08/19 14:12:19 [debug] 447377#447377: *4 posix_memalign: 0000556F9E1D3D90:4096 @16 +2025/08/19 14:12:19 [debug] 447377#447377: *4 http process request header line +2025/08/19 14:12:19 [debug] 447377#447377: *4 http header: "Host: localhost:9001" +2025/08/19 14:12:19 [debug] 447377#447377: *4 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:12:19 [debug] 447377#447377: *4 http header: "Accept: */*" +2025/08/19 14:12:19 [debug] 447377#447377: *4 http header done +2025/08/19 14:12:19 [debug] 447377#447377: *4 event timer del: 6: 193933061 +2025/08/19 14:12:19 [debug] 447377#447377: *4 generic phase: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 rewrite phase: 1 +2025/08/19 14:12:19 [debug] 447377#447377: *4 test location: "/health" +2025/08/19 14:12:19 [debug] 447377#447377: *4 test location: "/debug/list" +2025/08/19 14:12:19 [debug] 447377#447377: *4 test location: "/" +2025/08/19 14:12:19 [debug] 447377#447377: *4 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:12:19 [debug] 447377#447377: *4 using configuration "^/([a-f0-9]{64}).*$" +2025/08/19 14:12:19 [debug] 447377#447377: *4 http cl:-1 max:104857600 +2025/08/19 14:12:19 [debug] 447377#447377: *4 rewrite phase: 3 +2025/08/19 14:12:19 [debug] 447377#447377: *4 http script var +2025/08/19 14:12:19 [debug] 447377#447377: *4 http script var: "GET" +2025/08/19 14:12:19 [debug] 447377#447377: *4 http script value: "DELETE" +2025/08/19 14:12:19 [debug] 447377#447377: *4 http script not equal +2025/08/19 14:12:19 [debug] 447377#447377: *4 http script if +2025/08/19 14:12:19 [debug] 447377#447377: *4 http finalize request: 404, "/95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689?" a:1, c:1 +2025/08/19 14:12:19 [debug] 447377#447377: *4 http special response: 404, "/95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689?" +2025/08/19 14:12:19 [debug] 447377#447377: *4 http set discard body +2025/08/19 14:12:19 [debug] 447377#447377: *4 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:12:19 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 14:12:19 [debug] 447377#447377: *4 write new buf t:1 f:0 0000556F9E1D4170, pos 0000556F9E1D4170, size: 164 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 http write filter: l:0 f:0 s:164 +2025/08/19 14:12:19 [debug] 447377#447377: *4 http output filter "/95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689?" +2025/08/19 14:12:19 [debug] 447377#447377: *4 http copy filter: "/95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689?" +2025/08/19 14:12:19 [debug] 447377#447377: *4 http postpone filter "/95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689?" 0000556F9E1D4300 +2025/08/19 14:12:19 [debug] 447377#447377: *4 write old buf t:1 f:0 0000556F9E1D4170, pos 0000556F9E1D4170, size: 164 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 write new buf t:0 f:0 0000000000000000, pos 0000556F96153580, size: 100 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 write new buf t:0 f:0 0000000000000000, pos 0000556F96153C80, size: 62 file: 0, size: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 http write filter: l:1 f:0 s:326 +2025/08/19 14:12:19 [debug] 447377#447377: *4 http write filter limit 0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 writev: 326 of 326 +2025/08/19 14:12:19 [debug] 447377#447377: *4 http write filter 0000000000000000 +2025/08/19 14:12:19 [debug] 447377#447377: *4 http copy filter: 0 "/95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689?" +2025/08/19 14:12:19 [debug] 447377#447377: *4 http finalize request: 0, "/95830dab9844cb68fae20017af01a4b9fcfebaeec9194249a185114eac75c689?" a:1, c:1 +2025/08/19 14:12:19 [debug] 447377#447377: *4 set http keepalive handler +2025/08/19 14:12:19 [debug] 447377#447377: *4 http close request +2025/08/19 14:12:19 [debug] 447377#447377: *4 http log handler +2025/08/19 14:12:19 [debug] 447377#447377: *4 free: 0000556F9E1DDA20, unused: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 free: 0000556F9E1D3D90, unused: 2456 +2025/08/19 14:12:19 [debug] 447377#447377: *4 free: 0000556F9E1C10A0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 hc free: 0000000000000000 +2025/08/19 14:12:19 [debug] 447377#447377: *4 hc busy: 0000000000000000 0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 tcp_nodelay +2025/08/19 14:12:19 [debug] 447377#447377: *4 reusable connection: 1 +2025/08/19 14:12:19 [debug] 447377#447377: *4 event timer add: 6: 65000:193938061 +2025/08/19 14:12:19 [debug] 447377#447377: timer delta: 0 +2025/08/19 14:12:19 [debug] 447377#447377: worker cycle +2025/08/19 14:12:19 [debug] 447377#447377: epoll timer: 65000 +2025/08/19 14:12:19 [debug] 447377#447377: epoll: fd:6 ev:2001 d:00007F23289A41E0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 http keepalive handler +2025/08/19 14:12:19 [debug] 447377#447377: *4 malloc: 0000556F9E1C10A0:1024 +2025/08/19 14:12:19 [debug] 447377#447377: *4 recv: eof:1, avail:-1 +2025/08/19 14:12:19 [debug] 447377#447377: *4 recv: fd:6 0 of 1024 +2025/08/19 14:12:19 [info] 447377#447377: *4 client 127.0.0.1 closed keepalive connection +2025/08/19 14:12:19 [debug] 447377#447377: *4 close http connection: 6 +2025/08/19 14:12:19 [debug] 447377#447377: *4 event timer del: 6: 193938061 +2025/08/19 14:12:19 [debug] 447377#447377: *4 reusable connection: 0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 free: 0000556F9E1C10A0 +2025/08/19 14:12:19 [debug] 447377#447377: *4 free: 0000556F9E1BE840, unused: 136 +2025/08/19 14:12:19 [debug] 447377#447377: timer delta: 1 +2025/08/19 14:12:19 [debug] 447377#447377: worker cycle +2025/08/19 14:12:19 [debug] 447377#447377: epoll timer: -1 +2025/08/19 14:14:46 [debug] 447377#447377: epoll: fd:7 ev:2011 d:00007F23289A40F8 +2025/08/19 14:14:46 [debug] 447377#447377: epoll_wait() error on fd:7 ev:2011 +2025/08/19 14:14:46 [debug] 447377#447377: channel handler +2025/08/19 14:14:46 [debug] 447377#447377: recvmsg() returned zero +2025/08/19 14:14:46 [debug] 447377#447377: channel: -1 +2025/08/19 14:14:46 [debug] 447377#447377: epoll del connection: fd:7 +2025/08/19 14:14:46 [debug] 447377#447377: reusable connection: 0 +2025/08/19 14:14:46 [debug] 447377#447377: timer delta: 146330 +2025/08/19 14:14:46 [debug] 447377#447377: worker cycle +2025/08/19 14:14:46 [debug] 447377#447377: epoll timer: -1 +2025/08/19 14:15:18 [debug] 448982#448982: bind() 0.0.0.0:9001 #5 +2025/08/19 14:15:18 [notice] 448982#448982: using the "epoll" event method +2025/08/19 14:15:18 [debug] 448982#448982: counter: 00007AC9A4DC3080, 1 +2025/08/19 14:15:18 [notice] 448982#448982: nginx/1.18.0 (Ubuntu) +2025/08/19 14:15:18 [notice] 448982#448982: OS: Linux 6.12.10-76061203-generic +2025/08/19 14:15:18 [notice] 448982#448982: getrlimit(RLIMIT_NOFILE): 1048576:1048576 +2025/08/19 14:15:18 [debug] 448983#448982: write: 6, 00007FFD0C350B60, 7, 0 +2025/08/19 14:15:18 [debug] 448983#448983: setproctitle: "nginx: master process nginx -p . -c config/local-nginx.conf" +2025/08/19 14:15:18 [notice] 448983#448983: start worker processes +2025/08/19 14:15:18 [debug] 448983#448983: channel 6:7 +2025/08/19 14:15:18 [notice] 448983#448983: start worker process 448984 +2025/08/19 14:15:18 [debug] 448983#448983: sigsuspend +2025/08/19 14:15:18 [debug] 448984#448984: add cleanup: 0000562F01D8FA70 +2025/08/19 14:15:18 [debug] 448984#448984: malloc: 0000562F01D42BD0:8 +2025/08/19 14:15:18 [debug] 448984#448984: notify eventfd: 9 +2025/08/19 14:15:18 [debug] 448984#448984: testing the EPOLLRDHUP flag: success +2025/08/19 14:15:18 [debug] 448984#448984: malloc: 0000562F01D55580:6144 +2025/08/19 14:15:18 [debug] 448984#448984: malloc: 00007AC9A4BBB010:237568 +2025/08/19 14:15:18 [debug] 448984#448984: malloc: 0000562F01D926A0:98304 +2025/08/19 14:15:18 [debug] 448984#448984: malloc: 0000562F01DAA6B0:98304 +2025/08/19 14:15:18 [debug] 448984#448984: epoll add event: fd:5 op:1 ev:00002001 +2025/08/19 14:15:18 [debug] 448984#448984: epoll add event: fd:7 op:1 ev:00002001 +2025/08/19 14:15:18 [debug] 448984#448984: setproctitle: "nginx: worker process" +2025/08/19 14:15:18 [debug] 448984#448984: worker cycle +2025/08/19 14:15:18 [debug] 448984#448984: epoll timer: -1 +2025/08/19 14:21:42 [notice] 448983#448983: signal 15 (SIGTERM) received from 450059, exiting +2025/08/19 14:21:42 [debug] 448983#448983: wake up, sigio 0 +2025/08/19 14:21:42 [debug] 448983#448983: child: 0 448984 e:0 t:0 d:0 r:1 j:0 +2025/08/19 14:21:42 [debug] 448983#448983: termination cycle: 50 +2025/08/19 14:21:42 [debug] 448983#448983: sigsuspend +2025/08/19 14:21:42 [debug] 448984#448984: epoll: fd:7 ev:0001 d:00007AC9A4BBB0F8 +2025/08/19 14:21:42 [debug] 448984#448984: channel handler +2025/08/19 14:21:42 [debug] 448984#448984: channel: 32 +2025/08/19 14:21:42 [debug] 448984#448984: channel command: 4 +2025/08/19 14:21:42 [debug] 448984#448984: channel: -2 +2025/08/19 14:21:42 [debug] 448984#448984: timer delta: 384860 +2025/08/19 14:21:42 [notice] 448984#448984: exiting +2025/08/19 14:21:42 [debug] 448984#448984: flush files +2025/08/19 14:21:42 [debug] 448984#448984: run cleanup: 0000562F01D8FA70 +2025/08/19 14:21:42 [debug] 448984#448984: run cleanup: 0000562F01D82A08 +2025/08/19 14:21:42 [debug] 448984#448984: cleanup resolver +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D90DD0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D83BD0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D62B40 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D61A30 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D5BA00 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D5A940 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D59880 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D587C0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D50160 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D47130, unused: 0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D51570, unused: 0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D5CA10, unused: 0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D63B50, unused: 0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D67B60, unused: 0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D6BB70, unused: 0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D6FB80, unused: 0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D73B90, unused: 0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D77BA0, unused: 0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D7BBB0, unused: 0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D7FBC0, unused: 0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D84DA0, unused: 0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D88DB0, unused: 0 +2025/08/19 14:21:42 [debug] 448984#448984: free: 0000562F01D8CDC0, unused: 4920 +2025/08/19 14:21:42 [notice] 448984#448984: exit +2025/08/19 14:21:42 [notice] 448983#448983: signal 17 (SIGCHLD) received from 448984 +2025/08/19 14:21:42 [notice] 448983#448983: worker process 448984 exited with code 0 +2025/08/19 14:21:42 [debug] 448983#448983: shmtx forced unlock +2025/08/19 14:21:42 [debug] 448983#448983: wake up, sigio 3 +2025/08/19 14:21:42 [debug] 448983#448983: reap children +2025/08/19 14:21:42 [debug] 448983#448983: child: 0 448984 e:1 t:1 d:0 r:1 j:0 +2025/08/19 14:21:42 [notice] 448983#448983: exit +2025/08/19 14:21:42 [debug] 448983#448983: close listening 0.0.0.0:9001 #5 +2025/08/19 14:21:42 [debug] 448983#448983: run cleanup: 0000562F01D82A08 +2025/08/19 14:21:42 [debug] 448983#448983: cleanup resolver +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D90DD0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D83BD0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D62B40 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D61A30 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D5BA00 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D5A940 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D59880 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D587C0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D50160 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D47130, unused: 0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D51570, unused: 0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D5CA10, unused: 0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D63B50, unused: 0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D67B60, unused: 0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D6BB70, unused: 0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D6FB80, unused: 0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D73B90, unused: 0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D77BA0, unused: 0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D7BBB0, unused: 0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D7FBC0, unused: 0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D84DA0, unused: 0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D88DB0, unused: 0 +2025/08/19 14:21:42 [debug] 448983#448983: free: 0000562F01D8CDC0, unused: 4951 +2025/08/19 14:21:42 [debug] 450060#450060: bind() 0.0.0.0:9001 #5 +2025/08/19 14:21:42 [notice] 450060#450060: using the "epoll" event method +2025/08/19 14:21:42 [debug] 450060#450060: counter: 0000772305E43080, 1 +2025/08/19 14:21:42 [notice] 450060#450060: nginx/1.18.0 (Ubuntu) +2025/08/19 14:21:42 [notice] 450060#450060: OS: Linux 6.12.10-76061203-generic +2025/08/19 14:21:42 [notice] 450060#450060: getrlimit(RLIMIT_NOFILE): 1048576:1048576 +2025/08/19 14:21:42 [debug] 450061#450060: write: 6, 00007FFED8297810, 7, 0 +2025/08/19 14:21:42 [debug] 450061#450061: setproctitle: "nginx: master process nginx -p . -c config/local-nginx.conf" +2025/08/19 14:21:42 [notice] 450061#450061: start worker processes +2025/08/19 14:21:42 [debug] 450061#450061: channel 6:7 +2025/08/19 14:21:42 [notice] 450061#450061: start worker process 450062 +2025/08/19 14:21:42 [debug] 450061#450061: sigsuspend +2025/08/19 14:21:42 [debug] 450062#450062: add cleanup: 00005CC70FEFBA70 +2025/08/19 14:21:42 [debug] 450062#450062: malloc: 00005CC70FEAEBD0:8 +2025/08/19 14:21:42 [debug] 450062#450062: notify eventfd: 9 +2025/08/19 14:21:42 [debug] 450062#450062: testing the EPOLLRDHUP flag: success +2025/08/19 14:21:42 [debug] 450062#450062: malloc: 00005CC70FEC1580:6144 +2025/08/19 14:21:42 [debug] 450062#450062: malloc: 00007723057C5010:237568 +2025/08/19 14:21:42 [debug] 450062#450062: malloc: 00005CC70FEFE6A0:98304 +2025/08/19 14:21:42 [debug] 450062#450062: malloc: 00005CC70FF166B0:98304 +2025/08/19 14:21:42 [debug] 450062#450062: epoll add event: fd:5 op:1 ev:00002001 +2025/08/19 14:21:42 [debug] 450062#450062: epoll add event: fd:7 op:1 ev:00002001 +2025/08/19 14:21:42 [debug] 450062#450062: setproctitle: "nginx: worker process" +2025/08/19 14:21:42 [debug] 450062#450062: worker cycle +2025/08/19 14:21:42 [debug] 450062#450062: epoll timer: -1 +2025/08/19 14:24:00 [debug] 450062#450062: epoll: fd:5 ev:0001 d:00007723057C5010 +2025/08/19 14:24:00 [debug] 450062#450062: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:24:00 [debug] 450062#450062: posix_memalign: 00005CC70FEAD840:512 @16 +2025/08/19 14:24:00 [debug] 450062#450062: *1 accept: 127.0.0.1:52770 fd:6 +2025/08/19 14:24:00 [debug] 450062#450062: *1 event timer add: 6: 60000:194633164 +2025/08/19 14:24:00 [debug] 450062#450062: *1 reusable connection: 1 +2025/08/19 14:24:00 [debug] 450062#450062: *1 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:24:00 [debug] 450062#450062: timer delta: 137165 +2025/08/19 14:24:00 [debug] 450062#450062: worker cycle +2025/08/19 14:24:00 [debug] 450062#450062: epoll timer: 60000 +2025/08/19 14:24:00 [debug] 450062#450062: epoll: fd:6 ev:0001 d:00007723057C51E0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 http wait request handler +2025/08/19 14:24:00 [debug] 450062#450062: *1 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:24:00 [debug] 450062#450062: *1 recv: eof:0, avail:-1 +2025/08/19 14:24:00 [debug] 450062#450062: *1 recv: fd:6 84 of 1024 +2025/08/19 14:24:00 [debug] 450062#450062: *1 reusable connection: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 posix_memalign: 00005CC70FECCA20:4096 @16 +2025/08/19 14:24:00 [debug] 450062#450062: *1 http process request line +2025/08/19 14:24:00 [debug] 450062#450062: *1 http request line: "GET /health HTTP/1.1" +2025/08/19 14:24:00 [debug] 450062#450062: *1 http uri: "/health" +2025/08/19 14:24:00 [debug] 450062#450062: *1 http args: "" +2025/08/19 14:24:00 [debug] 450062#450062: *1 http exten: "" +2025/08/19 14:24:00 [debug] 450062#450062: *1 posix_memalign: 00005CC70FEC2D90:4096 @16 +2025/08/19 14:24:00 [debug] 450062#450062: *1 http process request header line +2025/08/19 14:24:00 [debug] 450062#450062: *1 http header: "Host: localhost:9001" +2025/08/19 14:24:00 [debug] 450062#450062: *1 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:24:00 [debug] 450062#450062: *1 http header: "Accept: */*" +2025/08/19 14:24:00 [debug] 450062#450062: *1 http header done +2025/08/19 14:24:00 [debug] 450062#450062: *1 event timer del: 6: 194633164 +2025/08/19 14:24:00 [debug] 450062#450062: *1 generic phase: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 rewrite phase: 1 +2025/08/19 14:24:00 [debug] 450062#450062: *1 test location: "/health" +2025/08/19 14:24:00 [debug] 450062#450062: *1 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:24:00 [debug] 450062#450062: *1 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 14:24:00 [debug] 450062#450062: *1 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 14:24:00 [debug] 450062#450062: *1 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 14:24:00 [debug] 450062#450062: *1 using configuration "/health" +2025/08/19 14:24:00 [debug] 450062#450062: *1 http cl:-1 max:104857600 +2025/08/19 14:24:00 [debug] 450062#450062: *1 rewrite phase: 3 +2025/08/19 14:24:00 [debug] 450062#450062: *1 http set discard body +2025/08/19 14:24:00 [debug] 450062#450062: *1 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:24:00 GMT +Content-Type: application/octet-stream +Content-Length: 3 +Connection: keep-alive +Content-Type: text/plain + +2025/08/19 14:24:00 [debug] 450062#450062: *1 write new buf t:1 f:0 00005CC70FEC3170, pos 00005CC70FEC3170, size: 196 file: 0, size: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 http write filter: l:0 f:0 s:196 +2025/08/19 14:24:00 [debug] 450062#450062: *1 http output filter "/health?" +2025/08/19 14:24:00 [debug] 450062#450062: *1 http copy filter: "/health?" +2025/08/19 14:24:00 [debug] 450062#450062: *1 http postpone filter "/health?" 00007FFED82973A0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 write old buf t:1 f:0 00005CC70FEC3170, pos 00005CC70FEC3170, size: 196 file: 0, size: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 write new buf t:0 f:0 0000000000000000, pos 00005CC70FEEAB32, size: 3 file: 0, size: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 http write filter: l:1 f:0 s:199 +2025/08/19 14:24:00 [debug] 450062#450062: *1 http write filter limit 0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 writev: 199 of 199 +2025/08/19 14:24:00 [debug] 450062#450062: *1 http write filter 0000000000000000 +2025/08/19 14:24:00 [debug] 450062#450062: *1 http copy filter: 0 "/health?" +2025/08/19 14:24:00 [debug] 450062#450062: *1 http finalize request: 0, "/health?" a:1, c:1 +2025/08/19 14:24:00 [debug] 450062#450062: *1 set http keepalive handler +2025/08/19 14:24:00 [debug] 450062#450062: *1 http close request +2025/08/19 14:24:00 [debug] 450062#450062: *1 http log handler +2025/08/19 14:24:00 [debug] 450062#450062: *1 free: 00005CC70FECCA20, unused: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 free: 00005CC70FEC2D90, unused: 2736 +2025/08/19 14:24:00 [debug] 450062#450062: *1 free: 00005CC70FEB00A0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 hc free: 0000000000000000 +2025/08/19 14:24:00 [debug] 450062#450062: *1 hc busy: 0000000000000000 0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 tcp_nodelay +2025/08/19 14:24:00 [debug] 450062#450062: *1 reusable connection: 1 +2025/08/19 14:24:00 [debug] 450062#450062: *1 event timer add: 6: 65000:194638164 +2025/08/19 14:24:00 [debug] 450062#450062: timer delta: 0 +2025/08/19 14:24:00 [debug] 450062#450062: worker cycle +2025/08/19 14:24:00 [debug] 450062#450062: epoll timer: 65000 +2025/08/19 14:24:00 [debug] 450062#450062: epoll: fd:6 ev:2001 d:00007723057C51E0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 http keepalive handler +2025/08/19 14:24:00 [debug] 450062#450062: *1 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:24:00 [debug] 450062#450062: *1 recv: eof:1, avail:-1 +2025/08/19 14:24:00 [debug] 450062#450062: *1 recv: fd:6 0 of 1024 +2025/08/19 14:24:00 [info] 450062#450062: *1 client 127.0.0.1 closed keepalive connection +2025/08/19 14:24:00 [debug] 450062#450062: *1 close http connection: 6 +2025/08/19 14:24:00 [debug] 450062#450062: *1 event timer del: 6: 194638164 +2025/08/19 14:24:00 [debug] 450062#450062: *1 reusable connection: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 free: 00005CC70FEB00A0 +2025/08/19 14:24:00 [debug] 450062#450062: *1 free: 00005CC70FEAD840, unused: 136 +2025/08/19 14:24:00 [debug] 450062#450062: timer delta: 1 +2025/08/19 14:24:00 [debug] 450062#450062: worker cycle +2025/08/19 14:24:00 [debug] 450062#450062: epoll timer: -1 +2025/08/19 14:24:00 [debug] 450062#450062: epoll: fd:5 ev:0001 d:00007723057C5010 +2025/08/19 14:24:00 [debug] 450062#450062: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:24:00 [debug] 450062#450062: posix_memalign: 00005CC70FEAD840:512 @16 +2025/08/19 14:24:00 [debug] 450062#450062: *2 accept: 127.0.0.1:52778 fd:6 +2025/08/19 14:24:00 [debug] 450062#450062: *2 event timer add: 6: 60000:194633435 +2025/08/19 14:24:00 [debug] 450062#450062: *2 reusable connection: 1 +2025/08/19 14:24:00 [debug] 450062#450062: *2 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:24:00 [debug] 450062#450062: timer delta: 270 +2025/08/19 14:24:00 [debug] 450062#450062: worker cycle +2025/08/19 14:24:00 [debug] 450062#450062: epoll timer: 60000 +2025/08/19 14:24:00 [debug] 450062#450062: epoll: fd:6 ev:0001 d:00007723057C51E1 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http wait request handler +2025/08/19 14:24:00 [debug] 450062#450062: *2 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:24:00 [debug] 450062#450062: *2 recv: eof:0, avail:-1 +2025/08/19 14:24:00 [debug] 450062#450062: *2 recv: fd:6 1024 of 1024 +2025/08/19 14:24:00 [debug] 450062#450062: *2 recv: avail:112 +2025/08/19 14:24:00 [debug] 450062#450062: *2 reusable connection: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 posix_memalign: 00005CC70FECCA20:4096 @16 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http process request line +2025/08/19 14:24:00 [debug] 450062#450062: *2 http request line: "PUT /upload HTTP/1.1" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http uri: "/upload" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http args: "" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http exten: "" +2025/08/19 14:24:00 [debug] 450062#450062: *2 posix_memalign: 00005CC70FEC2D90:4096 @16 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http process request header line +2025/08/19 14:24:00 [debug] 450062#450062: *2 http header: "Host: localhost:9001" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http header: "Accept: */*" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI4NTE5MDA2OWI4NWQ3MWJlOGEyN2I5MGMwZTY2Mjg5ZTEwYzcwNGMxZTAxMDYzNzA2ZmJjM2UyM2JiM2YzYTc1IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2Mjc4NDAsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCIyZGQ2YTI5ZjIyZmFiNmU5ODQ4ZjQ1Y2ZkNzIzYTU0MjkwOWZiY2MwNjAyMThkNTQ2ZTkyMTBiMzQzNmRjYTM0Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMTQ0MCJdXSwiY29udGVudCI6IiIsInNpZyI6ImQ1MWExM2Q4NDM2YTY5NGEyZjdmN2FmZGRkNDE1NWE0ODc3N2IzNWEzMjlmYTUxMzc2MjNhYzQ2OTk4Zjg1NGQxYTI4YWUzOTYyOGZiYjgwYTgxMmNjMWU1ZjRlMWE4ZDBkODk2YzdmYzU1NDNiZTcyMjIxN2Q0NTkyMjlkMTUyIn0=" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http header: "Content-Type: text/plain" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http header: "Content-Disposition: attachment; filename="test_blob_1755627840.txt"" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http header: "Content-Length: 296" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http header done +2025/08/19 14:24:00 [debug] 450062#450062: *2 event timer del: 6: 194633435 +2025/08/19 14:24:00 [debug] 450062#450062: *2 generic phase: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 rewrite phase: 1 +2025/08/19 14:24:00 [debug] 450062#450062: *2 test location: "/health" +2025/08/19 14:24:00 [debug] 450062#450062: *2 test location: "/upload" +2025/08/19 14:24:00 [debug] 450062#450062: *2 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:24:00 [debug] 450062#450062: *2 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 14:24:00 [debug] 450062#450062: *2 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 14:24:00 [debug] 450062#450062: *2 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 14:24:00 [debug] 450062#450062: *2 using configuration "/upload" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http cl:296 max:104857600 +2025/08/19 14:24:00 [debug] 450062#450062: *2 rewrite phase: 3 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "PUT" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script regex: "^(PUT)$" +2025/08/19 14:24:00 [notice] 450062#450062: *2 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script if +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script if: false +2025/08/19 14:24:00 [debug] 450062#450062: *2 post rewrite phase: 4 +2025/08/19 14:24:00 [debug] 450062#450062: *2 generic phase: 5 +2025/08/19 14:24:00 [debug] 450062#450062: *2 generic phase: 6 +2025/08/19 14:24:00 [debug] 450062#450062: *2 generic phase: 7 +2025/08/19 14:24:00 [debug] 450062#450062: *2 access phase: 8 +2025/08/19 14:24:00 [debug] 450062#450062: *2 access phase: 9 +2025/08/19 14:24:00 [debug] 450062#450062: *2 access phase: 10 +2025/08/19 14:24:00 [debug] 450062#450062: *2 post access phase: 11 +2025/08/19 14:24:00 [debug] 450062#450062: *2 generic phase: 12 +2025/08/19 14:24:00 [debug] 450062#450062: *2 generic phase: 13 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http client request body preread 184 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http request body content length filter +2025/08/19 14:24:00 [debug] 450062#450062: *2 http body new buf t:1 f:0 00005CC70FEB03E8, pos 00005CC70FEB03E8, size: 184 file: 0, size: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http read client request body +2025/08/19 14:24:00 [debug] 450062#450062: *2 recv: eof:0, avail:112 +2025/08/19 14:24:00 [debug] 450062#450062: *2 recv: fd:6 112 of 112 +2025/08/19 14:24:00 [debug] 450062#450062: *2 recv: avail:0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http client request body recv 112 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http body new buf t:1 f:0 00005CC70FEC3820, pos 00005CC70FEC3820, size: 112 file: 0, size: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http client request body rest 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http init upstream, client timer: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 14:24:00 [debug] 450062#450062: *2 posix_memalign: 00005CC70FEB7140:4096 @16 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "QUERY_STRING" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "QUERY_STRING: " +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "REQUEST_METHOD" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "PUT" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "CONTENT_TYPE" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "text/plain" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "CONTENT_LENGTH" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "296" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "SCRIPT_NAME" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "/upload" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "REQUEST_URI" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "/upload" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "DOCUMENT_URI" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "/upload" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "DOCUMENT_ROOT" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "./blobs" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "SERVER_PROTOCOL" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "HTTP/1.1" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "REQUEST_SCHEME" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "http" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "GATEWAY_INTERFACE" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "CGI/1.1" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "SERVER_SOFTWARE" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "nginx/" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "1.18.0" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "REMOTE_ADDR" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "127.0.0.1" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "REMOTE_PORT" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "52778" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "REMOTE_PORT: 52778" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "SERVER_ADDR" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "127.0.0.1" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "SERVER_PORT" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "9001" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "SERVER_NAME" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "localhost" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "REDIRECT_STATUS" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "200" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "SCRIPT_FILENAME" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script var: "./blobs" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http script copy: "/ginxsom.fcgi" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI4NTE5MDA2OWI4NWQ3MWJlOGEyN2I5MGMwZTY2Mjg5ZTEwYzcwNGMxZTAxMDYzNzA2ZmJjM2UyM2JiM2YzYTc1IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2Mjc4NDAsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCIyZGQ2YTI5ZjIyZmFiNmU5ODQ4ZjQ1Y2ZkNzIzYTU0MjkwOWZiY2MwNjAyMThkNTQ2ZTkyMTBiMzQzNmRjYTM0Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMTQ0MCJdXSwiY29udGVudCI6IiIsInNpZyI6ImQ1MWExM2Q4NDM2YTY5NGEyZjdmN2FmZGRkNDE1NWE0ODc3N2IzNWEzMjlmYTUxMzc2MjNhYzQ2OTk4Zjg1NGQxYTI4YWUzOTYyOGZiYjgwYTgxMmNjMWU1ZjRlMWE4ZDBkODk2YzdmYzU1NDNiZTcyMjIxN2Q0NTkyMjlkMTUyIn0=" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755627840.txt"" +2025/08/19 14:24:00 [debug] 450062#450062: *2 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http cleanup add: 00005CC70FEC3B70 +2025/08/19 14:24:00 [debug] 450062#450062: *2 get rr peer, try: 1 +2025/08/19 14:24:00 [debug] 450062#450062: *2 stream socket 10 +2025/08/19 14:24:00 [debug] 450062#450062: *2 epoll add connection: fd:10 ev:80002005 +2025/08/19 14:24:00 [debug] 450062#450062: *2 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #3 +2025/08/19 14:24:00 [crit] 450062#450062: *2 connect() to unix:/tmp/ginxsom-fcgi.sock failed (2: No such file or directory) while connecting to upstream, client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", upstream: "fastcgi://unix:/tmp/ginxsom-fcgi.sock:", host: "localhost:9001" +2025/08/19 14:24:00 [debug] 450062#450062: *2 reusable connection: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http upstream connect: -5 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http next upstream, 2 +2025/08/19 14:24:00 [debug] 450062#450062: *2 free rr peer 1 4 +2025/08/19 14:24:00 [debug] 450062#450062: *2 finalize http upstream request: 502 +2025/08/19 14:24:00 [debug] 450062#450062: *2 finalize http fastcgi request +2025/08/19 14:24:00 [debug] 450062#450062: *2 http finalize request: 502, "/upload?" a:1, c:2 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http special response: 502, "/upload?" +2025/08/19 14:24:00 [debug] 450062#450062: *2 HTTP/1.1 502 Bad Gateway +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:24:00 GMT +Content-Type: text/html +Content-Length: 166 +Connection: keep-alive + +2025/08/19 14:24:00 [debug] 450062#450062: *2 write new buf t:1 f:0 00005CC70FEC3C00, pos 00005CC70FEC3C00, size: 166 file: 0, size: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http write filter: l:0 f:0 s:166 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http output filter "/upload?" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http copy filter: "/upload?" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http postpone filter "/upload?" 00005CC70FEC3D68 +2025/08/19 14:24:00 [debug] 450062#450062: *2 write old buf t:1 f:0 00005CC70FEC3C00, pos 00005CC70FEC3C00, size: 166 file: 0, size: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 write new buf t:0 f:0 0000000000000000, pos 00005CC705DEEA40, size: 104 file: 0, size: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 write new buf t:0 f:0 0000000000000000, pos 00005CC705DEFC80, size: 62 file: 0, size: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http write filter: l:1 f:0 s:332 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http write filter limit 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 writev: 332 of 332 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http write filter 0000000000000000 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http copy filter: 0 "/upload?" +2025/08/19 14:24:00 [debug] 450062#450062: *2 http finalize request: 0, "/upload?" a:1, c:2 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http request count:2 blk:0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http finalize request: -4, "/upload?" a:1, c:1 +2025/08/19 14:24:00 [debug] 450062#450062: *2 set http keepalive handler +2025/08/19 14:24:00 [debug] 450062#450062: *2 http close request +2025/08/19 14:24:00 [debug] 450062#450062: *2 http log handler +2025/08/19 14:24:00 [debug] 450062#450062: *2 free: 00005CC70FECCA20, unused: 3 +2025/08/19 14:24:00 [debug] 450062#450062: *2 free: 00005CC70FEC2D90, unused: 8 +2025/08/19 14:24:00 [debug] 450062#450062: *2 free: 00005CC70FEB7140, unused: 2466 +2025/08/19 14:24:00 [debug] 450062#450062: *2 free: 00005CC70FEB00A0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 hc free: 0000000000000000 +2025/08/19 14:24:00 [debug] 450062#450062: *2 hc busy: 0000000000000000 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 tcp_nodelay +2025/08/19 14:24:00 [debug] 450062#450062: *2 reusable connection: 1 +2025/08/19 14:24:00 [debug] 450062#450062: *2 event timer add: 6: 65000:194638435 +2025/08/19 14:24:00 [debug] 450062#450062: *2 post event 00005CC70FEFE760 +2025/08/19 14:24:00 [debug] 450062#450062: timer delta: 0 +2025/08/19 14:24:00 [debug] 450062#450062: posted event 00005CC70FEFE760 +2025/08/19 14:24:00 [debug] 450062#450062: *2 delete posted event 00005CC70FEFE760 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http keepalive handler +2025/08/19 14:24:00 [debug] 450062#450062: *2 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:24:00 [debug] 450062#450062: *2 recv: eof:0, avail:0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 free: 00005CC70FEB00A0 +2025/08/19 14:24:00 [debug] 450062#450062: worker cycle +2025/08/19 14:24:00 [debug] 450062#450062: epoll timer: 65000 +2025/08/19 14:24:00 [debug] 450062#450062: epoll: fd:6 ev:0004 d:00007723057C51E1 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http empty handler +2025/08/19 14:24:00 [debug] 450062#450062: timer delta: 1 +2025/08/19 14:24:00 [debug] 450062#450062: worker cycle +2025/08/19 14:24:00 [debug] 450062#450062: epoll timer: 64999 +2025/08/19 14:24:00 [debug] 450062#450062: epoll: fd:6 ev:2005 d:00007723057C51E1 +2025/08/19 14:24:00 [debug] 450062#450062: *2 http keepalive handler +2025/08/19 14:24:00 [debug] 450062#450062: *2 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:24:00 [debug] 450062#450062: *2 recv: eof:1, avail:-1 +2025/08/19 14:24:00 [debug] 450062#450062: *2 recv: fd:6 0 of 1024 +2025/08/19 14:24:00 [info] 450062#450062: *2 client 127.0.0.1 closed keepalive connection +2025/08/19 14:24:00 [debug] 450062#450062: *2 close http connection: 6 +2025/08/19 14:24:00 [debug] 450062#450062: *2 event timer del: 6: 194638435 +2025/08/19 14:24:00 [debug] 450062#450062: *2 reusable connection: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 free: 00005CC70FEB00A0 +2025/08/19 14:24:00 [debug] 450062#450062: *2 free: 00005CC70FEAD840, unused: 120 +2025/08/19 14:24:00 [debug] 450062#450062: timer delta: 1 +2025/08/19 14:24:00 [debug] 450062#450062: worker cycle +2025/08/19 14:24:00 [debug] 450062#450062: epoll timer: -1 +2025/08/19 14:24:00 [debug] 450062#450062: epoll: fd:5 ev:0001 d:00007723057C5010 +2025/08/19 14:24:00 [debug] 450062#450062: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:24:00 [debug] 450062#450062: posix_memalign: 00005CC70FEAD840:512 @16 +2025/08/19 14:24:00 [debug] 450062#450062: *4 accept: 127.0.0.1:52780 fd:6 +2025/08/19 14:24:00 [debug] 450062#450062: *4 event timer add: 6: 60000:194633449 +2025/08/19 14:24:00 [debug] 450062#450062: *4 reusable connection: 1 +2025/08/19 14:24:00 [debug] 450062#450062: *4 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:24:00 [debug] 450062#450062: timer delta: 12 +2025/08/19 14:24:00 [debug] 450062#450062: worker cycle +2025/08/19 14:24:00 [debug] 450062#450062: epoll timer: 60000 +2025/08/19 14:24:00 [debug] 450062#450062: epoll: fd:6 ev:0001 d:00007723057C51E0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 http wait request handler +2025/08/19 14:24:00 [debug] 450062#450062: *4 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:24:00 [debug] 450062#450062: *4 recv: eof:0, avail:-1 +2025/08/19 14:24:00 [debug] 450062#450062: *4 recv: fd:6 142 of 1024 +2025/08/19 14:24:00 [debug] 450062#450062: *4 reusable connection: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 posix_memalign: 00005CC70FECCA20:4096 @16 +2025/08/19 14:24:00 [debug] 450062#450062: *4 http process request line +2025/08/19 14:24:00 [debug] 450062#450062: *4 http request line: "GET /2dd6a29f22fab6e9848f45cfd723a542909fbcc060218d546e9210b3436dca34 HTTP/1.1" +2025/08/19 14:24:00 [debug] 450062#450062: *4 http uri: "/2dd6a29f22fab6e9848f45cfd723a542909fbcc060218d546e9210b3436dca34" +2025/08/19 14:24:00 [debug] 450062#450062: *4 http args: "" +2025/08/19 14:24:00 [debug] 450062#450062: *4 http exten: "" +2025/08/19 14:24:00 [debug] 450062#450062: *4 posix_memalign: 00005CC70FEC2D90:4096 @16 +2025/08/19 14:24:00 [debug] 450062#450062: *4 http process request header line +2025/08/19 14:24:00 [debug] 450062#450062: *4 http header: "Host: localhost:9001" +2025/08/19 14:24:00 [debug] 450062#450062: *4 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:24:00 [debug] 450062#450062: *4 http header: "Accept: */*" +2025/08/19 14:24:00 [debug] 450062#450062: *4 http header done +2025/08/19 14:24:00 [debug] 450062#450062: *4 event timer del: 6: 194633449 +2025/08/19 14:24:00 [debug] 450062#450062: *4 generic phase: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 rewrite phase: 1 +2025/08/19 14:24:00 [debug] 450062#450062: *4 test location: "/health" +2025/08/19 14:24:00 [debug] 450062#450062: *4 test location: "/debug/list" +2025/08/19 14:24:00 [debug] 450062#450062: *4 test location: "/" +2025/08/19 14:24:00 [debug] 450062#450062: *4 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:24:00 [debug] 450062#450062: *4 using configuration "^/([a-f0-9]{64}).*$" +2025/08/19 14:24:00 [debug] 450062#450062: *4 http cl:-1 max:104857600 +2025/08/19 14:24:00 [debug] 450062#450062: *4 rewrite phase: 3 +2025/08/19 14:24:00 [debug] 450062#450062: *4 http script var +2025/08/19 14:24:00 [debug] 450062#450062: *4 http script var: "GET" +2025/08/19 14:24:00 [debug] 450062#450062: *4 http script value: "DELETE" +2025/08/19 14:24:00 [debug] 450062#450062: *4 http script not equal +2025/08/19 14:24:00 [debug] 450062#450062: *4 http script if +2025/08/19 14:24:00 [debug] 450062#450062: *4 http finalize request: 404, "/2dd6a29f22fab6e9848f45cfd723a542909fbcc060218d546e9210b3436dca34?" a:1, c:1 +2025/08/19 14:24:00 [debug] 450062#450062: *4 http special response: 404, "/2dd6a29f22fab6e9848f45cfd723a542909fbcc060218d546e9210b3436dca34?" +2025/08/19 14:24:00 [debug] 450062#450062: *4 http set discard body +2025/08/19 14:24:00 [debug] 450062#450062: *4 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:24:00 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 14:24:00 [debug] 450062#450062: *4 write new buf t:1 f:0 00005CC70FEC3170, pos 00005CC70FEC3170, size: 164 file: 0, size: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 http write filter: l:0 f:0 s:164 +2025/08/19 14:24:00 [debug] 450062#450062: *4 http output filter "/2dd6a29f22fab6e9848f45cfd723a542909fbcc060218d546e9210b3436dca34?" +2025/08/19 14:24:00 [debug] 450062#450062: *4 http copy filter: "/2dd6a29f22fab6e9848f45cfd723a542909fbcc060218d546e9210b3436dca34?" +2025/08/19 14:24:00 [debug] 450062#450062: *4 http postpone filter "/2dd6a29f22fab6e9848f45cfd723a542909fbcc060218d546e9210b3436dca34?" 00005CC70FEC3300 +2025/08/19 14:24:00 [debug] 450062#450062: *4 write old buf t:1 f:0 00005CC70FEC3170, pos 00005CC70FEC3170, size: 164 file: 0, size: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 write new buf t:0 f:0 0000000000000000, pos 00005CC705DEF580, size: 100 file: 0, size: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 write new buf t:0 f:0 0000000000000000, pos 00005CC705DEFC80, size: 62 file: 0, size: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 http write filter: l:1 f:0 s:326 +2025/08/19 14:24:00 [debug] 450062#450062: *4 http write filter limit 0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 writev: 326 of 326 +2025/08/19 14:24:00 [debug] 450062#450062: *4 http write filter 0000000000000000 +2025/08/19 14:24:00 [debug] 450062#450062: *4 http copy filter: 0 "/2dd6a29f22fab6e9848f45cfd723a542909fbcc060218d546e9210b3436dca34?" +2025/08/19 14:24:00 [debug] 450062#450062: *4 http finalize request: 0, "/2dd6a29f22fab6e9848f45cfd723a542909fbcc060218d546e9210b3436dca34?" a:1, c:1 +2025/08/19 14:24:00 [debug] 450062#450062: *4 set http keepalive handler +2025/08/19 14:24:00 [debug] 450062#450062: *4 http close request +2025/08/19 14:24:00 [debug] 450062#450062: *4 http log handler +2025/08/19 14:24:00 [debug] 450062#450062: *4 free: 00005CC70FECCA20, unused: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 free: 00005CC70FEC2D90, unused: 2456 +2025/08/19 14:24:00 [debug] 450062#450062: *4 free: 00005CC70FEB00A0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 hc free: 0000000000000000 +2025/08/19 14:24:00 [debug] 450062#450062: *4 hc busy: 0000000000000000 0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 tcp_nodelay +2025/08/19 14:24:00 [debug] 450062#450062: *4 reusable connection: 1 +2025/08/19 14:24:00 [debug] 450062#450062: *4 event timer add: 6: 65000:194638449 +2025/08/19 14:24:00 [debug] 450062#450062: timer delta: 0 +2025/08/19 14:24:00 [debug] 450062#450062: worker cycle +2025/08/19 14:24:00 [debug] 450062#450062: epoll timer: 65000 +2025/08/19 14:24:00 [debug] 450062#450062: epoll: fd:6 ev:2001 d:00007723057C51E0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 http keepalive handler +2025/08/19 14:24:00 [debug] 450062#450062: *4 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:24:00 [debug] 450062#450062: *4 recv: eof:1, avail:-1 +2025/08/19 14:24:00 [debug] 450062#450062: *4 recv: fd:6 0 of 1024 +2025/08/19 14:24:00 [info] 450062#450062: *4 client 127.0.0.1 closed keepalive connection +2025/08/19 14:24:00 [debug] 450062#450062: *4 close http connection: 6 +2025/08/19 14:24:00 [debug] 450062#450062: *4 event timer del: 6: 194638449 +2025/08/19 14:24:00 [debug] 450062#450062: *4 reusable connection: 0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 free: 00005CC70FEB00A0 +2025/08/19 14:24:00 [debug] 450062#450062: *4 free: 00005CC70FEAD840, unused: 136 +2025/08/19 14:24:00 [debug] 450062#450062: timer delta: 1 +2025/08/19 14:24:00 [debug] 450062#450062: worker cycle +2025/08/19 14:24:00 [debug] 450062#450062: epoll timer: -1 +2025/08/19 14:25:33 [debug] 450062#450062: epoll: fd:5 ev:0001 d:00007723057C5010 +2025/08/19 14:25:33 [debug] 450062#450062: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:25:33 [debug] 450062#450062: posix_memalign: 00005CC70FEAD840:512 @16 +2025/08/19 14:25:33 [debug] 450062#450062: *5 accept: 127.0.0.1:34086 fd:6 +2025/08/19 14:25:33 [debug] 450062#450062: *5 event timer add: 6: 60000:194726645 +2025/08/19 14:25:33 [debug] 450062#450062: *5 reusable connection: 1 +2025/08/19 14:25:33 [debug] 450062#450062: *5 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:25:33 [debug] 450062#450062: timer delta: 93195 +2025/08/19 14:25:33 [debug] 450062#450062: worker cycle +2025/08/19 14:25:33 [debug] 450062#450062: epoll timer: 60000 +2025/08/19 14:25:33 [debug] 450062#450062: epoll: fd:6 ev:0001 d:00007723057C51E1 +2025/08/19 14:25:33 [debug] 450062#450062: *5 http wait request handler +2025/08/19 14:25:33 [debug] 450062#450062: *5 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:25:33 [debug] 450062#450062: *5 recv: eof:0, avail:-1 +2025/08/19 14:25:33 [debug] 450062#450062: *5 recv: fd:6 84 of 1024 +2025/08/19 14:25:33 [debug] 450062#450062: *5 reusable connection: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *5 posix_memalign: 00005CC70FECCA20:4096 @16 +2025/08/19 14:25:33 [debug] 450062#450062: *5 http process request line +2025/08/19 14:25:33 [debug] 450062#450062: *5 http request line: "GET /health HTTP/1.1" +2025/08/19 14:25:33 [debug] 450062#450062: *5 http uri: "/health" +2025/08/19 14:25:33 [debug] 450062#450062: *5 http args: "" +2025/08/19 14:25:33 [debug] 450062#450062: *5 http exten: "" +2025/08/19 14:25:33 [debug] 450062#450062: *5 posix_memalign: 00005CC70FEC2D90:4096 @16 +2025/08/19 14:25:33 [debug] 450062#450062: *5 http process request header line +2025/08/19 14:25:33 [debug] 450062#450062: *5 http header: "Host: localhost:9001" +2025/08/19 14:25:33 [debug] 450062#450062: *5 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:25:33 [debug] 450062#450062: *5 http header: "Accept: */*" +2025/08/19 14:25:33 [debug] 450062#450062: *5 http header done +2025/08/19 14:25:33 [debug] 450062#450062: *5 event timer del: 6: 194726645 +2025/08/19 14:25:33 [debug] 450062#450062: *5 generic phase: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *5 rewrite phase: 1 +2025/08/19 14:25:33 [debug] 450062#450062: *5 test location: "/health" +2025/08/19 14:25:33 [debug] 450062#450062: *5 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:25:33 [debug] 450062#450062: *5 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 14:25:33 [debug] 450062#450062: *5 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 14:25:33 [debug] 450062#450062: *5 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 14:25:33 [debug] 450062#450062: *5 using configuration "/health" +2025/08/19 14:25:33 [debug] 450062#450062: *5 http cl:-1 max:104857600 +2025/08/19 14:25:33 [debug] 450062#450062: *5 rewrite phase: 3 +2025/08/19 14:25:33 [debug] 450062#450062: *5 http set discard body +2025/08/19 14:25:33 [debug] 450062#450062: *5 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:25:33 GMT +Content-Type: application/octet-stream +Content-Length: 3 +Connection: keep-alive +Content-Type: text/plain + +2025/08/19 14:25:33 [debug] 450062#450062: *5 write new buf t:1 f:0 00005CC70FEC3170, pos 00005CC70FEC3170, size: 196 file: 0, size: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *5 http write filter: l:0 f:0 s:196 +2025/08/19 14:25:33 [debug] 450062#450062: *5 http output filter "/health?" +2025/08/19 14:25:33 [debug] 450062#450062: *5 http copy filter: "/health?" +2025/08/19 14:25:33 [debug] 450062#450062: *5 http postpone filter "/health?" 00007FFED82973A0 +2025/08/19 14:25:33 [debug] 450062#450062: *5 write old buf t:1 f:0 00005CC70FEC3170, pos 00005CC70FEC3170, size: 196 file: 0, size: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *5 write new buf t:0 f:0 0000000000000000, pos 00005CC70FEEAB32, size: 3 file: 0, size: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *5 http write filter: l:1 f:0 s:199 +2025/08/19 14:25:33 [debug] 450062#450062: *5 http write filter limit 0 +2025/08/19 14:25:33 [debug] 450062#450062: *5 writev: 199 of 199 +2025/08/19 14:25:33 [debug] 450062#450062: *5 http write filter 0000000000000000 +2025/08/19 14:25:33 [debug] 450062#450062: *5 http copy filter: 0 "/health?" +2025/08/19 14:25:33 [debug] 450062#450062: *5 http finalize request: 0, "/health?" a:1, c:1 +2025/08/19 14:25:33 [debug] 450062#450062: *5 set http keepalive handler +2025/08/19 14:25:33 [debug] 450062#450062: *5 http close request +2025/08/19 14:25:33 [debug] 450062#450062: *5 http log handler +2025/08/19 14:25:33 [debug] 450062#450062: *5 free: 00005CC70FECCA20, unused: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *5 free: 00005CC70FEC2D90, unused: 2736 +2025/08/19 14:25:33 [debug] 450062#450062: *5 free: 00005CC70FEB00A0 +2025/08/19 14:25:33 [debug] 450062#450062: *5 hc free: 0000000000000000 +2025/08/19 14:25:33 [debug] 450062#450062: *5 hc busy: 0000000000000000 0 +2025/08/19 14:25:33 [debug] 450062#450062: *5 tcp_nodelay +2025/08/19 14:25:33 [debug] 450062#450062: *5 reusable connection: 1 +2025/08/19 14:25:33 [debug] 450062#450062: *5 event timer add: 6: 65000:194731645 +2025/08/19 14:25:33 [debug] 450062#450062: timer delta: 0 +2025/08/19 14:25:33 [debug] 450062#450062: worker cycle +2025/08/19 14:25:33 [debug] 450062#450062: epoll timer: 65000 +2025/08/19 14:25:33 [debug] 450062#450062: epoll: fd:6 ev:2001 d:00007723057C51E1 +2025/08/19 14:25:33 [debug] 450062#450062: *5 http keepalive handler +2025/08/19 14:25:33 [debug] 450062#450062: *5 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:25:33 [debug] 450062#450062: *5 recv: eof:1, avail:-1 +2025/08/19 14:25:33 [debug] 450062#450062: *5 recv: fd:6 0 of 1024 +2025/08/19 14:25:33 [info] 450062#450062: *5 client 127.0.0.1 closed keepalive connection +2025/08/19 14:25:33 [debug] 450062#450062: *5 close http connection: 6 +2025/08/19 14:25:33 [debug] 450062#450062: *5 event timer del: 6: 194731645 +2025/08/19 14:25:33 [debug] 450062#450062: *5 reusable connection: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *5 free: 00005CC70FEB00A0 +2025/08/19 14:25:33 [debug] 450062#450062: *5 free: 00005CC70FEAD840, unused: 136 +2025/08/19 14:25:33 [debug] 450062#450062: timer delta: 1 +2025/08/19 14:25:33 [debug] 450062#450062: worker cycle +2025/08/19 14:25:33 [debug] 450062#450062: epoll timer: -1 +2025/08/19 14:25:33 [debug] 450062#450062: epoll: fd:5 ev:0001 d:00007723057C5010 +2025/08/19 14:25:33 [debug] 450062#450062: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:25:33 [debug] 450062#450062: posix_memalign: 00005CC70FEAD840:512 @16 +2025/08/19 14:25:33 [debug] 450062#450062: *6 accept: 127.0.0.1:34096 fd:6 +2025/08/19 14:25:33 [debug] 450062#450062: *6 event timer add: 6: 60000:194726962 +2025/08/19 14:25:33 [debug] 450062#450062: *6 reusable connection: 1 +2025/08/19 14:25:33 [debug] 450062#450062: *6 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:25:33 [debug] 450062#450062: timer delta: 316 +2025/08/19 14:25:33 [debug] 450062#450062: worker cycle +2025/08/19 14:25:33 [debug] 450062#450062: epoll timer: 60000 +2025/08/19 14:25:33 [debug] 450062#450062: epoll: fd:6 ev:0001 d:00007723057C51E0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http wait request handler +2025/08/19 14:25:33 [debug] 450062#450062: *6 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:25:33 [debug] 450062#450062: *6 recv: eof:0, avail:-1 +2025/08/19 14:25:33 [debug] 450062#450062: *6 recv: fd:6 1024 of 1024 +2025/08/19 14:25:33 [debug] 450062#450062: *6 recv: avail:112 +2025/08/19 14:25:33 [debug] 450062#450062: *6 reusable connection: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 posix_memalign: 00005CC70FECCA20:4096 @16 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http process request line +2025/08/19 14:25:33 [debug] 450062#450062: *6 http request line: "PUT /upload HTTP/1.1" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http uri: "/upload" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http args: "" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http exten: "" +2025/08/19 14:25:33 [debug] 450062#450062: *6 posix_memalign: 00005CC70FEC2D90:4096 @16 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http process request header line +2025/08/19 14:25:33 [debug] 450062#450062: *6 http header: "Host: localhost:9001" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http header: "Accept: */*" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIzYzc5MTUxY2EyNDgyMzg3Nzg5YzZkNjU2MjA5ZTk0MWQxYjk2NjE4NWFmMmQxOGJiNDgyMWZjMTU3MDU0Yjk2IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2Mjc5MzMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCIwNDQzMzFjNmE5ODRlNThiMjU4MzQzYTA5M2EwYTViOTYxY2U2YzhmYzI3YWQ2YzE1MzUxNDQ4MTRiMTdjZjA0Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMTUzMyJdXSwiY29udGVudCI6IiIsInNpZyI6IjA0OWM1MTkyZDYyZjUxNTc3NzNkYTQwNDU3MmM1ODg1NmY0MjNmNjFlNjQzODQ1NGY5YTdlZDYwYjk5ZTFkNjg0MmZmZWJlNTBkNTFjNzQ4OTA5OTdiM2ZkNWY5YTFmYjZlMTNkNjg0OTgwNzI4OWY1MTUyMmJkZGEzNTQ2YTcyIn0=" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http header: "Content-Type: text/plain" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http header: "Content-Disposition: attachment; filename="test_blob_1755627933.txt"" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http header: "Content-Length: 296" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http header done +2025/08/19 14:25:33 [debug] 450062#450062: *6 event timer del: 6: 194726962 +2025/08/19 14:25:33 [debug] 450062#450062: *6 generic phase: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 rewrite phase: 1 +2025/08/19 14:25:33 [debug] 450062#450062: *6 test location: "/health" +2025/08/19 14:25:33 [debug] 450062#450062: *6 test location: "/upload" +2025/08/19 14:25:33 [debug] 450062#450062: *6 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:25:33 [debug] 450062#450062: *6 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 14:25:33 [debug] 450062#450062: *6 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 14:25:33 [debug] 450062#450062: *6 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 14:25:33 [debug] 450062#450062: *6 using configuration "/upload" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http cl:296 max:104857600 +2025/08/19 14:25:33 [debug] 450062#450062: *6 rewrite phase: 3 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "PUT" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script regex: "^(PUT)$" +2025/08/19 14:25:33 [notice] 450062#450062: *6 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script if +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script if: false +2025/08/19 14:25:33 [debug] 450062#450062: *6 post rewrite phase: 4 +2025/08/19 14:25:33 [debug] 450062#450062: *6 generic phase: 5 +2025/08/19 14:25:33 [debug] 450062#450062: *6 generic phase: 6 +2025/08/19 14:25:33 [debug] 450062#450062: *6 generic phase: 7 +2025/08/19 14:25:33 [debug] 450062#450062: *6 access phase: 8 +2025/08/19 14:25:33 [debug] 450062#450062: *6 access phase: 9 +2025/08/19 14:25:33 [debug] 450062#450062: *6 access phase: 10 +2025/08/19 14:25:33 [debug] 450062#450062: *6 post access phase: 11 +2025/08/19 14:25:33 [debug] 450062#450062: *6 generic phase: 12 +2025/08/19 14:25:33 [debug] 450062#450062: *6 generic phase: 13 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http client request body preread 184 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http request body content length filter +2025/08/19 14:25:33 [debug] 450062#450062: *6 http body new buf t:1 f:0 00005CC70FEB03E8, pos 00005CC70FEB03E8, size: 184 file: 0, size: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http read client request body +2025/08/19 14:25:33 [debug] 450062#450062: *6 recv: eof:0, avail:112 +2025/08/19 14:25:33 [debug] 450062#450062: *6 recv: fd:6 112 of 112 +2025/08/19 14:25:33 [debug] 450062#450062: *6 recv: avail:0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http client request body recv 112 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http body new buf t:1 f:0 00005CC70FEC3820, pos 00005CC70FEC3820, size: 112 file: 0, size: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http client request body rest 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http init upstream, client timer: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 14:25:33 [debug] 450062#450062: *6 posix_memalign: 00005CC70FEB7140:4096 @16 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "QUERY_STRING" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "QUERY_STRING: " +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "REQUEST_METHOD" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "PUT" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "CONTENT_TYPE" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "text/plain" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "CONTENT_LENGTH" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "296" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "SCRIPT_NAME" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "/upload" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "REQUEST_URI" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "/upload" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "DOCUMENT_URI" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "/upload" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "DOCUMENT_ROOT" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "./blobs" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "SERVER_PROTOCOL" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "HTTP/1.1" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "REQUEST_SCHEME" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "http" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "GATEWAY_INTERFACE" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "CGI/1.1" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "SERVER_SOFTWARE" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "nginx/" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "1.18.0" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "REMOTE_ADDR" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "127.0.0.1" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "REMOTE_PORT" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "34096" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "REMOTE_PORT: 34096" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "SERVER_ADDR" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "127.0.0.1" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "SERVER_PORT" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "9001" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "SERVER_NAME" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "localhost" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "REDIRECT_STATUS" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "200" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "SCRIPT_FILENAME" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script var: "./blobs" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http script copy: "/ginxsom.fcgi" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIzYzc5MTUxY2EyNDgyMzg3Nzg5YzZkNjU2MjA5ZTk0MWQxYjk2NjE4NWFmMmQxOGJiNDgyMWZjMTU3MDU0Yjk2IiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2Mjc5MzMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCIwNDQzMzFjNmE5ODRlNThiMjU4MzQzYTA5M2EwYTViOTYxY2U2YzhmYzI3YWQ2YzE1MzUxNDQ4MTRiMTdjZjA0Il0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMTUzMyJdXSwiY29udGVudCI6IiIsInNpZyI6IjA0OWM1MTkyZDYyZjUxNTc3NzNkYTQwNDU3MmM1ODg1NmY0MjNmNjFlNjQzODQ1NGY5YTdlZDYwYjk5ZTFkNjg0MmZmZWJlNTBkNTFjNzQ4OTA5OTdiM2ZkNWY5YTFmYjZlMTNkNjg0OTgwNzI4OWY1MTUyMmJkZGEzNTQ2YTcyIn0=" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755627933.txt"" +2025/08/19 14:25:33 [debug] 450062#450062: *6 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http cleanup add: 00005CC70FEC3B70 +2025/08/19 14:25:33 [debug] 450062#450062: *6 get rr peer, try: 1 +2025/08/19 14:25:33 [debug] 450062#450062: *6 stream socket 10 +2025/08/19 14:25:33 [debug] 450062#450062: *6 epoll add connection: fd:10 ev:80002005 +2025/08/19 14:25:33 [debug] 450062#450062: *6 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #7 +2025/08/19 14:25:33 [crit] 450062#450062: *6 connect() to unix:/tmp/ginxsom-fcgi.sock failed (2: No such file or directory) while connecting to upstream, client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", upstream: "fastcgi://unix:/tmp/ginxsom-fcgi.sock:", host: "localhost:9001" +2025/08/19 14:25:33 [debug] 450062#450062: *6 reusable connection: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http upstream connect: -5 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http next upstream, 2 +2025/08/19 14:25:33 [debug] 450062#450062: *6 free rr peer 1 4 +2025/08/19 14:25:33 [debug] 450062#450062: *6 finalize http upstream request: 502 +2025/08/19 14:25:33 [debug] 450062#450062: *6 finalize http fastcgi request +2025/08/19 14:25:33 [debug] 450062#450062: *6 http finalize request: 502, "/upload?" a:1, c:2 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http special response: 502, "/upload?" +2025/08/19 14:25:33 [debug] 450062#450062: *6 HTTP/1.1 502 Bad Gateway +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:25:33 GMT +Content-Type: text/html +Content-Length: 166 +Connection: keep-alive + +2025/08/19 14:25:33 [debug] 450062#450062: *6 write new buf t:1 f:0 00005CC70FEC3C00, pos 00005CC70FEC3C00, size: 166 file: 0, size: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http write filter: l:0 f:0 s:166 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http output filter "/upload?" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http copy filter: "/upload?" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http postpone filter "/upload?" 00005CC70FEC3D68 +2025/08/19 14:25:33 [debug] 450062#450062: *6 write old buf t:1 f:0 00005CC70FEC3C00, pos 00005CC70FEC3C00, size: 166 file: 0, size: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 write new buf t:0 f:0 0000000000000000, pos 00005CC705DEEA40, size: 104 file: 0, size: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 write new buf t:0 f:0 0000000000000000, pos 00005CC705DEFC80, size: 62 file: 0, size: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http write filter: l:1 f:0 s:332 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http write filter limit 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 writev: 332 of 332 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http write filter 0000000000000000 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http copy filter: 0 "/upload?" +2025/08/19 14:25:33 [debug] 450062#450062: *6 http finalize request: 0, "/upload?" a:1, c:2 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http request count:2 blk:0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http finalize request: -4, "/upload?" a:1, c:1 +2025/08/19 14:25:33 [debug] 450062#450062: *6 set http keepalive handler +2025/08/19 14:25:33 [debug] 450062#450062: *6 http close request +2025/08/19 14:25:33 [debug] 450062#450062: *6 http log handler +2025/08/19 14:25:33 [debug] 450062#450062: *6 free: 00005CC70FECCA20, unused: 3 +2025/08/19 14:25:33 [debug] 450062#450062: *6 free: 00005CC70FEC2D90, unused: 8 +2025/08/19 14:25:33 [debug] 450062#450062: *6 free: 00005CC70FEB7140, unused: 2466 +2025/08/19 14:25:33 [debug] 450062#450062: *6 free: 00005CC70FEB00A0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 hc free: 0000000000000000 +2025/08/19 14:25:33 [debug] 450062#450062: *6 hc busy: 0000000000000000 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 tcp_nodelay +2025/08/19 14:25:33 [debug] 450062#450062: *6 reusable connection: 1 +2025/08/19 14:25:33 [debug] 450062#450062: *6 event timer add: 6: 65000:194731963 +2025/08/19 14:25:33 [debug] 450062#450062: *6 post event 00005CC70FEFE760 +2025/08/19 14:25:33 [debug] 450062#450062: timer delta: 1 +2025/08/19 14:25:33 [debug] 450062#450062: posted event 00005CC70FEFE760 +2025/08/19 14:25:33 [debug] 450062#450062: *6 delete posted event 00005CC70FEFE760 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http keepalive handler +2025/08/19 14:25:33 [debug] 450062#450062: *6 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:25:33 [debug] 450062#450062: *6 recv: eof:0, avail:0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 free: 00005CC70FEB00A0 +2025/08/19 14:25:33 [debug] 450062#450062: worker cycle +2025/08/19 14:25:33 [debug] 450062#450062: epoll timer: 65000 +2025/08/19 14:25:33 [debug] 450062#450062: epoll: fd:6 ev:2005 d:00007723057C51E0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 http keepalive handler +2025/08/19 14:25:33 [debug] 450062#450062: *6 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:25:33 [debug] 450062#450062: *6 recv: eof:1, avail:-1 +2025/08/19 14:25:33 [debug] 450062#450062: *6 recv: fd:6 0 of 1024 +2025/08/19 14:25:33 [info] 450062#450062: *6 client 127.0.0.1 closed keepalive connection +2025/08/19 14:25:33 [debug] 450062#450062: *6 close http connection: 6 +2025/08/19 14:25:33 [debug] 450062#450062: *6 event timer del: 6: 194731963 +2025/08/19 14:25:33 [debug] 450062#450062: *6 reusable connection: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 free: 00005CC70FEB00A0 +2025/08/19 14:25:33 [debug] 450062#450062: *6 free: 00005CC70FEAD840, unused: 120 +2025/08/19 14:25:33 [debug] 450062#450062: timer delta: 2 +2025/08/19 14:25:33 [debug] 450062#450062: worker cycle +2025/08/19 14:25:33 [debug] 450062#450062: epoll timer: -1 +2025/08/19 14:25:33 [debug] 450062#450062: epoll: fd:5 ev:0001 d:00007723057C5010 +2025/08/19 14:25:33 [debug] 450062#450062: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:25:33 [debug] 450062#450062: posix_memalign: 00005CC70FEAD840:512 @16 +2025/08/19 14:25:33 [debug] 450062#450062: *8 accept: 127.0.0.1:34102 fd:6 +2025/08/19 14:25:33 [debug] 450062#450062: *8 event timer add: 6: 60000:194726978 +2025/08/19 14:25:33 [debug] 450062#450062: *8 reusable connection: 1 +2025/08/19 14:25:33 [debug] 450062#450062: *8 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:25:33 [debug] 450062#450062: timer delta: 13 +2025/08/19 14:25:33 [debug] 450062#450062: worker cycle +2025/08/19 14:25:33 [debug] 450062#450062: epoll timer: 60000 +2025/08/19 14:25:33 [debug] 450062#450062: epoll: fd:6 ev:0001 d:00007723057C51E1 +2025/08/19 14:25:33 [debug] 450062#450062: *8 http wait request handler +2025/08/19 14:25:33 [debug] 450062#450062: *8 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:25:33 [debug] 450062#450062: *8 recv: eof:0, avail:-1 +2025/08/19 14:25:33 [debug] 450062#450062: *8 recv: fd:6 142 of 1024 +2025/08/19 14:25:33 [debug] 450062#450062: *8 reusable connection: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *8 posix_memalign: 00005CC70FECCA20:4096 @16 +2025/08/19 14:25:33 [debug] 450062#450062: *8 http process request line +2025/08/19 14:25:33 [debug] 450062#450062: *8 http request line: "GET /044331c6a984e58b258343a093a0a5b961ce6c8fc27ad6c1535144814b17cf04 HTTP/1.1" +2025/08/19 14:25:33 [debug] 450062#450062: *8 http uri: "/044331c6a984e58b258343a093a0a5b961ce6c8fc27ad6c1535144814b17cf04" +2025/08/19 14:25:33 [debug] 450062#450062: *8 http args: "" +2025/08/19 14:25:33 [debug] 450062#450062: *8 http exten: "" +2025/08/19 14:25:33 [debug] 450062#450062: *8 posix_memalign: 00005CC70FEC2D90:4096 @16 +2025/08/19 14:25:33 [debug] 450062#450062: *8 http process request header line +2025/08/19 14:25:33 [debug] 450062#450062: *8 http header: "Host: localhost:9001" +2025/08/19 14:25:33 [debug] 450062#450062: *8 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:25:33 [debug] 450062#450062: *8 http header: "Accept: */*" +2025/08/19 14:25:33 [debug] 450062#450062: *8 http header done +2025/08/19 14:25:33 [debug] 450062#450062: *8 event timer del: 6: 194726978 +2025/08/19 14:25:33 [debug] 450062#450062: *8 generic phase: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *8 rewrite phase: 1 +2025/08/19 14:25:33 [debug] 450062#450062: *8 test location: "/health" +2025/08/19 14:25:33 [debug] 450062#450062: *8 test location: "/debug/list" +2025/08/19 14:25:33 [debug] 450062#450062: *8 test location: "/" +2025/08/19 14:25:33 [debug] 450062#450062: *8 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:25:33 [debug] 450062#450062: *8 using configuration "^/([a-f0-9]{64}).*$" +2025/08/19 14:25:33 [debug] 450062#450062: *8 http cl:-1 max:104857600 +2025/08/19 14:25:33 [debug] 450062#450062: *8 rewrite phase: 3 +2025/08/19 14:25:33 [debug] 450062#450062: *8 http script var +2025/08/19 14:25:33 [debug] 450062#450062: *8 http script var: "GET" +2025/08/19 14:25:33 [debug] 450062#450062: *8 http script value: "DELETE" +2025/08/19 14:25:33 [debug] 450062#450062: *8 http script not equal +2025/08/19 14:25:33 [debug] 450062#450062: *8 http script if +2025/08/19 14:25:33 [debug] 450062#450062: *8 http finalize request: 404, "/044331c6a984e58b258343a093a0a5b961ce6c8fc27ad6c1535144814b17cf04?" a:1, c:1 +2025/08/19 14:25:33 [debug] 450062#450062: *8 http special response: 404, "/044331c6a984e58b258343a093a0a5b961ce6c8fc27ad6c1535144814b17cf04?" +2025/08/19 14:25:33 [debug] 450062#450062: *8 http set discard body +2025/08/19 14:25:33 [debug] 450062#450062: *8 HTTP/1.1 404 Not Found +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:25:33 GMT +Content-Type: text/html +Content-Length: 162 +Connection: keep-alive + +2025/08/19 14:25:33 [debug] 450062#450062: *8 write new buf t:1 f:0 00005CC70FEC3170, pos 00005CC70FEC3170, size: 164 file: 0, size: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *8 http write filter: l:0 f:0 s:164 +2025/08/19 14:25:33 [debug] 450062#450062: *8 http output filter "/044331c6a984e58b258343a093a0a5b961ce6c8fc27ad6c1535144814b17cf04?" +2025/08/19 14:25:33 [debug] 450062#450062: *8 http copy filter: "/044331c6a984e58b258343a093a0a5b961ce6c8fc27ad6c1535144814b17cf04?" +2025/08/19 14:25:33 [debug] 450062#450062: *8 http postpone filter "/044331c6a984e58b258343a093a0a5b961ce6c8fc27ad6c1535144814b17cf04?" 00005CC70FEC3300 +2025/08/19 14:25:33 [debug] 450062#450062: *8 write old buf t:1 f:0 00005CC70FEC3170, pos 00005CC70FEC3170, size: 164 file: 0, size: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *8 write new buf t:0 f:0 0000000000000000, pos 00005CC705DEF580, size: 100 file: 0, size: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *8 write new buf t:0 f:0 0000000000000000, pos 00005CC705DEFC80, size: 62 file: 0, size: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *8 http write filter: l:1 f:0 s:326 +2025/08/19 14:25:33 [debug] 450062#450062: *8 http write filter limit 0 +2025/08/19 14:25:33 [debug] 450062#450062: *8 writev: 326 of 326 +2025/08/19 14:25:33 [debug] 450062#450062: *8 http write filter 0000000000000000 +2025/08/19 14:25:33 [debug] 450062#450062: *8 http copy filter: 0 "/044331c6a984e58b258343a093a0a5b961ce6c8fc27ad6c1535144814b17cf04?" +2025/08/19 14:25:33 [debug] 450062#450062: *8 http finalize request: 0, "/044331c6a984e58b258343a093a0a5b961ce6c8fc27ad6c1535144814b17cf04?" a:1, c:1 +2025/08/19 14:25:33 [debug] 450062#450062: *8 set http keepalive handler +2025/08/19 14:25:33 [debug] 450062#450062: *8 http close request +2025/08/19 14:25:33 [debug] 450062#450062: *8 http log handler +2025/08/19 14:25:33 [debug] 450062#450062: *8 free: 00005CC70FECCA20, unused: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *8 free: 00005CC70FEC2D90, unused: 2456 +2025/08/19 14:25:33 [debug] 450062#450062: *8 free: 00005CC70FEB00A0 +2025/08/19 14:25:33 [debug] 450062#450062: *8 hc free: 0000000000000000 +2025/08/19 14:25:33 [debug] 450062#450062: *8 hc busy: 0000000000000000 0 +2025/08/19 14:25:33 [debug] 450062#450062: *8 tcp_nodelay +2025/08/19 14:25:33 [debug] 450062#450062: *8 reusable connection: 1 +2025/08/19 14:25:33 [debug] 450062#450062: *8 event timer add: 6: 65000:194731978 +2025/08/19 14:25:33 [debug] 450062#450062: timer delta: 0 +2025/08/19 14:25:33 [debug] 450062#450062: worker cycle +2025/08/19 14:25:33 [debug] 450062#450062: epoll timer: 65000 +2025/08/19 14:25:33 [debug] 450062#450062: epoll: fd:6 ev:2001 d:00007723057C51E1 +2025/08/19 14:25:33 [debug] 450062#450062: *8 http keepalive handler +2025/08/19 14:25:33 [debug] 450062#450062: *8 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:25:33 [debug] 450062#450062: *8 recv: eof:1, avail:-1 +2025/08/19 14:25:33 [debug] 450062#450062: *8 recv: fd:6 0 of 1024 +2025/08/19 14:25:33 [info] 450062#450062: *8 client 127.0.0.1 closed keepalive connection +2025/08/19 14:25:33 [debug] 450062#450062: *8 close http connection: 6 +2025/08/19 14:25:33 [debug] 450062#450062: *8 event timer del: 6: 194731978 +2025/08/19 14:25:33 [debug] 450062#450062: *8 reusable connection: 0 +2025/08/19 14:25:33 [debug] 450062#450062: *8 free: 00005CC70FEB00A0 +2025/08/19 14:25:33 [debug] 450062#450062: *8 free: 00005CC70FEAD840, unused: 136 +2025/08/19 14:25:33 [debug] 450062#450062: timer delta: 1 +2025/08/19 14:25:33 [debug] 450062#450062: worker cycle +2025/08/19 14:25:33 [debug] 450062#450062: epoll timer: -1 +2025/08/19 14:29:42 [debug] 450062#450062: epoll: fd:5 ev:0001 d:00007723057C5010 +2025/08/19 14:29:42 [debug] 450062#450062: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:29:42 [debug] 450062#450062: posix_memalign: 00005CC70FEAD840:512 @16 +2025/08/19 14:29:42 [debug] 450062#450062: *9 accept: 127.0.0.1:54838 fd:6 +2025/08/19 14:29:42 [debug] 450062#450062: *9 event timer add: 6: 60000:194975579 +2025/08/19 14:29:42 [debug] 450062#450062: *9 reusable connection: 1 +2025/08/19 14:29:42 [debug] 450062#450062: *9 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:29:42 [debug] 450062#450062: timer delta: 248600 +2025/08/19 14:29:42 [debug] 450062#450062: worker cycle +2025/08/19 14:29:42 [debug] 450062#450062: epoll timer: 60000 +2025/08/19 14:29:42 [debug] 450062#450062: epoll: fd:6 ev:0001 d:00007723057C51E0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http wait request handler +2025/08/19 14:29:42 [debug] 450062#450062: *9 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:29:42 [debug] 450062#450062: *9 recv: eof:0, avail:-1 +2025/08/19 14:29:42 [debug] 450062#450062: *9 recv: fd:6 1024 of 1024 +2025/08/19 14:29:42 [debug] 450062#450062: *9 recv: avail:112 +2025/08/19 14:29:42 [debug] 450062#450062: *9 reusable connection: 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 posix_memalign: 00005CC70FECCA20:4096 @16 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http process request line +2025/08/19 14:29:42 [debug] 450062#450062: *9 http request line: "PUT /upload HTTP/1.1" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http uri: "/upload" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http args: "" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http exten: "" +2025/08/19 14:29:42 [debug] 450062#450062: *9 posix_memalign: 00005CC70FEC2D90:4096 @16 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http process request header line +2025/08/19 14:29:42 [debug] 450062#450062: *9 http header: "Host: localhost:9001" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http header: "Accept: */*" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIxYjZkYTcwY2E5OWYyZmIxMDNlNGRiZmU5YmI0YWNkZThkZWZkZTQ4MzA4MDI2ZTBkYjY1ZGExNjdmMWQ1NTFkIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjgxODIsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJkM2E2OTE4YWJmNGMyY2U5YjJiMGY2MWRmZThjNzMzYmY4MjE1ZjM4N2ZjMDAwNzNlOTE2ZjJkMWRkODEwNTIzIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMTc4MiJdXSwiY29udGVudCI6IiIsInNpZyI6ImNjNTk4Y2RkOWFjNTMyODVmYzU4YTBlOWIwMzIwMjAxMmEzMGMwNzExYzRhZmVjNWJlMzUzOTJlZWQ3OTkyNzA3NjIzNjQ5MTE4N2I1OWYwMjBlMjdhMzU1ZGJiMjliOWFkMzJmYjQ5ODEyZjEzMWYxOTFmNDEzNjdiMDYyZTBhIn0=" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http header: "Content-Type: text/plain" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http header: "Content-Disposition: attachment; filename="test_blob_1755628182.txt"" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http header: "Content-Length: 296" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http header done +2025/08/19 14:29:42 [debug] 450062#450062: *9 event timer del: 6: 194975579 +2025/08/19 14:29:42 [debug] 450062#450062: *9 generic phase: 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 rewrite phase: 1 +2025/08/19 14:29:42 [debug] 450062#450062: *9 test location: "/health" +2025/08/19 14:29:42 [debug] 450062#450062: *9 test location: "/upload" +2025/08/19 14:29:42 [debug] 450062#450062: *9 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:29:42 [debug] 450062#450062: *9 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 14:29:42 [debug] 450062#450062: *9 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 14:29:42 [debug] 450062#450062: *9 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 14:29:42 [debug] 450062#450062: *9 using configuration "/upload" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http cl:296 max:104857600 +2025/08/19 14:29:42 [debug] 450062#450062: *9 rewrite phase: 3 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "PUT" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script regex: "^(PUT)$" +2025/08/19 14:29:42 [notice] 450062#450062: *9 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script if +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script if: false +2025/08/19 14:29:42 [debug] 450062#450062: *9 post rewrite phase: 4 +2025/08/19 14:29:42 [debug] 450062#450062: *9 generic phase: 5 +2025/08/19 14:29:42 [debug] 450062#450062: *9 generic phase: 6 +2025/08/19 14:29:42 [debug] 450062#450062: *9 generic phase: 7 +2025/08/19 14:29:42 [debug] 450062#450062: *9 access phase: 8 +2025/08/19 14:29:42 [debug] 450062#450062: *9 access phase: 9 +2025/08/19 14:29:42 [debug] 450062#450062: *9 access phase: 10 +2025/08/19 14:29:42 [debug] 450062#450062: *9 post access phase: 11 +2025/08/19 14:29:42 [debug] 450062#450062: *9 generic phase: 12 +2025/08/19 14:29:42 [debug] 450062#450062: *9 generic phase: 13 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http client request body preread 184 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http request body content length filter +2025/08/19 14:29:42 [debug] 450062#450062: *9 http body new buf t:1 f:0 00005CC70FEB03E8, pos 00005CC70FEB03E8, size: 184 file: 0, size: 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http read client request body +2025/08/19 14:29:42 [debug] 450062#450062: *9 recv: eof:0, avail:112 +2025/08/19 14:29:42 [debug] 450062#450062: *9 recv: fd:6 112 of 112 +2025/08/19 14:29:42 [debug] 450062#450062: *9 recv: avail:0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http client request body recv 112 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http body new buf t:1 f:0 00005CC70FEC3820, pos 00005CC70FEC3820, size: 112 file: 0, size: 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http client request body rest 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http init upstream, client timer: 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 14:29:42 [debug] 450062#450062: *9 posix_memalign: 00005CC70FEB7140:4096 @16 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "QUERY_STRING" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "QUERY_STRING: " +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "REQUEST_METHOD" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "PUT" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "CONTENT_TYPE" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "text/plain" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "CONTENT_LENGTH" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "296" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "SCRIPT_NAME" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "/upload" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "REQUEST_URI" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "/upload" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "DOCUMENT_URI" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "/upload" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "DOCUMENT_ROOT" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "./blobs" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "SERVER_PROTOCOL" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "HTTP/1.1" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "REQUEST_SCHEME" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "http" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "GATEWAY_INTERFACE" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "CGI/1.1" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "SERVER_SOFTWARE" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "nginx/" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "1.18.0" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "REMOTE_ADDR" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "127.0.0.1" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "REMOTE_PORT" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "54838" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "REMOTE_PORT: 54838" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "SERVER_ADDR" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "127.0.0.1" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "SERVER_PORT" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "9001" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "SERVER_NAME" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "localhost" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "REDIRECT_STATUS" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "200" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "SCRIPT_FILENAME" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script var: "./blobs" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http script copy: "/ginxsom.fcgi" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIxYjZkYTcwY2E5OWYyZmIxMDNlNGRiZmU5YmI0YWNkZThkZWZkZTQ4MzA4MDI2ZTBkYjY1ZGExNjdmMWQ1NTFkIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjgxODIsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJkM2E2OTE4YWJmNGMyY2U5YjJiMGY2MWRmZThjNzMzYmY4MjE1ZjM4N2ZjMDAwNzNlOTE2ZjJkMWRkODEwNTIzIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMTc4MiJdXSwiY29udGVudCI6IiIsInNpZyI6ImNjNTk4Y2RkOWFjNTMyODVmYzU4YTBlOWIwMzIwMjAxMmEzMGMwNzExYzRhZmVjNWJlMzUzOTJlZWQ3OTkyNzA3NjIzNjQ5MTE4N2I1OWYwMjBlMjdhMzU1ZGJiMjliOWFkMzJmYjQ5ODEyZjEzMWYxOTFmNDEzNjdiMDYyZTBhIn0=" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755628182.txt"" +2025/08/19 14:29:42 [debug] 450062#450062: *9 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http cleanup add: 00005CC70FEC3B70 +2025/08/19 14:29:42 [debug] 450062#450062: *9 get rr peer, try: 1 +2025/08/19 14:29:42 [debug] 450062#450062: *9 stream socket 10 +2025/08/19 14:29:42 [debug] 450062#450062: *9 epoll add connection: fd:10 ev:80002005 +2025/08/19 14:29:42 [debug] 450062#450062: *9 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #10 +2025/08/19 14:29:42 [crit] 450062#450062: *9 connect() to unix:/tmp/ginxsom-fcgi.sock failed (2: No such file or directory) while connecting to upstream, client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", upstream: "fastcgi://unix:/tmp/ginxsom-fcgi.sock:", host: "localhost:9001" +2025/08/19 14:29:42 [debug] 450062#450062: *9 reusable connection: 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http upstream connect: -5 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http next upstream, 2 +2025/08/19 14:29:42 [debug] 450062#450062: *9 free rr peer 1 4 +2025/08/19 14:29:42 [debug] 450062#450062: *9 finalize http upstream request: 502 +2025/08/19 14:29:42 [debug] 450062#450062: *9 finalize http fastcgi request +2025/08/19 14:29:42 [debug] 450062#450062: *9 http finalize request: 502, "/upload?" a:1, c:2 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http special response: 502, "/upload?" +2025/08/19 14:29:42 [debug] 450062#450062: *9 HTTP/1.1 502 Bad Gateway +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:29:42 GMT +Content-Type: text/html +Content-Length: 166 +Connection: keep-alive + +2025/08/19 14:29:42 [debug] 450062#450062: *9 write new buf t:1 f:0 00005CC70FEC3C00, pos 00005CC70FEC3C00, size: 166 file: 0, size: 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http write filter: l:0 f:0 s:166 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http output filter "/upload?" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http copy filter: "/upload?" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http postpone filter "/upload?" 00005CC70FEC3D68 +2025/08/19 14:29:42 [debug] 450062#450062: *9 write old buf t:1 f:0 00005CC70FEC3C00, pos 00005CC70FEC3C00, size: 166 file: 0, size: 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 write new buf t:0 f:0 0000000000000000, pos 00005CC705DEEA40, size: 104 file: 0, size: 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 write new buf t:0 f:0 0000000000000000, pos 00005CC705DEFC80, size: 62 file: 0, size: 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http write filter: l:1 f:0 s:332 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http write filter limit 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 writev: 332 of 332 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http write filter 0000000000000000 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http copy filter: 0 "/upload?" +2025/08/19 14:29:42 [debug] 450062#450062: *9 http finalize request: 0, "/upload?" a:1, c:2 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http request count:2 blk:0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http finalize request: -4, "/upload?" a:1, c:1 +2025/08/19 14:29:42 [debug] 450062#450062: *9 set http keepalive handler +2025/08/19 14:29:42 [debug] 450062#450062: *9 http close request +2025/08/19 14:29:42 [debug] 450062#450062: *9 http log handler +2025/08/19 14:29:42 [debug] 450062#450062: *9 free: 00005CC70FECCA20, unused: 3 +2025/08/19 14:29:42 [debug] 450062#450062: *9 free: 00005CC70FEC2D90, unused: 8 +2025/08/19 14:29:42 [debug] 450062#450062: *9 free: 00005CC70FEB7140, unused: 2466 +2025/08/19 14:29:42 [debug] 450062#450062: *9 free: 00005CC70FEB00A0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 hc free: 0000000000000000 +2025/08/19 14:29:42 [debug] 450062#450062: *9 hc busy: 0000000000000000 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 tcp_nodelay +2025/08/19 14:29:42 [debug] 450062#450062: *9 reusable connection: 1 +2025/08/19 14:29:42 [debug] 450062#450062: *9 event timer add: 6: 65000:194980579 +2025/08/19 14:29:42 [debug] 450062#450062: *9 post event 00005CC70FEFE760 +2025/08/19 14:29:42 [debug] 450062#450062: timer delta: 0 +2025/08/19 14:29:42 [debug] 450062#450062: posted event 00005CC70FEFE760 +2025/08/19 14:29:42 [debug] 450062#450062: *9 delete posted event 00005CC70FEFE760 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http keepalive handler +2025/08/19 14:29:42 [debug] 450062#450062: *9 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:29:42 [debug] 450062#450062: *9 recv: eof:0, avail:0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 free: 00005CC70FEB00A0 +2025/08/19 14:29:42 [debug] 450062#450062: worker cycle +2025/08/19 14:29:42 [debug] 450062#450062: epoll timer: 65000 +2025/08/19 14:29:42 [debug] 450062#450062: epoll: fd:6 ev:0004 d:00007723057C51E0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http empty handler +2025/08/19 14:29:42 [debug] 450062#450062: timer delta: 2 +2025/08/19 14:29:42 [debug] 450062#450062: worker cycle +2025/08/19 14:29:42 [debug] 450062#450062: epoll timer: 64998 +2025/08/19 14:29:42 [debug] 450062#450062: epoll: fd:6 ev:2005 d:00007723057C51E0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 http keepalive handler +2025/08/19 14:29:42 [debug] 450062#450062: *9 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:29:42 [debug] 450062#450062: *9 recv: eof:1, avail:-1 +2025/08/19 14:29:42 [debug] 450062#450062: *9 recv: fd:6 0 of 1024 +2025/08/19 14:29:42 [info] 450062#450062: *9 client 127.0.0.1 closed keepalive connection +2025/08/19 14:29:42 [debug] 450062#450062: *9 close http connection: 6 +2025/08/19 14:29:42 [debug] 450062#450062: *9 event timer del: 6: 194980579 +2025/08/19 14:29:42 [debug] 450062#450062: *9 reusable connection: 0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 free: 00005CC70FEB00A0 +2025/08/19 14:29:42 [debug] 450062#450062: *9 free: 00005CC70FEAD840, unused: 120 +2025/08/19 14:29:42 [debug] 450062#450062: timer delta: 0 +2025/08/19 14:29:42 [debug] 450062#450062: worker cycle +2025/08/19 14:29:42 [debug] 450062#450062: epoll timer: -1 +2025/08/19 14:32:12 [debug] 450062#450062: epoll: fd:5 ev:0001 d:00007723057C5010 +2025/08/19 14:32:12 [debug] 450062#450062: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:32:12 [debug] 450062#450062: posix_memalign: 00005CC70FEAD840:512 @16 +2025/08/19 14:32:12 [debug] 450062#450062: *11 accept: 127.0.0.1:49020 fd:6 +2025/08/19 14:32:12 [debug] 450062#450062: *11 event timer add: 6: 60000:195125704 +2025/08/19 14:32:12 [debug] 450062#450062: *11 reusable connection: 1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:32:12 [debug] 450062#450062: timer delta: 150123 +2025/08/19 14:32:12 [debug] 450062#450062: worker cycle +2025/08/19 14:32:12 [debug] 450062#450062: epoll timer: 60000 +2025/08/19 14:32:12 [debug] 450062#450062: epoll: fd:6 ev:0001 d:00007723057C51E1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http wait request handler +2025/08/19 14:32:12 [debug] 450062#450062: *11 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:32:12 [debug] 450062#450062: *11 recv: eof:0, avail:-1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 recv: fd:6 1024 of 1024 +2025/08/19 14:32:12 [debug] 450062#450062: *11 recv: avail:112 +2025/08/19 14:32:12 [debug] 450062#450062: *11 reusable connection: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 posix_memalign: 00005CC70FECCA20:4096 @16 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http process request line +2025/08/19 14:32:12 [debug] 450062#450062: *11 http request line: "PUT /upload HTTP/1.1" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http uri: "/upload" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http args: "" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http exten: "" +2025/08/19 14:32:12 [debug] 450062#450062: *11 posix_memalign: 00005CC70FEC2D90:4096 @16 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http process request header line +2025/08/19 14:32:12 [debug] 450062#450062: *11 http header: "Host: localhost:9001" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http header: "Accept: */*" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI0YmMwYzlhODQ3NGJlNzFhZGZjZDc3Yzk4NzE3MjljMGFlNzcxMzNkMDgyZDc4NDAwZjdmMGRmODI5MmY0NWFkIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjgzMzIsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI0NjI3MjI1ZDQ4YjA0OGJiOTA1YzFkYTJkOTQxNmNkZTJiYWU2MTU5MDNiNTJiZTRhMjBkNmQ2MGMwNWE4MDIzIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMTkzMiJdXSwiY29udGVudCI6IiIsInNpZyI6IjRhZDhiZTkzMjc5MzkxYWY3Y2ZlNWJiYjFmOWIyODE3NzQzOWUyOGNkODMxY2QyMzNjZjkwN2IwNWM2YzZiOTdjYjgxYmJjZTE2NWNmZjE4ZWY0Y2I1NTk1MWVmY2U3ZTZkMjYwMWI0Yjk5ZjcxMWRhYjU5YWU2MjQ2NGQ3YzU0In0=" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http header: "Content-Type: text/plain" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http header: "Content-Disposition: attachment; filename="test_blob_1755628332.txt"" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http header: "Content-Length: 296" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http header done +2025/08/19 14:32:12 [debug] 450062#450062: *11 event timer del: 6: 195125704 +2025/08/19 14:32:12 [debug] 450062#450062: *11 generic phase: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 rewrite phase: 1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 test location: "/health" +2025/08/19 14:32:12 [debug] 450062#450062: *11 test location: "/upload" +2025/08/19 14:32:12 [debug] 450062#450062: *11 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:32:12 [debug] 450062#450062: *11 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 14:32:12 [debug] 450062#450062: *11 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 14:32:12 [debug] 450062#450062: *11 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 14:32:12 [debug] 450062#450062: *11 using configuration "/upload" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http cl:296 max:104857600 +2025/08/19 14:32:12 [debug] 450062#450062: *11 rewrite phase: 3 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "PUT" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script regex: "^(PUT)$" +2025/08/19 14:32:12 [notice] 450062#450062: *11 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script if +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script if: false +2025/08/19 14:32:12 [debug] 450062#450062: *11 post rewrite phase: 4 +2025/08/19 14:32:12 [debug] 450062#450062: *11 generic phase: 5 +2025/08/19 14:32:12 [debug] 450062#450062: *11 generic phase: 6 +2025/08/19 14:32:12 [debug] 450062#450062: *11 generic phase: 7 +2025/08/19 14:32:12 [debug] 450062#450062: *11 access phase: 8 +2025/08/19 14:32:12 [debug] 450062#450062: *11 access phase: 9 +2025/08/19 14:32:12 [debug] 450062#450062: *11 access phase: 10 +2025/08/19 14:32:12 [debug] 450062#450062: *11 post access phase: 11 +2025/08/19 14:32:12 [debug] 450062#450062: *11 generic phase: 12 +2025/08/19 14:32:12 [debug] 450062#450062: *11 generic phase: 13 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http client request body preread 184 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http request body content length filter +2025/08/19 14:32:12 [debug] 450062#450062: *11 http body new buf t:1 f:0 00005CC70FEB03E8, pos 00005CC70FEB03E8, size: 184 file: 0, size: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http read client request body +2025/08/19 14:32:12 [debug] 450062#450062: *11 recv: eof:0, avail:112 +2025/08/19 14:32:12 [debug] 450062#450062: *11 recv: fd:6 112 of 112 +2025/08/19 14:32:12 [debug] 450062#450062: *11 recv: avail:0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http client request body recv 112 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http body new buf t:1 f:0 00005CC70FEC3820, pos 00005CC70FEC3820, size: 112 file: 0, size: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http client request body rest 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http init upstream, client timer: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 14:32:12 [debug] 450062#450062: *11 posix_memalign: 00005CC70FEB7140:4096 @16 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "QUERY_STRING" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "QUERY_STRING: " +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "REQUEST_METHOD" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "PUT" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "CONTENT_TYPE" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "text/plain" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "CONTENT_LENGTH" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "296" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "SCRIPT_NAME" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "/upload" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "REQUEST_URI" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "/upload" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "DOCUMENT_URI" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "/upload" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "DOCUMENT_ROOT" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "./blobs" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "SERVER_PROTOCOL" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "HTTP/1.1" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "REQUEST_SCHEME" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "http" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "GATEWAY_INTERFACE" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "CGI/1.1" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "SERVER_SOFTWARE" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "nginx/" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "1.18.0" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "REMOTE_ADDR" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "127.0.0.1" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "REMOTE_PORT" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "49020" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "REMOTE_PORT: 49020" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "SERVER_ADDR" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "127.0.0.1" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "SERVER_PORT" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "9001" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "SERVER_NAME" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "localhost" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "REDIRECT_STATUS" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "200" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "SCRIPT_FILENAME" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script var: "./blobs" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http script copy: "/ginxsom.fcgi" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI0YmMwYzlhODQ3NGJlNzFhZGZjZDc3Yzk4NzE3MjljMGFlNzcxMzNkMDgyZDc4NDAwZjdmMGRmODI5MmY0NWFkIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjgzMzIsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI0NjI3MjI1ZDQ4YjA0OGJiOTA1YzFkYTJkOTQxNmNkZTJiYWU2MTU5MDNiNTJiZTRhMjBkNmQ2MGMwNWE4MDIzIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMTkzMiJdXSwiY29udGVudCI6IiIsInNpZyI6IjRhZDhiZTkzMjc5MzkxYWY3Y2ZlNWJiYjFmOWIyODE3NzQzOWUyOGNkODMxY2QyMzNjZjkwN2IwNWM2YzZiOTdjYjgxYmJjZTE2NWNmZjE4ZWY0Y2I1NTk1MWVmY2U3ZTZkMjYwMWI0Yjk5ZjcxMWRhYjU5YWU2MjQ2NGQ3YzU0In0=" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755628332.txt"" +2025/08/19 14:32:12 [debug] 450062#450062: *11 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http cleanup add: 00005CC70FEC3B70 +2025/08/19 14:32:12 [debug] 450062#450062: *11 get rr peer, try: 1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 stream socket 10 +2025/08/19 14:32:12 [debug] 450062#450062: *11 epoll add connection: fd:10 ev:80002005 +2025/08/19 14:32:12 [debug] 450062#450062: *11 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #12 +2025/08/19 14:32:12 [debug] 450062#450062: *11 connected +2025/08/19 14:32:12 [debug] 450062#450062: *11 http upstream connect: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 posix_memalign: 00005CC70FE96F20:128 @16 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http upstream send request +2025/08/19 14:32:12 [debug] 450062#450062: *11 http upstream send request body +2025/08/19 14:32:12 [debug] 450062#450062: *11 chain writer buf fl:0 s:1304 +2025/08/19 14:32:12 [debug] 450062#450062: *11 chain writer buf fl:0 s:184 +2025/08/19 14:32:12 [debug] 450062#450062: *11 chain writer buf fl:0 s:8 +2025/08/19 14:32:12 [debug] 450062#450062: *11 chain writer buf fl:0 s:112 +2025/08/19 14:32:12 [debug] 450062#450062: *11 chain writer buf fl:0 s:8 +2025/08/19 14:32:12 [debug] 450062#450062: *11 chain writer in: 00005CC70FEC3C00 +2025/08/19 14:32:12 [debug] 450062#450062: *11 writev: 1616 of 1616 +2025/08/19 14:32:12 [debug] 450062#450062: *11 chain writer out: 0000000000000000 +2025/08/19 14:32:12 [debug] 450062#450062: *11 event timer add: 10: 60000:195125705 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http request count:2 blk:0 +2025/08/19 14:32:12 [debug] 450062#450062: timer delta: 1 +2025/08/19 14:32:12 [debug] 450062#450062: worker cycle +2025/08/19 14:32:12 [debug] 450062#450062: epoll timer: 60000 +2025/08/19 14:32:12 [debug] 450062#450062: epoll: fd:6 ev:0004 d:00007723057C51E1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http run request: "/upload?" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http upstream check client, write event:1, "/upload" +2025/08/19 14:32:12 [debug] 450062#450062: epoll: fd:10 ev:0004 d:00007723057C52C9 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http upstream request: "/upload?" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http upstream dummy handler +2025/08/19 14:32:12 [debug] 450062#450062: timer delta: 1 +2025/08/19 14:32:12 [debug] 450062#450062: worker cycle +2025/08/19 14:32:12 [debug] 450062#450062: epoll timer: 59999 +2025/08/19 14:32:12 [debug] 450062#450062: epoll: fd:10 ev:2005 d:00007723057C52C9 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http upstream request: "/upload?" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http upstream process header +2025/08/19 14:32:12 [debug] 450062#450062: *11 malloc: 00005CC70FEB8150:4096 +2025/08/19 14:32:12 [debug] 450062#450062: *11 recv: eof:1, avail:-1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 recv: fd:10 3504 of 4096 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 01 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 06 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 00 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 01 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 0D +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 8A +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 06 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 00 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record length: 3466 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "LOG: [2025-08-19 14:32:12] PUT /upload - Auth: pending - Status: 0" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI0YmMwYzlhODQ3NGJlNzFhZGZjZDc3Yzk4NzE3MjljMGFlNzcxMzNkMDgyZDc4NDAwZjdmMGRmODI5MmY0NWFkIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjgzMzIsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI0NjI3MjI1ZDQ4YjA0OGJiOTA1YzFkYTJkOTQxNmNkZTJiYWU2MTU5MDNiNTJiZTRhMjBkNmQ2MGMwNWE4MDIzIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMTkzMiJdXSwiY29udGVudCI6IiIsInNpZyI6IjRhZDhiZTkzMjc5MzkxYWY3Y2ZlNWJiYjFmOWIyODE3NzQzOWUyOGNkODMxY2QyMzNjZjkwN2IwNWM2YzZiOTdjYjgxYmJjZTE2NWNmZjE4ZWY0Y2I1NTk1MWVmY2U3ZTZkMjYwMWI0Yjk5ZjcxMWRhYjU5YWU2MjQ2NGQ3YzU0In0=" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "LOG: [2025-08-19 14:32:12] PUT /upload - Auth: auth_provided - Status: 0" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: Successfully read DEBUG: Calculated SHA-256: 4627225d48b048bb905c1da2d9416cde2bae615903b52be4a20d6d60c05a8023" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: authenticate_request_with_rules called - method: upload, file_hash: 4627225d48b048bb905c1da2d9416cde2bae615903b52be4a20d6d60c05a8023, mime_type: text/plain, file_size: 296" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: Authorization header provided, starting basic nostr authentication" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: authenticate_request ENTRY - method: upload, hash: 4627225d48b048bb905c1da2d9416cde2bae615903b52be4a20d6d60c05a8023" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: authenticate_request - calling parse_authorization_header" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: parse_authorization_header called with header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI0YmMwYzlhODQ3NGJl..." +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: Extracted base64 event (length=DEBUG: Base64 decode result - decoded_len=DEBUG: Successfully decoded JSON (length=DEBUG: authenticate_request - parse_authorization_header succeeded" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 posix_memalign: 00005CC70FEB9160:4096 @16 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: authenticate_request - calling cJSON_Parse on: {"kind":24242,"id":"4bc0c9a8474be71adfcd77c9871729c0ae77133d082d78400f7f0df8292f45ad","pubkey":"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","created_at":1755628332,"tags":[["t","upload"],["x","4627225d48b048bb905c1da2d9416cde2bae615903b52be4a20d6d60c05a8023"],["expiration","1755631932"]],"content":"","sig":"4ad8be93279391af7cfe5bbb1f9b28177439e28cd831cd233cf907b05c6c6b97cb81bbce165cff18ef4cb55951efce7e6d2601b4b99f711dab59ae62464d7c54"}" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: authenticate_request - cJSON_Parse succeeded, event parsed" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: authenticate_request - Event fields before validation:" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: id: 4bc0c9a8474be71adfcd77c9871729c0ae77133d082d78400f7f0df8292f45ad" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: pubkey: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: sig: 4ad8be93279391af7cfe5bbb1f9b28177439e28cd831cd233cf907b05c6c6b97cb81bbce165cff18ef4cb55951efce7e6d2601b4b99f711dab59ae62464d7c54" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: kind: 24242" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: created_at: 1755628332" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: authenticate_request - calling nostr_validate_event" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: authenticate_request - nostr_validate_event returned: -32" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: authenticate_request - Nostr event validation FAILED: -32 (Event has invalid public key)" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "DEBUG: authenticate_request - Pubkey length: DEBUG: Basic nostr authentication failed: -32 (Event has invalid public key)" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "Status: 401 Unauthorized" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header: "Content-Type: application/json" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi parser: 1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi header done +2025/08/19 14:32:12 [debug] 450062#450062: *11 posix_memalign: 00005CC70FEBA170:4096 @16 +2025/08/19 14:32:12 [debug] 450062#450062: *11 HTTP/1.1 401 Unauthorized +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:32:12 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 +LOG: [2025-08-19 14:32:12] PUT /upload - Auth: pending - Status: 0 +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI0YmMwYzlhODQ3NGJlNzFhZGZjZDc3Yzk4NzE3MjljMGFlNzcxMzNkMDgyZDc4NDAwZjdmMGRmODI5MmY0NWFkIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjgzMzIsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCI0NjI3MjI1ZDQ4YjA0OGJiOTA1YzFkYTJkOTQxNmNkZTJiYWU2MTU5MDNiNTJiZTRhMjBkNmQ2MGMwNWE4MDIzIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMTkzMiJdXSwiY29udGVudCI6IiIsInNpZyI6IjRhZDhiZTkzMjc5MzkxYWY3Y2ZlNWJiYjFmOWIyODE3NzQzOWUyOGNkODMxY2QyMzNjZjkwN2IwNWM2YzZiOTdjYjgxYmJjZTE2NWNmZjE4ZWY0Y2I1NTk1MWVmY2U3ZTZkMjYwMWI0Yjk5ZjcxMWRhYjU5YWU2MjQ2NGQ3YzU0In0= +LOG: [2025-08-19 14:32:12] PUT /upload - Auth: auth_provided - Status: 0 +DEBUG: Successfully read DEBUG: Calculated SHA-256: 4627225d48b048bb905c1da2d9416cde2bae615903b52be4a20d6d60c05a8023 +DEBUG: authenticate_request_with_rules called - method: upload, file_hash: 4627225d48b048bb905c1da2d9416cde2bae615903b52be4a20d6d60c05a8023, mime_type: text/plain, file_size: 296 +DEBUG: Authorization header provided, starting basic nostr authentication +DEBUG: authenticate_request ENTRY - method: upload, hash: 4627225d48b048bb905c1da2d9416cde2bae615903b52be4a20d6d60c05a8023 +DEBUG: authenticate_request - calling parse_authorization_header +DEBUG: parse_authorization_header called with header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI0YmMwYzlhODQ3NGJl... +DEBUG: Extracted base64 event (length=DEBUG: Base64 decode result - decoded_len=DEBUG: Successfully decoded JSON (length=DEBUG: authenticate_request - parse_authorization_header succeeded + +2025/08/19 14:32:12 [debug] 450062#450062: *11 write new buf t:1 f:0 00005CC70FEBA190, pos 00005CC70FEBA190, size: 3346 file: 0, size: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http write filter: l:0 f:0 s:3346 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http write filter limit 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 writev: 3346 of 3346 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http write filter 0000000000000000 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http cacheable: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http upstream process upstream +2025/08/19 14:32:12 [debug] 450062#450062: *11 pipe read upstream: 1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 pipe preread: 261 +2025/08/19 14:32:12 [debug] 450062#450062: *11 readv: eof:1, avail:0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 readv: 1, last:592 +2025/08/19 14:32:12 [debug] 450062#450062: *11 pipe recv chain: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 pipe buf free s:0 t:1 f:0 00005CC70FEB8150, pos 00005CC70FEB8DFB, size: 261 file: 0, size: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 pipe length: -1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 input buf #0 00005CC70FEB8DFB +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 01 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 06 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 00 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 01 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 00 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 00 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 00 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 00 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record length: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi closed stdout +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 01 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 03 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 00 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 01 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 00 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 08 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 00 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record byte: 00 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi record length: 8 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http fastcgi sent end request +2025/08/19 14:32:12 [debug] 450062#450062: *11 input buf 00005CC70FEB8DFB 231 +2025/08/19 14:32:12 [debug] 450062#450062: *11 pipe write downstream: 1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 pipe write downstream flush in +2025/08/19 14:32:12 [debug] 450062#450062: *11 http output filter "/upload?" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http copy filter: "/upload?" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http postpone filter "/upload?" 00005CC70FEC3BE0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http chunk: 231 +2025/08/19 14:32:12 [debug] 450062#450062: *11 write new buf t:1 f:0 00005CC70FEB9FB0, pos 00005CC70FEB9FB0, size: 4 file: 0, size: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 write new buf t:1 f:0 00005CC70FEB8150, pos 00005CC70FEB8DFB, size: 231 file: 0, size: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 write new buf t:0 f:0 0000000000000000, pos 00005CC705DB02E8, size: 2 file: 0, size: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http write filter: l:0 f:0 s:237 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http copy filter: 0 "/upload?" +2025/08/19 14:32:12 [debug] 450062#450062: *11 pipe write downstream done +2025/08/19 14:32:12 [debug] 450062#450062: *11 event timer: 10, old: 195125705, new: 195125707 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http upstream exit: 0000000000000000 +2025/08/19 14:32:12 [debug] 450062#450062: *11 finalize http upstream request: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 finalize http fastcgi request +2025/08/19 14:32:12 [debug] 450062#450062: *11 free rr peer 1 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 close http upstream connection: 10 +2025/08/19 14:32:12 [debug] 450062#450062: *11 free: 00005CC70FE96F20, unused: 48 +2025/08/19 14:32:12 [debug] 450062#450062: *11 event timer del: 10: 195125705 +2025/08/19 14:32:12 [debug] 450062#450062: *11 reusable connection: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http upstream temp fd: -1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http output filter "/upload?" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http copy filter: "/upload?" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http postpone filter "/upload?" 00007FFED8297450 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http chunk: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 write old buf t:1 f:0 00005CC70FEB9FB0, pos 00005CC70FEB9FB0, size: 4 file: 0, size: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 write old buf t:1 f:0 00005CC70FEB8150, pos 00005CC70FEB8DFB, size: 231 file: 0, size: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 write old buf t:0 f:0 0000000000000000, pos 00005CC705DB02E8, size: 2 file: 0, size: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 write new buf t:0 f:0 0000000000000000, pos 00005CC705DB02E5, size: 5 file: 0, size: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http write filter: l:1 f:0 s:242 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http write filter limit 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 writev: 242 of 242 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http write filter 0000000000000000 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http copy filter: 0 "/upload?" +2025/08/19 14:32:12 [debug] 450062#450062: *11 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 set http keepalive handler +2025/08/19 14:32:12 [debug] 450062#450062: *11 http close request +2025/08/19 14:32:12 [debug] 450062#450062: *11 http log handler +2025/08/19 14:32:12 [debug] 450062#450062: *11 free: 00005CC70FEB8150 +2025/08/19 14:32:12 [debug] 450062#450062: *11 free: 00005CC70FECCA20, unused: 3 +2025/08/19 14:32:12 [debug] 450062#450062: *11 free: 00005CC70FEC2D90, unused: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 free: 00005CC70FEB7140, unused: 7 +2025/08/19 14:32:12 [debug] 450062#450062: *11 free: 00005CC70FEB9160, unused: 42 +2025/08/19 14:32:12 [debug] 450062#450062: *11 free: 00005CC70FEBA170, unused: 718 +2025/08/19 14:32:12 [debug] 450062#450062: *11 free: 00005CC70FEB00A0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 hc free: 0000000000000000 +2025/08/19 14:32:12 [debug] 450062#450062: *11 hc busy: 0000000000000000 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 tcp_nodelay +2025/08/19 14:32:12 [debug] 450062#450062: *11 reusable connection: 1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 event timer add: 6: 65000:195130707 +2025/08/19 14:32:12 [debug] 450062#450062: *11 post event 00005CC70FEFE760 +2025/08/19 14:32:12 [debug] 450062#450062: timer delta: 1 +2025/08/19 14:32:12 [debug] 450062#450062: posted event 00005CC70FEFE760 +2025/08/19 14:32:12 [debug] 450062#450062: *11 delete posted event 00005CC70FEFE760 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http keepalive handler +2025/08/19 14:32:12 [debug] 450062#450062: *11 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:32:12 [debug] 450062#450062: *11 recv: eof:0, avail:0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 free: 00005CC70FEB00A0 +2025/08/19 14:32:12 [debug] 450062#450062: worker cycle +2025/08/19 14:32:12 [debug] 450062#450062: epoll timer: 65000 +2025/08/19 14:32:12 [debug] 450062#450062: epoll: fd:6 ev:2005 d:00007723057C51E1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 http keepalive handler +2025/08/19 14:32:12 [debug] 450062#450062: *11 malloc: 00005CC70FEB00A0:1024 +2025/08/19 14:32:12 [debug] 450062#450062: *11 recv: eof:1, avail:-1 +2025/08/19 14:32:12 [debug] 450062#450062: *11 recv: fd:6 0 of 1024 +2025/08/19 14:32:12 [info] 450062#450062: *11 client 127.0.0.1 closed keepalive connection +2025/08/19 14:32:12 [debug] 450062#450062: *11 close http connection: 6 +2025/08/19 14:32:12 [debug] 450062#450062: *11 event timer del: 6: 195130707 +2025/08/19 14:32:12 [debug] 450062#450062: *11 reusable connection: 0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 free: 00005CC70FEB00A0 +2025/08/19 14:32:12 [debug] 450062#450062: *11 free: 00005CC70FEAD840, unused: 120 +2025/08/19 14:32:12 [debug] 450062#450062: timer delta: 2 +2025/08/19 14:32:12 [debug] 450062#450062: worker cycle +2025/08/19 14:32:12 [debug] 450062#450062: epoll timer: -1 +2025/08/19 14:36:53 [notice] 450061#450061: signal 15 (SIGTERM) received from 448740, exiting +2025/08/19 14:36:53 [debug] 450061#450061: wake up, sigio 0 +2025/08/19 14:36:53 [debug] 450061#450061: child: 0 450062 e:0 t:0 d:0 r:1 j:0 +2025/08/19 14:36:53 [debug] 450061#450061: termination cycle: 50 +2025/08/19 14:36:53 [debug] 450061#450061: sigsuspend +2025/08/19 14:36:53 [debug] 450062#450062: epoll: fd:7 ev:0001 d:00007723057C50F8 +2025/08/19 14:36:53 [debug] 450062#450062: channel handler +2025/08/19 14:36:53 [debug] 450062#450062: channel: 32 +2025/08/19 14:36:53 [debug] 450062#450062: channel command: 4 +2025/08/19 14:36:53 [debug] 450062#450062: channel: -2 +2025/08/19 14:36:53 [debug] 450062#450062: timer delta: 280452 +2025/08/19 14:36:53 [notice] 450062#450062: exiting +2025/08/19 14:36:53 [debug] 450062#450062: flush files +2025/08/19 14:36:53 [debug] 450062#450062: run cleanup: 00005CC70FEFBA70 +2025/08/19 14:36:53 [debug] 450062#450062: run cleanup: 00005CC70FEEEA08 +2025/08/19 14:36:53 [debug] 450062#450062: cleanup resolver +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEFCDD0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEEFBD0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FECEB40 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FECDA30 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEC7A00 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEC6940 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEC5880 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEC47C0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEBC160 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEB3130, unused: 0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEBD570, unused: 0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEC8A10, unused: 0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FECFB50, unused: 0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FED3B60, unused: 0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FED7B70, unused: 0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEDBB80, unused: 0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEDFB90, unused: 0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEE3BA0, unused: 0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEE7BB0, unused: 0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEEBBC0, unused: 0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEF0DA0, unused: 0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEF4DB0, unused: 0 +2025/08/19 14:36:53 [debug] 450062#450062: free: 00005CC70FEF8DC0, unused: 4920 +2025/08/19 14:36:53 [notice] 450062#450062: exit +2025/08/19 14:36:53 [notice] 450061#450061: signal 17 (SIGCHLD) received from 450062 +2025/08/19 14:36:53 [notice] 450061#450061: worker process 450062 exited with code 0 +2025/08/19 14:36:53 [debug] 450061#450061: shmtx forced unlock +2025/08/19 14:36:53 [debug] 450061#450061: wake up, sigio 3 +2025/08/19 14:36:53 [debug] 450061#450061: reap children +2025/08/19 14:36:53 [debug] 450061#450061: child: 0 450062 e:1 t:1 d:0 r:1 j:0 +2025/08/19 14:36:53 [notice] 450061#450061: exit +2025/08/19 14:36:53 [debug] 450061#450061: close listening 0.0.0.0:9001 #5 +2025/08/19 14:36:53 [debug] 450061#450061: run cleanup: 00005CC70FEEEA08 +2025/08/19 14:36:53 [debug] 450061#450061: cleanup resolver +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEFCDD0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEEFBD0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FECEB40 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FECDA30 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEC7A00 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEC6940 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEC5880 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEC47C0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEBC160 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEB3130, unused: 0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEBD570, unused: 0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEC8A10, unused: 0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FECFB50, unused: 0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FED3B60, unused: 0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FED7B70, unused: 0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEDBB80, unused: 0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEDFB90, unused: 0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEE3BA0, unused: 0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEE7BB0, unused: 0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEEBBC0, unused: 0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEF0DA0, unused: 0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEF4DB0, unused: 0 +2025/08/19 14:36:53 [debug] 450061#450061: free: 00005CC70FEF8DC0, unused: 4951 +2025/08/19 14:37:11 [debug] 452755#452755: bind() 0.0.0.0:9001 #5 +2025/08/19 14:37:11 [notice] 452755#452755: using the "epoll" event method +2025/08/19 14:37:11 [debug] 452755#452755: counter: 0000777B58EA6080, 1 +2025/08/19 14:37:11 [notice] 452755#452755: nginx/1.18.0 (Ubuntu) +2025/08/19 14:37:11 [notice] 452755#452755: OS: Linux 6.12.10-76061203-generic +2025/08/19 14:37:11 [notice] 452755#452755: getrlimit(RLIMIT_NOFILE): 1048576:1048576 +2025/08/19 14:37:11 [debug] 452756#452755: write: 6, 00007FFF46F55520, 7, 0 +2025/08/19 14:37:11 [debug] 452756#452756: setproctitle: "nginx: master process nginx -p . -c config/local-nginx.conf" +2025/08/19 14:37:11 [notice] 452756#452756: start worker processes +2025/08/19 14:37:11 [debug] 452756#452756: channel 6:7 +2025/08/19 14:37:11 [notice] 452756#452756: start worker process 452757 +2025/08/19 14:37:11 [debug] 452756#452756: sigsuspend +2025/08/19 14:37:11 [debug] 452757#452757: add cleanup: 000059FC17C43A70 +2025/08/19 14:37:11 [debug] 452757#452757: malloc: 000059FC17BF6BD0:8 +2025/08/19 14:37:11 [debug] 452757#452757: notify eventfd: 9 +2025/08/19 14:37:11 [debug] 452757#452757: testing the EPOLLRDHUP flag: success +2025/08/19 14:37:11 [debug] 452757#452757: malloc: 000059FC17C09580:6144 +2025/08/19 14:37:11 [debug] 452757#452757: malloc: 0000777B58C9E010:237568 +2025/08/19 14:37:11 [debug] 452757#452757: malloc: 000059FC17C466A0:98304 +2025/08/19 14:37:11 [debug] 452757#452757: malloc: 000059FC17C5E6B0:98304 +2025/08/19 14:37:11 [debug] 452757#452757: epoll add event: fd:5 op:1 ev:00002001 +2025/08/19 14:37:11 [debug] 452757#452757: epoll add event: fd:7 op:1 ev:00002001 +2025/08/19 14:37:11 [debug] 452757#452757: setproctitle: "nginx: worker process" +2025/08/19 14:37:11 [debug] 452757#452757: worker cycle +2025/08/19 14:37:11 [debug] 452757#452757: epoll timer: -1 +2025/08/19 14:37:30 [debug] 452757#452757: epoll: fd:5 ev:0001 d:0000777B58C9E010 +2025/08/19 14:37:30 [debug] 452757#452757: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:37:30 [debug] 452757#452757: posix_memalign: 000059FC17BF5840:512 @16 +2025/08/19 14:37:30 [debug] 452757#452757: *1 accept: 127.0.0.1:42508 fd:6 +2025/08/19 14:37:30 [debug] 452757#452757: *1 event timer add: 6: 60000:195443958 +2025/08/19 14:37:30 [debug] 452757#452757: *1 reusable connection: 1 +2025/08/19 14:37:30 [debug] 452757#452757: *1 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:37:30 [debug] 452757#452757: timer delta: 18906 +2025/08/19 14:37:30 [debug] 452757#452757: worker cycle +2025/08/19 14:37:30 [debug] 452757#452757: epoll timer: 60000 +2025/08/19 14:37:30 [debug] 452757#452757: epoll: fd:6 ev:0001 d:0000777B58C9E1E0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http wait request handler +2025/08/19 14:37:30 [debug] 452757#452757: *1 malloc: 000059FC17BF80A0:1024 +2025/08/19 14:37:30 [debug] 452757#452757: *1 recv: eof:0, avail:-1 +2025/08/19 14:37:30 [debug] 452757#452757: *1 recv: fd:6 1024 of 1024 +2025/08/19 14:37:30 [debug] 452757#452757: *1 recv: avail:112 +2025/08/19 14:37:30 [debug] 452757#452757: *1 reusable connection: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 posix_memalign: 000059FC17C14A20:4096 @16 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http process request line +2025/08/19 14:37:30 [debug] 452757#452757: *1 http request line: "PUT /upload HTTP/1.1" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http uri: "/upload" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http args: "" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http exten: "" +2025/08/19 14:37:30 [debug] 452757#452757: *1 posix_memalign: 000059FC17C0AD90:4096 @16 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http process request header line +2025/08/19 14:37:30 [debug] 452757#452757: *1 http header: "Host: localhost:9001" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http header: "Accept: */*" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI2NWUyNjY1YWY5OThhMzk4NjIwMmY2Mzc2YjIyYWVhMzFiYjYzODdmZjM1Yzc1N2VmYTBkYjJlNWE3YjhiZTNhIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2Mjg2NTAsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJmNDQxN2M2YzU2N2M4NmFhNjBkZjJkZDVkYjllZWQ1NWZkOTlmMjZlNGFkYjU1ZmI4ZGM0MjUyYTdmMmYxMGJhIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMjI1MCJdXSwiY29udGVudCI6IiIsInNpZyI6IjJjZGU1ZjVjMWE3YjY4MmYxMTAyMGY3OTAyNzI5OTEzY2Q3ZmIwODA2NTVkM2ZhMTYyMjU1M2YzZWYxN2M2YTljNDA3ZjcxYjZlNzgxMWQ3OWQ2MjAxN2JjOTRiYTM2MGQyYzM5ZWIwN2E0NWRjZjI1ZmZjODVkY2JjMTJlMGE5In0=" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http header: "Content-Type: text/plain" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http header: "Content-Disposition: attachment; filename="test_blob_1755628650.txt"" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http header: "Content-Length: 296" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http header done +2025/08/19 14:37:30 [debug] 452757#452757: *1 event timer del: 6: 195443958 +2025/08/19 14:37:30 [debug] 452757#452757: *1 generic phase: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 rewrite phase: 1 +2025/08/19 14:37:30 [debug] 452757#452757: *1 test location: "/health" +2025/08/19 14:37:30 [debug] 452757#452757: *1 test location: "/upload" +2025/08/19 14:37:30 [debug] 452757#452757: *1 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:37:30 [debug] 452757#452757: *1 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 14:37:30 [debug] 452757#452757: *1 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 14:37:30 [debug] 452757#452757: *1 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 14:37:30 [debug] 452757#452757: *1 using configuration "/upload" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http cl:296 max:104857600 +2025/08/19 14:37:30 [debug] 452757#452757: *1 rewrite phase: 3 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "PUT" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script regex: "^(PUT)$" +2025/08/19 14:37:30 [notice] 452757#452757: *1 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script if +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script if: false +2025/08/19 14:37:30 [debug] 452757#452757: *1 post rewrite phase: 4 +2025/08/19 14:37:30 [debug] 452757#452757: *1 generic phase: 5 +2025/08/19 14:37:30 [debug] 452757#452757: *1 generic phase: 6 +2025/08/19 14:37:30 [debug] 452757#452757: *1 generic phase: 7 +2025/08/19 14:37:30 [debug] 452757#452757: *1 access phase: 8 +2025/08/19 14:37:30 [debug] 452757#452757: *1 access phase: 9 +2025/08/19 14:37:30 [debug] 452757#452757: *1 access phase: 10 +2025/08/19 14:37:30 [debug] 452757#452757: *1 post access phase: 11 +2025/08/19 14:37:30 [debug] 452757#452757: *1 generic phase: 12 +2025/08/19 14:37:30 [debug] 452757#452757: *1 generic phase: 13 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http client request body preread 184 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http request body content length filter +2025/08/19 14:37:30 [debug] 452757#452757: *1 http body new buf t:1 f:0 000059FC17BF83E8, pos 000059FC17BF83E8, size: 184 file: 0, size: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http read client request body +2025/08/19 14:37:30 [debug] 452757#452757: *1 recv: eof:0, avail:112 +2025/08/19 14:37:30 [debug] 452757#452757: *1 recv: fd:6 112 of 112 +2025/08/19 14:37:30 [debug] 452757#452757: *1 recv: avail:0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http client request body recv 112 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http body new buf t:1 f:0 000059FC17C0B820, pos 000059FC17C0B820, size: 112 file: 0, size: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http client request body rest 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http init upstream, client timer: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 14:37:30 [debug] 452757#452757: *1 posix_memalign: 000059FC17BFF140:4096 @16 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "QUERY_STRING" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "QUERY_STRING: " +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "REQUEST_METHOD" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "PUT" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "CONTENT_TYPE" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "text/plain" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "CONTENT_LENGTH" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "296" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "SCRIPT_NAME" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "/upload" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "REQUEST_URI" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "/upload" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "DOCUMENT_URI" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "/upload" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "DOCUMENT_ROOT" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "./blobs" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "SERVER_PROTOCOL" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "HTTP/1.1" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "REQUEST_SCHEME" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "http" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "GATEWAY_INTERFACE" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "CGI/1.1" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "SERVER_SOFTWARE" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "nginx/" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "1.18.0" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "REMOTE_ADDR" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "127.0.0.1" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "REMOTE_PORT" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "42508" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "REMOTE_PORT: 42508" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "SERVER_ADDR" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "127.0.0.1" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "SERVER_PORT" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "9001" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "SERVER_NAME" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "localhost" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "REDIRECT_STATUS" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "200" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "SCRIPT_FILENAME" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script var: "./blobs" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http script copy: "/ginxsom.fcgi" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI2NWUyNjY1YWY5OThhMzk4NjIwMmY2Mzc2YjIyYWVhMzFiYjYzODdmZjM1Yzc1N2VmYTBkYjJlNWE3YjhiZTNhIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2Mjg2NTAsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJmNDQxN2M2YzU2N2M4NmFhNjBkZjJkZDVkYjllZWQ1NWZkOTlmMjZlNGFkYjU1ZmI4ZGM0MjUyYTdmMmYxMGJhIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMjI1MCJdXSwiY29udGVudCI6IiIsInNpZyI6IjJjZGU1ZjVjMWE3YjY4MmYxMTAyMGY3OTAyNzI5OTEzY2Q3ZmIwODA2NTVkM2ZhMTYyMjU1M2YzZWYxN2M2YTljNDA3ZjcxYjZlNzgxMWQ3OWQ2MjAxN2JjOTRiYTM2MGQyYzM5ZWIwN2E0NWRjZjI1ZmZjODVkY2JjMTJlMGE5In0=" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755628650.txt"" +2025/08/19 14:37:30 [debug] 452757#452757: *1 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http cleanup add: 000059FC17C0BB70 +2025/08/19 14:37:30 [debug] 452757#452757: *1 get rr peer, try: 1 +2025/08/19 14:37:30 [debug] 452757#452757: *1 stream socket 10 +2025/08/19 14:37:30 [debug] 452757#452757: *1 epoll add connection: fd:10 ev:80002005 +2025/08/19 14:37:30 [debug] 452757#452757: *1 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #2 +2025/08/19 14:37:30 [debug] 452757#452757: *1 connected +2025/08/19 14:37:30 [debug] 452757#452757: *1 http upstream connect: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 posix_memalign: 000059FC17BDEF20:128 @16 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http upstream send request +2025/08/19 14:37:30 [debug] 452757#452757: *1 http upstream send request body +2025/08/19 14:37:30 [debug] 452757#452757: *1 chain writer buf fl:0 s:1304 +2025/08/19 14:37:30 [debug] 452757#452757: *1 chain writer buf fl:0 s:184 +2025/08/19 14:37:30 [debug] 452757#452757: *1 chain writer buf fl:0 s:8 +2025/08/19 14:37:30 [debug] 452757#452757: *1 chain writer buf fl:0 s:112 +2025/08/19 14:37:30 [debug] 452757#452757: *1 chain writer buf fl:0 s:8 +2025/08/19 14:37:30 [debug] 452757#452757: *1 chain writer in: 000059FC17C0BC00 +2025/08/19 14:37:30 [debug] 452757#452757: *1 writev: 1616 of 1616 +2025/08/19 14:37:30 [debug] 452757#452757: *1 chain writer out: 0000000000000000 +2025/08/19 14:37:30 [debug] 452757#452757: *1 event timer add: 10: 60000:195443958 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http request count:2 blk:0 +2025/08/19 14:37:30 [debug] 452757#452757: timer delta: 0 +2025/08/19 14:37:30 [debug] 452757#452757: worker cycle +2025/08/19 14:37:30 [debug] 452757#452757: epoll timer: 60000 +2025/08/19 14:37:30 [debug] 452757#452757: epoll: fd:6 ev:0004 d:0000777B58C9E1E0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http run request: "/upload?" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http upstream check client, write event:1, "/upload" +2025/08/19 14:37:30 [debug] 452757#452757: epoll: fd:10 ev:0004 d:0000777B58C9E2C8 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http upstream request: "/upload?" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http upstream dummy handler +2025/08/19 14:37:30 [debug] 452757#452757: timer delta: 3 +2025/08/19 14:37:30 [debug] 452757#452757: worker cycle +2025/08/19 14:37:30 [debug] 452757#452757: epoll timer: 59997 +2025/08/19 14:37:30 [debug] 452757#452757: epoll: fd:10 ev:2005 d:0000777B58C9E2C8 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http upstream request: "/upload?" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http upstream process header +2025/08/19 14:37:30 [debug] 452757#452757: *1 malloc: 000059FC17C00150:4096 +2025/08/19 14:37:30 [debug] 452757#452757: *1 recv: eof:1, avail:-1 +2025/08/19 14:37:30 [debug] 452757#452757: *1 recv: fd:10 3832 of 4096 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 01 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 06 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 00 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 01 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 0E +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: D5 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 03 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 00 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record length: 3797 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "LOG: [2025-08-19 14:37:30] PUT /upload - Auth: pending - Status: 0" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI2NWUyNjY1YWY5OThhMzk4NjIwMmY2Mzc2YjIyYWVhMzFiYjYzODdmZjM1Yzc1N2VmYTBkYjJlNWE3YjhiZTNhIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2Mjg2NTAsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJmNDQxN2M2YzU2N2M4NmFhNjBkZjJkZDVkYjllZWQ1NWZkOTlmMjZlNGFkYjU1ZmI4ZGM0MjUyYTdmMmYxMGJhIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMjI1MCJdXSwiY29udGVudCI6IiIsInNpZyI6IjJjZGU1ZjVjMWE3YjY4MmYxMTAyMGY3OTAyNzI5OTEzY2Q3ZmIwODA2NTVkM2ZhMTYyMjU1M2YzZWYxN2M2YTljNDA3ZjcxYjZlNzgxMWQ3OWQ2MjAxN2JjOTRiYTM2MGQyYzM5ZWIwN2E0NWRjZjI1ZmZjODVkY2JjMTJlMGE5In0=" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "LOG: [2025-08-19 14:37:30] PUT /upload - Auth: auth_provided - Status: 0" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: Successfully read DEBUG: Calculated SHA-256: f4417c6c567c86aa60df2dd5db9eed55fd99f26e4adb55fb8dc4252a7f2f10ba" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: authenticate_request_with_rules called - method: upload, file_hash: f4417c6c567c86aa60df2dd5db9eed55fd99f26e4adb55fb8dc4252a7f2f10ba, mime_type: text/plain, file_size: 296" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: Authorization header provided, starting basic nostr authentication" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: authenticate_request ENTRY - method: upload, hash: f4417c6c567c86aa60df2dd5db9eed55fd99f26e4adb55fb8dc4252a7f2f10ba" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: authenticate_request - calling parse_authorization_header" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: parse_authorization_header called with header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI2NWUyNjY1YWY5OThh..." +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: Extracted base64 event (length=DEBUG: Base64 decode result - decoded_len=DEBUG: Successfully decoded JSON (length=DEBUG: authenticate_request - parse_authorization_header succeeded" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 posix_memalign: 000059FC17C01160:4096 @16 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: authenticate_request - calling cJSON_Parse on: {"kind":24242,"id":"65e2665af998a3986202f6376b22aea31bb6387ff35c757efa0db2e5a7b8be3a","pubkey":"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","created_at":1755628650,"tags":[["t","upload"],["x","f4417c6c567c86aa60df2dd5db9eed55fd99f26e4adb55fb8dc4252a7f2f10ba"],["expiration","1755632250"]],"content":"","sig":"2cde5f5c1a7b682f11020f7902729913cd7fb080655d3fa1622553f3ef17c6a9c407f71b6e7811d79d62017bc94ba360d2c39eb07a45dcf25ffc85dcbc12e0a9"}" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: authenticate_request - cJSON_Parse succeeded, event parsed" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: authenticate_request - Event fields before validation:" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: id: 65e2665af998a3986202f6376b22aea31bb6387ff35c757efa0db2e5a7b8be3a" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: pubkey: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: sig: 2cde5f5c1a7b682f11020f7902729913cd7fb080655d3fa1622553f3ef17c6a9c407f71b6e7811d79d62017bc94ba360d2c39eb07a45dcf25ffc85dcbc12e0a9" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: kind: 24242" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: created_at: 1755628650" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: authenticate_request - calling nostr_validate_event" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: authenticate_request - Pre-validation pubkey analysis:" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: Pubkey: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: Length: DEBUG: Character analysis (first 10): 7(55) 9(57) b(98) e(101) 6(54) 6(54) 7(55) e(101) f(102) 9(57)" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: Character validation test: ALL VALID (lowercase hex)" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: authenticate_request - nostr_validate_event returned: -32" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: authenticate_request - Nostr event validation FAILED: -32 (Event has invalid public key)" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "DEBUG: authenticate_request - Pubkey length: DEBUG: Basic nostr authentication failed: -32 (Event has invalid public key)" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "Status: 401 Unauthorized" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header: "Content-Type: application/json" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi parser: 1 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi header done +2025/08/19 14:37:30 [debug] 452757#452757: *1 posix_memalign: 000059FC17C02170:4096 @16 +2025/08/19 14:37:30 [debug] 452757#452757: *1 HTTP/1.1 401 Unauthorized +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:37:30 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 +LOG: [2025-08-19 14:37:30] PUT /upload - Auth: pending - Status: 0 +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI2NWUyNjY1YWY5OThhMzk4NjIwMmY2Mzc2YjIyYWVhMzFiYjYzODdmZjM1Yzc1N2VmYTBkYjJlNWE3YjhiZTNhIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2Mjg2NTAsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJmNDQxN2M2YzU2N2M4NmFhNjBkZjJkZDVkYjllZWQ1NWZkOTlmMjZlNGFkYjU1ZmI4ZGM0MjUyYTdmMmYxMGJhIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMjI1MCJdXSwiY29udGVudCI6IiIsInNpZyI6IjJjZGU1ZjVjMWE3YjY4MmYxMTAyMGY3OTAyNzI5OTEzY2Q3ZmIwODA2NTVkM2ZhMTYyMjU1M2YzZWYxN2M2YTljNDA3ZjcxYjZlNzgxMWQ3OWQ2MjAxN2JjOTRiYTM2MGQyYzM5ZWIwN2E0NWRjZjI1ZmZjODVkY2JjMTJlMGE5In0= +LOG: [2025-08-19 14:37:30] PUT /upload - Auth: auth_provided - Status: 0 +DEBUG: Successfully read DEBUG: Calculated SHA-256: f4417c6c567c86aa60df2dd5db9eed55fd99f26e4adb55fb8dc4252a7f2f10ba +DEBUG: authenticate_request_with_rules called - method: upload, file_hash: f4417c6c567c86aa60df2dd5db9eed55fd99f26e4adb55fb8dc4252a7f2f10ba, mime_type: text/plain, file_size: 296 +DEBUG: Authorization header provided, starting basic nostr authentication +DEBUG: authenticate_request ENTRY - method: upload, hash: f4417c6c567c86aa60df2dd5db9eed55fd99f26e4adb55fb8dc4252a7f2f10ba +DEBUG: authenticate_request - calling parse_authorization_header +DEBUG: parse_authorization_header called with header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiI2NWUyNjY1YWY5OThh... +DEBUG: Extracted base64 event (length=DEBUG: Base64 decode result - decoded_len=DEBUG: Successfully decoded JSON (length=DEBUG: authenticate_request - parse_authorization_header succeeded +D +2025/08/19 14:37:30 [debug] 452757#452757: *1 write new buf t:1 f:0 000059FC17C02190, pos 000059FC17C02190, size: 3670 file: 0, size: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http write filter: l:0 f:0 s:3670 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http write filter limit 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 writev: 3670 of 3670 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http write filter 0000000000000000 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http cacheable: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http upstream process upstream +2025/08/19 14:37:30 [debug] 452757#452757: *1 pipe read upstream: 1 +2025/08/19 14:37:30 [debug] 452757#452757: *1 pipe preread: 258 +2025/08/19 14:37:30 [debug] 452757#452757: *1 readv: eof:1, avail:0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 readv: 1, last:264 +2025/08/19 14:37:30 [debug] 452757#452757: *1 pipe recv chain: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 pipe buf free s:0 t:1 f:0 000059FC17C00150, pos 000059FC17C00F46, size: 258 file: 0, size: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 pipe length: -1 +2025/08/19 14:37:30 [debug] 452757#452757: *1 input buf #0 000059FC17C00F46 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 01 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 06 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 00 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 01 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 00 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 00 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 00 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 00 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record length: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi closed stdout +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 01 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 03 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 00 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 01 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 00 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 08 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 00 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record byte: 00 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi record length: 8 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http fastcgi sent end request +2025/08/19 14:37:30 [debug] 452757#452757: *1 input buf 000059FC17C00F46 231 +2025/08/19 14:37:30 [debug] 452757#452757: *1 pipe write downstream: 1 +2025/08/19 14:37:30 [debug] 452757#452757: *1 pipe write downstream flush in +2025/08/19 14:37:30 [debug] 452757#452757: *1 http output filter "/upload?" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http copy filter: "/upload?" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http postpone filter "/upload?" 000059FC17C0BBE0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http chunk: 231 +2025/08/19 14:37:30 [debug] 452757#452757: *1 posix_memalign: 000059FC17C766C0:4096 @16 +2025/08/19 14:37:30 [debug] 452757#452757: *1 write new buf t:1 f:0 000059FC17C02138, pos 000059FC17C02138, size: 4 file: 0, size: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 write new buf t:1 f:0 000059FC17C00150, pos 000059FC17C00F46, size: 231 file: 0, size: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 write new buf t:0 f:0 0000000000000000, pos 000059FC0A92D2E8, size: 2 file: 0, size: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http write filter: l:0 f:0 s:237 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http copy filter: 0 "/upload?" +2025/08/19 14:37:30 [debug] 452757#452757: *1 pipe write downstream done +2025/08/19 14:37:30 [debug] 452757#452757: *1 event timer: 10, old: 195443958, new: 195443961 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http upstream exit: 0000000000000000 +2025/08/19 14:37:30 [debug] 452757#452757: *1 finalize http upstream request: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 finalize http fastcgi request +2025/08/19 14:37:30 [debug] 452757#452757: *1 free rr peer 1 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 close http upstream connection: 10 +2025/08/19 14:37:30 [debug] 452757#452757: *1 free: 000059FC17BDEF20, unused: 48 +2025/08/19 14:37:30 [debug] 452757#452757: *1 event timer del: 10: 195443958 +2025/08/19 14:37:30 [debug] 452757#452757: *1 reusable connection: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http upstream temp fd: -1 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http output filter "/upload?" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http copy filter: "/upload?" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http postpone filter "/upload?" 00007FFF46F55160 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http chunk: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 write old buf t:1 f:0 000059FC17C02138, pos 000059FC17C02138, size: 4 file: 0, size: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 write old buf t:1 f:0 000059FC17C00150, pos 000059FC17C00F46, size: 231 file: 0, size: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 write old buf t:0 f:0 0000000000000000, pos 000059FC0A92D2E8, size: 2 file: 0, size: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 write new buf t:0 f:0 0000000000000000, pos 000059FC0A92D2E5, size: 5 file: 0, size: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http write filter: l:1 f:0 s:242 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http write filter limit 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 writev: 242 of 242 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http write filter 0000000000000000 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http copy filter: 0 "/upload?" +2025/08/19 14:37:30 [debug] 452757#452757: *1 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 14:37:30 [debug] 452757#452757: *1 set http keepalive handler +2025/08/19 14:37:30 [debug] 452757#452757: *1 http close request +2025/08/19 14:37:30 [debug] 452757#452757: *1 http log handler +2025/08/19 14:37:30 [debug] 452757#452757: *1 free: 000059FC17C00150 +2025/08/19 14:37:30 [debug] 452757#452757: *1 free: 000059FC17C14A20, unused: 3 +2025/08/19 14:37:30 [debug] 452757#452757: *1 free: 000059FC17C0AD90, unused: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 free: 000059FC17BFF140, unused: 7 +2025/08/19 14:37:30 [debug] 452757#452757: *1 free: 000059FC17C01160, unused: 22 +2025/08/19 14:37:30 [debug] 452757#452757: *1 free: 000059FC17C02170, unused: 32 +2025/08/19 14:37:30 [debug] 452757#452757: *1 free: 000059FC17C766C0, unused: 3698 +2025/08/19 14:37:30 [debug] 452757#452757: *1 free: 000059FC17BF80A0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 hc free: 0000000000000000 +2025/08/19 14:37:30 [debug] 452757#452757: *1 hc busy: 0000000000000000 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 tcp_nodelay +2025/08/19 14:37:30 [debug] 452757#452757: *1 reusable connection: 1 +2025/08/19 14:37:30 [debug] 452757#452757: *1 event timer add: 6: 65000:195448961 +2025/08/19 14:37:30 [debug] 452757#452757: *1 post event 000059FC17C46760 +2025/08/19 14:37:30 [debug] 452757#452757: timer delta: 0 +2025/08/19 14:37:30 [debug] 452757#452757: posted event 000059FC17C46760 +2025/08/19 14:37:30 [debug] 452757#452757: *1 delete posted event 000059FC17C46760 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http keepalive handler +2025/08/19 14:37:30 [debug] 452757#452757: *1 malloc: 000059FC17BF80A0:1024 +2025/08/19 14:37:30 [debug] 452757#452757: *1 recv: eof:0, avail:0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 free: 000059FC17BF80A0 +2025/08/19 14:37:30 [debug] 452757#452757: worker cycle +2025/08/19 14:37:30 [debug] 452757#452757: epoll timer: 65000 +2025/08/19 14:37:30 [debug] 452757#452757: epoll: fd:6 ev:2005 d:0000777B58C9E1E0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 http keepalive handler +2025/08/19 14:37:30 [debug] 452757#452757: *1 malloc: 000059FC17BF80A0:1024 +2025/08/19 14:37:30 [debug] 452757#452757: *1 recv: eof:1, avail:-1 +2025/08/19 14:37:30 [debug] 452757#452757: *1 recv: fd:6 0 of 1024 +2025/08/19 14:37:30 [info] 452757#452757: *1 client 127.0.0.1 closed keepalive connection +2025/08/19 14:37:30 [debug] 452757#452757: *1 close http connection: 6 +2025/08/19 14:37:30 [debug] 452757#452757: *1 event timer del: 6: 195448961 +2025/08/19 14:37:30 [debug] 452757#452757: *1 reusable connection: 0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 free: 000059FC17BF80A0 +2025/08/19 14:37:30 [debug] 452757#452757: *1 free: 000059FC17BF5840, unused: 120 +2025/08/19 14:37:30 [debug] 452757#452757: timer delta: 2 +2025/08/19 14:37:30 [debug] 452757#452757: worker cycle +2025/08/19 14:37:30 [debug] 452757#452757: epoll timer: -1 +2025/08/19 14:46:27 [notice] 452757#452757: signal 15 (SIGTERM) received from 448740, exiting +2025/08/19 14:46:27 [info] 452757#452757: epoll_wait() failed (4: Interrupted system call) +2025/08/19 14:46:27 [debug] 452757#452757: timer delta: 536699 +2025/08/19 14:46:27 [notice] 452757#452757: exiting +2025/08/19 14:46:27 [debug] 452757#452757: flush files +2025/08/19 14:46:27 [debug] 452757#452757: run cleanup: 000059FC17C43A70 +2025/08/19 14:46:27 [debug] 452757#452757: run cleanup: 000059FC17C36A08 +2025/08/19 14:46:27 [debug] 452757#452757: cleanup resolver +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C44DD0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C37BD0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C16B40 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C15A30 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C0FA00 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C0E940 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C0D880 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C0C7C0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C04160 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17BFB130, unused: 0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C05570, unused: 0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C10A10, unused: 0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C17B50, unused: 0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C1BB60, unused: 0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C1FB70, unused: 0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C23B80, unused: 0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C27B90, unused: 0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C2BBA0, unused: 0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C2FBB0, unused: 0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C33BC0, unused: 0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C38DA0, unused: 0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C3CDB0, unused: 0 +2025/08/19 14:46:27 [debug] 452757#452757: free: 000059FC17C40DC0, unused: 4920 +2025/08/19 14:46:27 [notice] 452757#452757: exit +2025/08/19 14:46:27 [notice] 452756#452756: signal 17 (SIGCHLD) received from 452757 +2025/08/19 14:46:27 [notice] 452756#452756: worker process 452757 exited with code 0 +2025/08/19 14:46:27 [debug] 452756#452756: shmtx forced unlock +2025/08/19 14:46:27 [debug] 452756#452756: wake up, sigio 0 +2025/08/19 14:46:27 [debug] 452756#452756: reap children +2025/08/19 14:46:27 [debug] 452756#452756: child: 0 452757 e:0 t:1 d:0 r:1 j:0 +2025/08/19 14:46:27 [debug] 452756#452756: channel 6:7 +2025/08/19 14:46:27 [notice] 452756#452756: start worker process 454229 +2025/08/19 14:46:27 [debug] 452756#452756: sigsuspend +2025/08/19 14:46:27 [debug] 454229#454229: add cleanup: 000059FC17C43A70 +2025/08/19 14:46:27 [debug] 454229#454229: malloc: 000059FC17BF6BD0:8 +2025/08/19 14:46:27 [debug] 454229#454229: notify eventfd: 9 +2025/08/19 14:46:27 [debug] 454229#454229: testing the EPOLLRDHUP flag: success +2025/08/19 14:46:27 [debug] 454229#454229: malloc: 000059FC17C09580:6144 +2025/08/19 14:46:27 [debug] 454229#454229: malloc: 0000777B58C9E010:237568 +2025/08/19 14:46:27 [debug] 454229#454229: malloc: 000059FC17C466A0:98304 +2025/08/19 14:46:27 [debug] 454229#454229: malloc: 000059FC17C5E6B0:98304 +2025/08/19 14:46:27 [debug] 454229#454229: epoll add event: fd:5 op:1 ev:00002001 +2025/08/19 14:46:27 [debug] 454229#454229: epoll add event: fd:7 op:1 ev:00002001 +2025/08/19 14:46:27 [debug] 454229#454229: setproctitle: "nginx: worker process" +2025/08/19 14:46:27 [debug] 454229#454229: worker cycle +2025/08/19 14:46:27 [debug] 454229#454229: epoll timer: -1 +2025/08/19 14:46:32 [notice] 454229#454229: signal 15 (SIGTERM) received from 448740, exiting +2025/08/19 14:46:32 [info] 454229#454229: epoll_wait() failed (4: Interrupted system call) +2025/08/19 14:46:32 [debug] 454229#454229: timer delta: 5214 +2025/08/19 14:46:32 [notice] 454229#454229: exiting +2025/08/19 14:46:32 [debug] 454229#454229: flush files +2025/08/19 14:46:32 [debug] 454229#454229: run cleanup: 000059FC17C43A70 +2025/08/19 14:46:32 [debug] 454229#454229: run cleanup: 000059FC17C36A08 +2025/08/19 14:46:32 [debug] 454229#454229: cleanup resolver +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C44DD0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C37BD0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C16B40 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C15A30 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C0FA00 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C0E940 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C0D880 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C0C7C0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C04160 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17BFB130, unused: 0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C05570, unused: 0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C10A10, unused: 0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C17B50, unused: 0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C1BB60, unused: 0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C1FB70, unused: 0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C23B80, unused: 0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C27B90, unused: 0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C2BBA0, unused: 0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C2FBB0, unused: 0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C33BC0, unused: 0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C38DA0, unused: 0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C3CDB0, unused: 0 +2025/08/19 14:46:32 [debug] 454229#454229: free: 000059FC17C40DC0, unused: 4920 +2025/08/19 14:46:32 [notice] 454229#454229: exit +2025/08/19 14:46:32 [notice] 452756#452756: signal 17 (SIGCHLD) received from 454229 +2025/08/19 14:46:32 [notice] 452756#452756: worker process 454229 exited with code 0 +2025/08/19 14:46:32 [debug] 452756#452756: shmtx forced unlock +2025/08/19 14:46:32 [debug] 452756#452756: wake up, sigio 0 +2025/08/19 14:46:32 [debug] 452756#452756: reap children +2025/08/19 14:46:32 [debug] 452756#452756: child: 0 454229 e:0 t:1 d:0 r:1 j:0 +2025/08/19 14:46:32 [debug] 452756#452756: channel 6:7 +2025/08/19 14:46:32 [notice] 452756#452756: start worker process 454231 +2025/08/19 14:46:32 [debug] 452756#452756: sigsuspend +2025/08/19 14:46:32 [debug] 454231#454231: add cleanup: 000059FC17C43A70 +2025/08/19 14:46:32 [debug] 454231#454231: malloc: 000059FC17BF6BD0:8 +2025/08/19 14:46:32 [debug] 454231#454231: notify eventfd: 9 +2025/08/19 14:46:32 [debug] 454231#454231: testing the EPOLLRDHUP flag: success +2025/08/19 14:46:32 [debug] 454231#454231: malloc: 000059FC17C09580:6144 +2025/08/19 14:46:32 [debug] 454231#454231: malloc: 0000777B58C9E010:237568 +2025/08/19 14:46:32 [debug] 454231#454231: malloc: 000059FC17C466A0:98304 +2025/08/19 14:46:32 [debug] 454231#454231: malloc: 000059FC17C5E6B0:98304 +2025/08/19 14:46:32 [debug] 454231#454231: epoll add event: fd:5 op:1 ev:00002001 +2025/08/19 14:46:32 [debug] 454231#454231: epoll add event: fd:7 op:1 ev:00002001 +2025/08/19 14:46:32 [debug] 454231#454231: setproctitle: "nginx: worker process" +2025/08/19 14:46:32 [debug] 454231#454231: worker cycle +2025/08/19 14:46:32 [debug] 454231#454231: epoll timer: -1 +2025/08/19 14:46:36 [notice] 452756#452756: signal 15 (SIGTERM) received from 448740, exiting +2025/08/19 14:46:36 [debug] 452756#452756: wake up, sigio 0 +2025/08/19 14:46:36 [debug] 452756#452756: child: 0 454231 e:0 t:0 d:0 r:1 j:0 +2025/08/19 14:46:36 [debug] 452756#452756: termination cycle: 50 +2025/08/19 14:46:36 [debug] 452756#452756: sigsuspend +2025/08/19 14:46:36 [debug] 454231#454231: epoll: fd:7 ev:0001 d:0000777B58C9E0F8 +2025/08/19 14:46:36 [debug] 454231#454231: channel handler +2025/08/19 14:46:36 [debug] 454231#454231: channel: 32 +2025/08/19 14:46:36 [debug] 454231#454231: channel command: 4 +2025/08/19 14:46:36 [debug] 454231#454231: channel: -2 +2025/08/19 14:46:36 [debug] 454231#454231: timer delta: 4032 +2025/08/19 14:46:36 [notice] 454231#454231: exiting +2025/08/19 14:46:36 [debug] 454231#454231: flush files +2025/08/19 14:46:36 [debug] 454231#454231: run cleanup: 000059FC17C43A70 +2025/08/19 14:46:36 [debug] 454231#454231: run cleanup: 000059FC17C36A08 +2025/08/19 14:46:36 [debug] 454231#454231: cleanup resolver +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C44DD0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C37BD0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C16B40 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C15A30 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C0FA00 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C0E940 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C0D880 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C0C7C0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C04160 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17BFB130, unused: 0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C05570, unused: 0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C10A10, unused: 0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C17B50, unused: 0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C1BB60, unused: 0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C1FB70, unused: 0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C23B80, unused: 0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C27B90, unused: 0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C2BBA0, unused: 0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C2FBB0, unused: 0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C33BC0, unused: 0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C38DA0, unused: 0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C3CDB0, unused: 0 +2025/08/19 14:46:36 [debug] 454231#454231: free: 000059FC17C40DC0, unused: 4920 +2025/08/19 14:46:36 [notice] 454231#454231: exit +2025/08/19 14:46:36 [notice] 452756#452756: signal 17 (SIGCHLD) received from 454231 +2025/08/19 14:46:36 [notice] 452756#452756: worker process 454231 exited with code 0 +2025/08/19 14:46:36 [debug] 452756#452756: shmtx forced unlock +2025/08/19 14:46:36 [debug] 452756#452756: wake up, sigio 3 +2025/08/19 14:46:36 [debug] 452756#452756: reap children +2025/08/19 14:46:36 [debug] 452756#452756: child: 0 454231 e:1 t:1 d:0 r:1 j:0 +2025/08/19 14:46:36 [notice] 452756#452756: exit +2025/08/19 14:46:36 [debug] 452756#452756: close listening 0.0.0.0:9001 #5 +2025/08/19 14:46:36 [debug] 452756#452756: run cleanup: 000059FC17C36A08 +2025/08/19 14:46:36 [debug] 452756#452756: cleanup resolver +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C44DD0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C37BD0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C16B40 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C15A30 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C0FA00 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C0E940 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C0D880 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C0C7C0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C04160 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17BFB130, unused: 0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C05570, unused: 0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C10A10, unused: 0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C17B50, unused: 0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C1BB60, unused: 0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C1FB70, unused: 0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C23B80, unused: 0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C27B90, unused: 0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C2BBA0, unused: 0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C2FBB0, unused: 0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C33BC0, unused: 0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C38DA0, unused: 0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C3CDB0, unused: 0 +2025/08/19 14:46:36 [debug] 452756#452756: free: 000059FC17C40DC0, unused: 4951 +2025/08/19 14:46:59 [debug] 454274#454274: bind() 0.0.0.0:9001 #5 +2025/08/19 14:46:59 [notice] 454274#454274: using the "epoll" event method +2025/08/19 14:46:59 [debug] 454274#454274: counter: 0000709450FB5080, 1 +2025/08/19 14:46:59 [notice] 454274#454274: nginx/1.18.0 (Ubuntu) +2025/08/19 14:46:59 [notice] 454274#454274: OS: Linux 6.12.10-76061203-generic +2025/08/19 14:46:59 [notice] 454274#454274: getrlimit(RLIMIT_NOFILE): 1048576:1048576 +2025/08/19 14:46:59 [debug] 454275#454274: write: 6, 00007FFC8B2B28E0, 7, 0 +2025/08/19 14:46:59 [debug] 454275#454275: setproctitle: "nginx: master process nginx -p . -c config/local-nginx.conf" +2025/08/19 14:46:59 [notice] 454275#454275: start worker processes +2025/08/19 14:46:59 [debug] 454275#454275: channel 6:7 +2025/08/19 14:46:59 [notice] 454275#454275: start worker process 454276 +2025/08/19 14:46:59 [debug] 454275#454275: sigsuspend +2025/08/19 14:46:59 [debug] 454276#454276: add cleanup: 0000605875C79A70 +2025/08/19 14:46:59 [debug] 454276#454276: malloc: 0000605875C2CBD0:8 +2025/08/19 14:46:59 [debug] 454276#454276: notify eventfd: 9 +2025/08/19 14:46:59 [debug] 454276#454276: testing the EPOLLRDHUP flag: success +2025/08/19 14:46:59 [debug] 454276#454276: malloc: 0000605875C3F580:6144 +2025/08/19 14:46:59 [debug] 454276#454276: malloc: 0000709450DAD010:237568 +2025/08/19 14:46:59 [debug] 454276#454276: malloc: 0000605875C7C6A0:98304 +2025/08/19 14:46:59 [debug] 454276#454276: malloc: 0000605875C946B0:98304 +2025/08/19 14:46:59 [debug] 454276#454276: epoll add event: fd:5 op:1 ev:00002001 +2025/08/19 14:46:59 [debug] 454276#454276: epoll add event: fd:7 op:1 ev:00002001 +2025/08/19 14:46:59 [debug] 454276#454276: setproctitle: "nginx: worker process" +2025/08/19 14:46:59 [debug] 454276#454276: worker cycle +2025/08/19 14:46:59 [debug] 454276#454276: epoll timer: -1 +2025/08/19 14:47:34 [debug] 454276#454276: epoll: fd:5 ev:0001 d:0000709450DAD010 +2025/08/19 14:47:34 [debug] 454276#454276: accept on 0.0.0.0:9001, ready: 0 +2025/08/19 14:47:34 [debug] 454276#454276: posix_memalign: 0000605875C2B840:512 @16 +2025/08/19 14:47:34 [debug] 454276#454276: *1 accept: 127.0.0.1:36870 fd:6 +2025/08/19 14:47:34 [debug] 454276#454276: *1 event timer add: 6: 60000:196047134 +2025/08/19 14:47:34 [debug] 454276#454276: *1 reusable connection: 1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 epoll add event: fd:6 op:1 ev:80002001 +2025/08/19 14:47:34 [debug] 454276#454276: timer delta: 34551 +2025/08/19 14:47:34 [debug] 454276#454276: worker cycle +2025/08/19 14:47:34 [debug] 454276#454276: epoll timer: 60000 +2025/08/19 14:47:34 [debug] 454276#454276: epoll: fd:6 ev:0001 d:0000709450DAD1E0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http wait request handler +2025/08/19 14:47:34 [debug] 454276#454276: *1 malloc: 0000605875C2E0A0:1024 +2025/08/19 14:47:34 [debug] 454276#454276: *1 recv: eof:0, avail:-1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 recv: fd:6 1024 of 1024 +2025/08/19 14:47:34 [debug] 454276#454276: *1 recv: avail:112 +2025/08/19 14:47:34 [debug] 454276#454276: *1 reusable connection: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 posix_memalign: 0000605875C4AA20:4096 @16 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http process request line +2025/08/19 14:47:34 [debug] 454276#454276: *1 http request line: "PUT /upload HTTP/1.1" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http uri: "/upload" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http args: "" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http exten: "" +2025/08/19 14:47:34 [debug] 454276#454276: *1 posix_memalign: 0000605875C40D90:4096 @16 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http process request header line +2025/08/19 14:47:34 [debug] 454276#454276: *1 http header: "Host: localhost:9001" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http header: "User-Agent: curl/8.15.0" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http header: "Accept: */*" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http header: "Authorization: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIxOTViZjNkOGY5ZjhjNTgzYWM2YWIzYTk3YzBhNjE4YzlkM2QyODY4ZWM4MzU0NDFkNzM5NTBlYzQ5ZjAzMjVlIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjkyNTMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJmZTcxOGI3MjI5NWVlYmMwZDlkYzZlM2Y5MTQzYjY5MDA4YjE3MDZmMjI0YzczZTk4YzNkZDFmMmVmNDQ5NDExIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMjg1MyJdXSwiY29udGVudCI6IiIsInNpZyI6IjY0M2ViNzMxMjIxZjMxNmY1NGU2OWM2NjkzOThmMDg4YzQwNTBkZmNlNDMwZGJjODJkNWRhNDUxZDVkMDkyNTgzNTQ2MzkyMmE0N2M2ZmRmOWQ3NjllY2I4YzAwNWQ0YjE1NGUyMWQwOTNkZDE4Y2Q1YTk4M2YyY2MxOThiMWIxIn0=" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http header: "Content-Type: text/plain" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http header: "Content-Disposition: attachment; filename="test_blob_1755629253.txt"" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http header: "Content-Length: 296" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http header done +2025/08/19 14:47:34 [debug] 454276#454276: *1 event timer del: 6: 196047134 +2025/08/19 14:47:34 [debug] 454276#454276: *1 generic phase: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 rewrite phase: 1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 test location: "/health" +2025/08/19 14:47:34 [debug] 454276#454276: *1 test location: "/upload" +2025/08/19 14:47:34 [debug] 454276#454276: *1 test location: ~ "^/([a-f0-9]{64}).*$" +2025/08/19 14:47:34 [debug] 454276#454276: *1 test location: ~ "^/([a-f0-9]{64})(\.[a-zA-Z0-9]+)?$" +2025/08/19 14:47:34 [debug] 454276#454276: *1 test location: ~ "^/fcgi-head/([a-f0-9]{64}).*$" +2025/08/19 14:47:34 [debug] 454276#454276: *1 test location: ~ "^/list/([a-f0-9]{64}).*$" +2025/08/19 14:47:34 [debug] 454276#454276: *1 using configuration "/upload" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http cl:296 max:104857600 +2025/08/19 14:47:34 [debug] 454276#454276: *1 rewrite phase: 3 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "PUT" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script regex: "^(PUT)$" +2025/08/19 14:47:34 [notice] 454276#454276: *1 "^(PUT)$" matches "PUT", client: 127.0.0.1, server: localhost, request: "PUT /upload HTTP/1.1", host: "localhost:9001" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script if +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script if: false +2025/08/19 14:47:34 [debug] 454276#454276: *1 post rewrite phase: 4 +2025/08/19 14:47:34 [debug] 454276#454276: *1 generic phase: 5 +2025/08/19 14:47:34 [debug] 454276#454276: *1 generic phase: 6 +2025/08/19 14:47:34 [debug] 454276#454276: *1 generic phase: 7 +2025/08/19 14:47:34 [debug] 454276#454276: *1 access phase: 8 +2025/08/19 14:47:34 [debug] 454276#454276: *1 access phase: 9 +2025/08/19 14:47:34 [debug] 454276#454276: *1 access phase: 10 +2025/08/19 14:47:34 [debug] 454276#454276: *1 post access phase: 11 +2025/08/19 14:47:34 [debug] 454276#454276: *1 generic phase: 12 +2025/08/19 14:47:34 [debug] 454276#454276: *1 generic phase: 13 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http client request body preread 184 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http request body content length filter +2025/08/19 14:47:34 [debug] 454276#454276: *1 http body new buf t:1 f:0 0000605875C2E3E8, pos 0000605875C2E3E8, size: 184 file: 0, size: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http read client request body +2025/08/19 14:47:34 [debug] 454276#454276: *1 recv: eof:0, avail:112 +2025/08/19 14:47:34 [debug] 454276#454276: *1 recv: fd:6 112 of 112 +2025/08/19 14:47:34 [debug] 454276#454276: *1 recv: avail:0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http client request body recv 112 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http body new buf t:1 f:0 0000605875C41820, pos 0000605875C41820, size: 112 file: 0, size: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http client request body rest 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http init upstream, client timer: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 epoll add event: fd:6 op:3 ev:80002005 +2025/08/19 14:47:34 [debug] 454276#454276: *1 posix_memalign: 0000605875C35140:4096 @16 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "QUERY_STRING" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "QUERY_STRING: " +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "REQUEST_METHOD" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "PUT" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "REQUEST_METHOD: PUT" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "CONTENT_TYPE" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "text/plain" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "CONTENT_TYPE: text/plain" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "CONTENT_LENGTH" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "296" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "CONTENT_LENGTH: 296" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "SCRIPT_NAME" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "/upload" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "SCRIPT_NAME: /upload" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "REQUEST_URI" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "/upload" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "REQUEST_URI: /upload" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "DOCUMENT_URI" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "/upload" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "DOCUMENT_URI: /upload" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "DOCUMENT_ROOT" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "./blobs" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "DOCUMENT_ROOT: ./blobs" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "SERVER_PROTOCOL" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "HTTP/1.1" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "SERVER_PROTOCOL: HTTP/1.1" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "REQUEST_SCHEME" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "http" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "REQUEST_SCHEME: http" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "GATEWAY_INTERFACE" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "CGI/1.1" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "GATEWAY_INTERFACE: CGI/1.1" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "SERVER_SOFTWARE" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "nginx/" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "1.18.0" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "SERVER_SOFTWARE: nginx/1.18.0" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "REMOTE_ADDR" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "127.0.0.1" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "REMOTE_ADDR: 127.0.0.1" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "REMOTE_PORT" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "36870" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "REMOTE_PORT: 36870" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "SERVER_ADDR" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "127.0.0.1" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "SERVER_ADDR: 127.0.0.1" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "SERVER_PORT" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "9001" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "SERVER_PORT: 9001" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "SERVER_NAME" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "localhost" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "SERVER_NAME: localhost" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "REDIRECT_STATUS" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "200" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "REDIRECT_STATUS: 200" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "SCRIPT_FILENAME" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script var: "./blobs" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http script copy: "/ginxsom.fcgi" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "SCRIPT_FILENAME: ./blobs/ginxsom.fcgi" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "HTTP_HOST: localhost:9001" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "HTTP_USER_AGENT: curl/8.15.0" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "HTTP_ACCEPT: */*" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "HTTP_AUTHORIZATION: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIxOTViZjNkOGY5ZjhjNTgzYWM2YWIzYTk3YzBhNjE4YzlkM2QyODY4ZWM4MzU0NDFkNzM5NTBlYzQ5ZjAzMjVlIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjkyNTMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJmZTcxOGI3MjI5NWVlYmMwZDlkYzZlM2Y5MTQzYjY5MDA4YjE3MDZmMjI0YzczZTk4YzNkZDFmMmVmNDQ5NDExIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMjg1MyJdXSwiY29udGVudCI6IiIsInNpZyI6IjY0M2ViNzMxMjIxZjMxNmY1NGU2OWM2NjkzOThmMDg4YzQwNTBkZmNlNDMwZGJjODJkNWRhNDUxZDVkMDkyNTgzNTQ2MzkyMmE0N2M2ZmRmOWQ3NjllY2I4YzAwNWQ0YjE1NGUyMWQwOTNkZDE4Y2Q1YTk4M2YyY2MxOThiMWIxIn0=" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "HTTP_CONTENT_TYPE: text/plain" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "HTTP_CONTENT_DISPOSITION: attachment; filename="test_blob_1755629253.txt"" +2025/08/19 14:47:34 [debug] 454276#454276: *1 fastcgi param: "HTTP_CONTENT_LENGTH: 296" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http cleanup add: 0000605875C41B70 +2025/08/19 14:47:34 [debug] 454276#454276: *1 get rr peer, try: 1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 stream socket 10 +2025/08/19 14:47:34 [debug] 454276#454276: *1 epoll add connection: fd:10 ev:80002005 +2025/08/19 14:47:34 [debug] 454276#454276: *1 connect to unix:/tmp/ginxsom-fcgi.sock, fd:10 #2 +2025/08/19 14:47:34 [debug] 454276#454276: *1 connected +2025/08/19 14:47:34 [debug] 454276#454276: *1 http upstream connect: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 posix_memalign: 0000605875C14F20:128 @16 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http upstream send request +2025/08/19 14:47:34 [debug] 454276#454276: *1 http upstream send request body +2025/08/19 14:47:34 [debug] 454276#454276: *1 chain writer buf fl:0 s:1304 +2025/08/19 14:47:34 [debug] 454276#454276: *1 chain writer buf fl:0 s:184 +2025/08/19 14:47:34 [debug] 454276#454276: *1 chain writer buf fl:0 s:8 +2025/08/19 14:47:34 [debug] 454276#454276: *1 chain writer buf fl:0 s:112 +2025/08/19 14:47:34 [debug] 454276#454276: *1 chain writer buf fl:0 s:8 +2025/08/19 14:47:34 [debug] 454276#454276: *1 chain writer in: 0000605875C41C00 +2025/08/19 14:47:34 [debug] 454276#454276: *1 writev: 1616 of 1616 +2025/08/19 14:47:34 [debug] 454276#454276: *1 chain writer out: 0000000000000000 +2025/08/19 14:47:34 [debug] 454276#454276: *1 event timer add: 10: 60000:196047134 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http finalize request: -4, "/upload?" a:1, c:2 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http request count:2 blk:0 +2025/08/19 14:47:34 [debug] 454276#454276: timer delta: 0 +2025/08/19 14:47:34 [debug] 454276#454276: worker cycle +2025/08/19 14:47:34 [debug] 454276#454276: epoll timer: 60000 +2025/08/19 14:47:34 [debug] 454276#454276: epoll: fd:6 ev:0004 d:0000709450DAD1E0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http run request: "/upload?" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http upstream check client, write event:1, "/upload" +2025/08/19 14:47:34 [debug] 454276#454276: epoll: fd:10 ev:0004 d:0000709450DAD2C8 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http upstream request: "/upload?" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http upstream dummy handler +2025/08/19 14:47:34 [debug] 454276#454276: timer delta: 2 +2025/08/19 14:47:34 [debug] 454276#454276: worker cycle +2025/08/19 14:47:34 [debug] 454276#454276: epoll timer: 59998 +2025/08/19 14:47:34 [debug] 454276#454276: epoll: fd:10 ev:2005 d:0000709450DAD2C8 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http upstream request: "/upload?" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http upstream process header +2025/08/19 14:47:34 [debug] 454276#454276: *1 malloc: 0000605875C36150:4096 +2025/08/19 14:47:34 [debug] 454276#454276: *1 recv: eof:1, avail:-1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 recv: fd:10 3480 of 4096 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 01 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 06 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 00 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 01 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 0D +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 76 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 02 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 00 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record length: 3446 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: FastCGI received request" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: METHOD=PUT, URI=/upload" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: handle_upload_request called" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "LOG: [2025-08-19 14:47:34] PUT /upload - Auth: pending - Status: 0" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: content_type=text/plain" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: content_length=296" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIxOTViZjNkOGY5ZjhjNTgzYWM2YWIzYTk3YzBhNjE4YzlkM2QyODY4ZWM4MzU0NDFkNzM5NTBlYzQ5ZjAzMjVlIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjkyNTMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJmZTcxOGI3MjI5NWVlYmMwZDlkYzZlM2Y5MTQzYjY5MDA4YjE3MDZmMjI0YzczZTk4YzNkZDFmMmVmNDQ5NDExIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMjg1MyJdXSwiY29udGVudCI6IiIsInNpZyI6IjY0M2ViNzMxMjIxZjMxNmY1NGU2OWM2NjkzOThmMDg4YzQwNTBkZmNlNDMwZGJjODJkNWRhNDUxZDVkMDkyNTgzNTQ2MzkyMmE0N2M2ZmRmOWQ3NjllY2I4YzAwNWQ0YjE1NGUyMWQwOTNkZDE4Y2Q1YTk4M2YyY2MxOThiMWIxIn0=" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "LOG: [2025-08-19 14:47:34] PUT /upload - Auth: auth_provided - Status: 0" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: Successfully read DEBUG: Calculated SHA-256: fe718b72295eebc0d9dc6e3f9143b69008b1706f224c73e98c3dd1f2ef449411" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: authenticate_request ENTRY - method: upload, hash: fe718b72295eebc0d9dc6e3f9143b69008b1706f224c73e98c3dd1f2ef449411" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: authenticate_request - calling parse_authorization_header" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: parse_authorization_header called with header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIxOTViZjNkOGY5Zjhj..." +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: Extracted base64 event (length=DEBUG: Base64 decode result - decoded_len=DEBUG: Successfully decoded JSON (length=DEBUG: authenticate_request - parse_authorization_header succeeded" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: authenticate_request - calling cJSON_Parse on: {"kind":24242,"id":"195bf3d8f9f8c583ac6ab3a97c0a618c9d3d2868ec835441d73950ec49f0325e","pubkey":"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","created_at":1755629253,"tags":[["t","upload"],["x","fe718b72295eebc0d9dc6e3f9143b69008b1706f224c73e98c3dd1f2ef449411"],["expiration","1755632853"]],"content":"","sig":"643eb731221f316f54e69c669398f088c4050dfce430dbc82d5da451d5d0925835463922a47c6fdf9d769ecb8c005d4b154e21d093dd18cd5a983f2cc198b1b1"}" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 posix_memalign: 0000605875C37160:4096 @16 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: authenticate_request - cJSON_Parse succeeded, event parsed" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: authenticate_request - Event fields before validation:" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: id: 195bf3d8f9f8c583ac6ab3a97c0a618c9d3d2868ec835441d73950ec49f0325e" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: pubkey: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: sig: 643eb731221f316f54e69c669398f088c4050dfce430dbc82d5da451d5d0925835463922a47c6fdf9d769ecb8c005d4b154e21d093dd18cd5a983f2cc198b1b1" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: kind: 24242" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: created_at: 1755629253" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: authenticate_request - calling nostr_validate_event" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: authenticate_request - Pre-validation pubkey analysis:" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: Pubkey: 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: Length: DEBUG: Character analysis (first 10): 7(55) 9(57) b(98) e(101) 6(54) 6(54) 7(55) e(101) f(102) 9(57)" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: Character validation test: ALL VALID (lowercase hex)" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: authenticate_request - nostr_validate_event returned: -32" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: authenticate_request - Nostr event validation FAILED: -32 (Event has invalid public key)" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "DEBUG: authenticate_request - Pubkey length: Status: 401 Unauthorized" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header: "Content-Type: application/json" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi parser: 1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi header done +2025/08/19 14:47:34 [debug] 454276#454276: *1 posix_memalign: 0000605875C38170:4096 @16 +2025/08/19 14:47:34 [debug] 454276#454276: *1 HTTP/1.1 200 OK +Server: nginx/1.18.0 (Ubuntu) +Date: Tue, 19 Aug 2025 18:47:34 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 +LOG: [2025-08-19 14:47:34] PUT /upload - Auth: pending - Status: 0 +DEBUG: content_type=text/plain +DEBUG: content_length=296 +DEBUG: Raw Authorization header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIxOTViZjNkOGY5ZjhjNTgzYWM2YWIzYTk3YzBhNjE4YzlkM2QyODY4ZWM4MzU0NDFkNzM5NTBlYzQ5ZjAzMjVlIiwicHVia2V5IjoiNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OCIsImNyZWF0ZWRfYXQiOjE3NTU2MjkyNTMsInRhZ3MiOltbInQiLCJ1cGxvYWQiXSxbIngiLCJmZTcxOGI3MjI5NWVlYmMwZDlkYzZlM2Y5MTQzYjY5MDA4YjE3MDZmMjI0YzczZTk4YzNkZDFmMmVmNDQ5NDExIl0sWyJleHBpcmF0aW9uIiwiMTc1NTYzMjg1MyJdXSwiY29udGVudCI6IiIsInNpZyI6IjY0M2ViNzMxMjIxZjMxNmY1NGU2OWM2NjkzOThmMDg4YzQwNTBkZmNlNDMwZGJjODJkNWRhNDUxZDVkMDkyNTgzNTQ2MzkyMmE0N2M2ZmRmOWQ3NjllY2I4YzAwNWQ0YjE1NGUyMWQwOTNkZDE4Y2Q1YTk4M2YyY2MxOThiMWIxIn0= +LOG: [2025-08-19 14:47:34] PUT /upload - Auth: auth_provided - Status: 0 +DEBUG: Successfully read DEBUG: Calculated SHA-256: fe718b72295eebc0d9dc6e3f9143b69008b1706f224c73e98c3dd1f2ef449411 +DEBUG: authenticate_request ENTRY - method: upload, hash: fe718b72295eebc0d9dc6e3f9143b69008b1706f224c73e98c3dd1f2ef449411 +DEBUG: authenticate_request - calling parse_authorization_header +DEBUG: parse_authorization_header called with header: Nostr eyJraW5kIjoyNDI0MiwiaWQiOiIxOTViZjNkOGY5Zjhj... +DEBUG: Extracted base64 event (length=DEBUG: Base64 decode result - decoded_len=DEBUG: Successfully decoded JSON (length=DEBUG: authenticate_request - parse_authorization_header succeeded +DEBUG: authenticate_request - calling cJSON_Parse on: {"kind":24242,"id":"195bf3d8f9f8c583ac6ab3a97c0a618c9d3d2868ec835441d73950ec49f0325e","pubkey":"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","created_at":1755629253,"tags":[["t","upload"],["x +2025/08/19 14:47:34 [debug] 454276#454276: *1 write new buf t:1 f:0 0000605875C38190, pos 0000605875C38190, size: 3442 file: 0, size: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http write filter: l:0 f:0 s:3442 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http write filter limit 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 writev: 3442 of 3442 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http write filter 0000000000000000 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http cacheable: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http upstream process upstream +2025/08/19 14:47:34 [debug] 454276#454276: *1 pipe read upstream: 1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 pipe preread: 239 +2025/08/19 14:47:34 [debug] 454276#454276: *1 readv: eof:1, avail:0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 readv: 1, last:616 +2025/08/19 14:47:34 [debug] 454276#454276: *1 pipe recv chain: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 pipe buf free s:0 t:1 f:0 0000605875C36150, pos 0000605875C36DF9, size: 239 file: 0, size: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 pipe length: -1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 input buf #0 0000605875C36DF9 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 01 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 06 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 00 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 01 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 00 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 00 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 00 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 00 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record length: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi closed stdout +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 01 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 03 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 00 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 01 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 00 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 08 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 00 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record byte: 00 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi record length: 8 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http fastcgi sent end request +2025/08/19 14:47:34 [debug] 454276#454276: *1 input buf 0000605875C36DF9 213 +2025/08/19 14:47:34 [debug] 454276#454276: *1 pipe write downstream: 1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 pipe write downstream flush in +2025/08/19 14:47:34 [debug] 454276#454276: *1 http output filter "/upload?" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http copy filter: "/upload?" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http postpone filter "/upload?" 0000605875C41BE0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http chunk: 213 +2025/08/19 14:47:34 [debug] 454276#454276: *1 write new buf t:1 f:0 0000605875C37FA0, pos 0000605875C37FA0, size: 4 file: 0, size: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 write new buf t:1 f:0 0000605875C36150, pos 0000605875C36DF9, size: 213 file: 0, size: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 write new buf t:0 f:0 0000000000000000, pos 00006058374F52E8, size: 2 file: 0, size: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http write filter: l:0 f:0 s:219 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http copy filter: 0 "/upload?" +2025/08/19 14:47:34 [debug] 454276#454276: *1 pipe write downstream done +2025/08/19 14:47:34 [debug] 454276#454276: *1 event timer: 10, old: 196047134, new: 196047136 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http upstream exit: 0000000000000000 +2025/08/19 14:47:34 [debug] 454276#454276: *1 finalize http upstream request: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 finalize http fastcgi request +2025/08/19 14:47:34 [debug] 454276#454276: *1 free rr peer 1 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 close http upstream connection: 10 +2025/08/19 14:47:34 [debug] 454276#454276: *1 free: 0000605875C14F20, unused: 48 +2025/08/19 14:47:34 [debug] 454276#454276: *1 event timer del: 10: 196047134 +2025/08/19 14:47:34 [debug] 454276#454276: *1 reusable connection: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http upstream temp fd: -1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http output filter "/upload?" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http copy filter: "/upload?" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http postpone filter "/upload?" 00007FFC8B2B2520 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http chunk: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 write old buf t:1 f:0 0000605875C37FA0, pos 0000605875C37FA0, size: 4 file: 0, size: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 write old buf t:1 f:0 0000605875C36150, pos 0000605875C36DF9, size: 213 file: 0, size: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 write old buf t:0 f:0 0000000000000000, pos 00006058374F52E8, size: 2 file: 0, size: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 write new buf t:0 f:0 0000000000000000, pos 00006058374F52E5, size: 5 file: 0, size: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http write filter: l:1 f:0 s:224 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http write filter limit 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 writev: 224 of 224 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http write filter 0000000000000000 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http copy filter: 0 "/upload?" +2025/08/19 14:47:34 [debug] 454276#454276: *1 http finalize request: 0, "/upload?" a:1, c:1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 set http keepalive handler +2025/08/19 14:47:34 [debug] 454276#454276: *1 http close request +2025/08/19 14:47:34 [debug] 454276#454276: *1 http log handler +2025/08/19 14:47:34 [debug] 454276#454276: *1 free: 0000605875C36150 +2025/08/19 14:47:34 [debug] 454276#454276: *1 free: 0000605875C4AA20, unused: 3 +2025/08/19 14:47:34 [debug] 454276#454276: *1 free: 0000605875C40D90, unused: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 free: 0000605875C35140, unused: 1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 free: 0000605875C37160, unused: 58 +2025/08/19 14:47:34 [debug] 454276#454276: *1 free: 0000605875C38170, unused: 622 +2025/08/19 14:47:34 [debug] 454276#454276: *1 free: 0000605875C2E0A0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 hc free: 0000000000000000 +2025/08/19 14:47:34 [debug] 454276#454276: *1 hc busy: 0000000000000000 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 tcp_nodelay +2025/08/19 14:47:34 [debug] 454276#454276: *1 reusable connection: 1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 event timer add: 6: 65000:196052136 +2025/08/19 14:47:34 [debug] 454276#454276: *1 post event 0000605875C7C760 +2025/08/19 14:47:34 [debug] 454276#454276: timer delta: 0 +2025/08/19 14:47:34 [debug] 454276#454276: posted event 0000605875C7C760 +2025/08/19 14:47:34 [debug] 454276#454276: *1 delete posted event 0000605875C7C760 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http keepalive handler +2025/08/19 14:47:34 [debug] 454276#454276: *1 malloc: 0000605875C2E0A0:1024 +2025/08/19 14:47:34 [debug] 454276#454276: *1 recv: eof:0, avail:0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 free: 0000605875C2E0A0 +2025/08/19 14:47:34 [debug] 454276#454276: worker cycle +2025/08/19 14:47:34 [debug] 454276#454276: epoll timer: 65000 +2025/08/19 14:47:34 [debug] 454276#454276: epoll: fd:6 ev:2005 d:0000709450DAD1E0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 http keepalive handler +2025/08/19 14:47:34 [debug] 454276#454276: *1 malloc: 0000605875C2E0A0:1024 +2025/08/19 14:47:34 [debug] 454276#454276: *1 recv: eof:1, avail:-1 +2025/08/19 14:47:34 [debug] 454276#454276: *1 recv: fd:6 0 of 1024 +2025/08/19 14:47:34 [info] 454276#454276: *1 client 127.0.0.1 closed keepalive connection +2025/08/19 14:47:34 [debug] 454276#454276: *1 close http connection: 6 +2025/08/19 14:47:34 [debug] 454276#454276: *1 event timer del: 6: 196052136 +2025/08/19 14:47:34 [debug] 454276#454276: *1 reusable connection: 0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 free: 0000605875C2E0A0 +2025/08/19 14:47:34 [debug] 454276#454276: *1 free: 0000605875C2B840, unused: 120 +2025/08/19 14:47:34 [debug] 454276#454276: timer delta: 2 +2025/08/19 14:47:34 [debug] 454276#454276: worker cycle +2025/08/19 14:47:34 [debug] 454276#454276: epoll timer: -1 +2025/08/20 06:17:05 [notice] 454275#454275: signal 15 (SIGTERM) received from 596540, exiting +2025/08/20 06:17:05 [debug] 454275#454275: wake up, sigio 0 +2025/08/20 06:17:05 [debug] 454275#454275: child: 0 454276 e:0 t:0 d:0 r:1 j:0 +2025/08/20 06:17:05 [debug] 454275#454275: termination cycle: 50 +2025/08/20 06:17:05 [debug] 454275#454275: sigsuspend +2025/08/20 06:17:05 [debug] 454276#454276: epoll: fd:7 ev:0001 d:0000709450DAD0F8 +2025/08/20 06:17:05 [debug] 454276#454276: channel handler +2025/08/20 06:17:05 [debug] 454276#454276: channel: 32 +2025/08/20 06:17:05 [debug] 454276#454276: channel command: 4 +2025/08/20 06:17:05 [debug] 454276#454276: channel: -2 +2025/08/20 06:17:05 [debug] 454276#454276: timer delta: 55771260 +2025/08/20 06:17:05 [notice] 454276#454276: exiting +2025/08/20 06:17:05 [debug] 454276#454276: flush files +2025/08/20 06:17:05 [debug] 454276#454276: run cleanup: 0000605875C79A70 +2025/08/20 06:17:05 [debug] 454276#454276: run cleanup: 0000605875C6CA08 +2025/08/20 06:17:05 [debug] 454276#454276: cleanup resolver +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C7ADD0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C6DBD0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C4CB40 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C4BA30 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C45A00 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C44940 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C43880 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C427C0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C3A160 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C31130, unused: 0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C3B570, unused: 0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C46A10, unused: 0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C4DB50, unused: 0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C51B60, unused: 0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C55B70, unused: 0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C59B80, unused: 0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C5DB90, unused: 0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C61BA0, unused: 0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C65BB0, unused: 0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C69BC0, unused: 0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C6EDA0, unused: 0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C72DB0, unused: 0 +2025/08/20 06:17:05 [debug] 454276#454276: free: 0000605875C76DC0, unused: 4920 +2025/08/20 06:17:05 [notice] 454276#454276: exit +2025/08/20 06:17:05 [notice] 454275#454275: signal 17 (SIGCHLD) received from 454276 +2025/08/20 06:17:05 [notice] 454275#454275: worker process 454276 exited with code 0 +2025/08/20 06:17:05 [debug] 454275#454275: shmtx forced unlock +2025/08/20 06:17:05 [debug] 454275#454275: wake up, sigio 3 +2025/08/20 06:17:05 [debug] 454275#454275: reap children +2025/08/20 06:17:05 [debug] 454275#454275: child: 0 454276 e:1 t:1 d:0 r:1 j:0 +2025/08/20 06:17:05 [notice] 454275#454275: exit +2025/08/20 06:17:05 [debug] 454275#454275: close listening 0.0.0.0:9001 #5 +2025/08/20 06:17:05 [debug] 454275#454275: run cleanup: 0000605875C6CA08 +2025/08/20 06:17:05 [debug] 454275#454275: cleanup resolver +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C7ADD0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C6DBD0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C4CB40 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C4BA30 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C45A00 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C44940 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C43880 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C427C0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C3A160 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C31130, unused: 0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C3B570, unused: 0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C46A10, unused: 0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C4DB50, unused: 0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C51B60, unused: 0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C55B70, unused: 0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C59B80, unused: 0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C5DB90, unused: 0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C61BA0, unused: 0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C65BB0, unused: 0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C69BC0, unused: 0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C6EDA0, unused: 0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C72DB0, unused: 0 +2025/08/20 06:17:05 [debug] 454275#454275: free: 0000605875C76DC0, unused: 4951 +2025/08/20 06:17:08 [debug] 596582#596582: bind() 0.0.0.0:9001 #5 +2025/08/20 06:17:08 [debug] 596582#596582: counter: 000076E753418080, 1 +2025/08/20 06:17:08 [debug] 596583#596583: bind() 0.0.0.0:9001 #5 +2025/08/20 06:17:08 [notice] 596583#596583: using the "epoll" event method +2025/08/20 06:17:08 [debug] 596583#596583: counter: 00007B8241970080, 1 +2025/08/20 06:17:08 [notice] 596583#596583: nginx/1.18.0 (Ubuntu) +2025/08/20 06:17:08 [notice] 596583#596583: OS: Linux 6.12.10-76061203-generic +2025/08/20 06:17:08 [notice] 596583#596583: getrlimit(RLIMIT_NOFILE): 1048576:1048576 +2025/08/20 06:17:08 [debug] 596584#596583: write: 6, 00007FFC50BA1760, 7, 0 +2025/08/20 06:17:08 [debug] 596584#596584: setproctitle: "nginx: master process nginx -p . -c config/local-nginx.conf" +2025/08/20 06:17:08 [notice] 596584#596584: start worker processes +2025/08/20 06:17:08 [debug] 596584#596584: channel 6:7 +2025/08/20 06:17:08 [notice] 596584#596584: start worker process 596585 +2025/08/20 06:17:08 [debug] 596584#596584: sigsuspend +2025/08/20 06:17:08 [debug] 596585#596585: add cleanup: 000063BBFB3FAA80 +2025/08/20 06:17:08 [debug] 596585#596585: malloc: 000063BBFB3ADBD0:8 +2025/08/20 06:17:08 [debug] 596585#596585: notify eventfd: 9 +2025/08/20 06:17:08 [debug] 596585#596585: testing the EPOLLRDHUP flag: success +2025/08/20 06:17:08 [debug] 596585#596585: malloc: 000063BBFB3C0590:6144 +2025/08/20 06:17:08 [debug] 596585#596585: malloc: 00007B8241768010:237568 +2025/08/20 06:17:08 [debug] 596585#596585: malloc: 000063BBFB3FD6B0:98304 +2025/08/20 06:17:08 [debug] 596585#596585: malloc: 000063BBFB4156C0:98304 +2025/08/20 06:17:08 [debug] 596585#596585: epoll add event: fd:5 op:1 ev:00002001 +2025/08/20 06:17:08 [debug] 596585#596585: epoll add event: fd:7 op:1 ev:00002001 +2025/08/20 06:17:08 [debug] 596585#596585: setproctitle: "nginx: worker process" +2025/08/20 06:17:08 [debug] 596585#596585: worker cycle +2025/08/20 06:17:08 [debug] 596585#596585: epoll timer: -1 diff --git a/logs/nginx.pid b/logs/nginx.pid index ae00c19..9dc9bcf 100644 --- a/logs/nginx.pid +++ b/logs/nginx.pid @@ -1 +1 @@ -390406 +596584 diff --git a/restart-all.sh b/restart-all.sh new file mode 100755 index 0000000..56d1791 --- /dev/null +++ b/restart-all.sh @@ -0,0 +1,229 @@ +#!/bin/bash +# Restart Ginxsom Development Environment +# Combines nginx and FastCGI restart operations for debugging + +# Configuration +FCGI_BINARY="./build/ginxsom-fcgi" +SOCKET_PATH="/tmp/ginxsom-fcgi.sock" +PID_FILE="/tmp/ginxsom-fcgi.pid" +NGINX_CONFIG="config/local-nginx.conf" + +# Colors for output +RED='\033[0;31m' +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +NC='\033[0m' # No Color + +echo -e "${YELLOW}=== Ginxsom Development Environment Restart ===${NC}" +echo "Starting full restart sequence..." + +# Function to check if a process is running +check_process() { + local pid=$1 + kill -0 "$pid" 2>/dev/null +} + +# Function to wait for process to stop +wait_for_stop() { + local pid=$1 + local timeout=${2:-10} + local count=0 + + while check_process "$pid" && [ $count -lt $timeout ]; do + sleep 1 + ((count++)) + done + + if check_process "$pid"; then + echo -e "${RED}Warning: Process $pid still running after ${timeout}s${NC}" + return 1 + fi + return 0 +} + +# Step 1: Stop nginx +echo -e "\n${YELLOW}1. Stopping nginx...${NC}" +if pgrep -f "nginx.*${NGINX_CONFIG}" > /dev/null; then + echo "Found running nginx processes, stopping..." + nginx -p . -c "${NGINX_CONFIG}" -s stop 2>/dev/null + sleep 2 + + # Force kill any remaining nginx processes + NGINX_PIDS=$(pgrep -f "nginx.*${NGINX_CONFIG}") + if [ ! -z "$NGINX_PIDS" ]; then + echo "Force killing remaining nginx processes: $NGINX_PIDS" + kill -9 $NGINX_PIDS 2>/dev/null + fi + echo -e "${GREEN}nginx stopped${NC}" +else + echo "nginx not running" +fi + +# Step 2: Stop FastCGI +echo -e "\n${YELLOW}2. Stopping FastCGI application...${NC}" + +# Method 1: Stop via PID file +if [ -f "$PID_FILE" ]; then + PID=$(cat "$PID_FILE") + echo "Found PID file with process $PID" + if check_process "$PID"; then + echo "Stopping FastCGI process $PID" + kill "$PID" + if wait_for_stop "$PID" 5; then + echo -e "${GREEN}FastCGI process stopped gracefully${NC}" + else + echo "Force killing FastCGI process $PID" + kill -9 "$PID" 2>/dev/null + fi + else + echo "PID $PID not running, cleaning up PID file" + fi + rm -f "$PID_FILE" +fi + +# Method 2: Kill any remaining ginxsom-fcgi processes +FCGI_PIDS=$(pgrep -f "ginxsom-fcgi") +if [ ! -z "$FCGI_PIDS" ]; then + echo "Found additional FastCGI processes: $FCGI_PIDS" + kill $FCGI_PIDS 2>/dev/null + sleep 2 + # Force kill if still running + FCGI_PIDS=$(pgrep -f "ginxsom-fcgi") + if [ ! -z "$FCGI_PIDS" ]; then + echo "Force killing FastCGI processes: $FCGI_PIDS" + kill -9 $FCGI_PIDS 2>/dev/null + fi +fi + +# Method 3: Clean up socket +if [ -S "$SOCKET_PATH" ]; then + echo "Removing old socket: $SOCKET_PATH" + rm -f "$SOCKET_PATH" +fi + +echo -e "${GREEN}FastCGI cleanup complete${NC}" + +# Step 3: Check if binary exists and is up to date +echo -e "\n${YELLOW}3. Checking FastCGI binary...${NC}" +if [ ! -f "$FCGI_BINARY" ]; then + echo -e "${RED}Error: FastCGI binary not found at $FCGI_BINARY${NC}" + echo "Building application..." + make + if [ $? -ne 0 ]; then + echo -e "${RED}Build failed! Cannot continue.${NC}" + exit 1 + fi +else + echo "FastCGI binary found: $FCGI_BINARY" + + # Check if source is newer than binary + if [ "src/main.c" -nt "$FCGI_BINARY" ] || [ "Makefile" -nt "$FCGI_BINARY" ]; then + echo "Source files are newer than binary, rebuilding..." + make + if [ $? -ne 0 ]; then + echo -e "${RED}Build failed! Cannot continue.${NC}" + exit 1 + fi + echo -e "${GREEN}Rebuild complete${NC}" + fi +fi + +# Step 4: Start FastCGI +echo -e "\n${YELLOW}4. Starting FastCGI application...${NC}" +echo "Socket: $SOCKET_PATH" +echo "Binary: $FCGI_BINARY" + +# Check if spawn-fcgi is available +if ! command -v spawn-fcgi &> /dev/null; then + echo -e "${RED}Error: spawn-fcgi not found. Please install it:${NC}" + echo " Ubuntu/Debian: sudo apt-get install spawn-fcgi" + echo " macOS: brew install spawn-fcgi" + exit 1 +fi + +# Start FastCGI application +spawn-fcgi -s "$SOCKET_PATH" -M 666 -u "$USER" -g "$USER" -f "$FCGI_BINARY" -P "$PID_FILE" + +if [ $? -eq 0 ] && [ -f "$PID_FILE" ]; then + PID=$(cat "$PID_FILE") + echo -e "${GREEN}FastCGI application started successfully${NC}" + echo "PID: $PID" + + # Verify it's actually running + if check_process "$PID"; then + echo -e "${GREEN}Process confirmed running${NC}" + else + echo -e "${RED}Warning: Process may have crashed immediately${NC}" + exit 1 + fi +else + echo -e "${RED}Failed to start FastCGI application${NC}" + exit 1 +fi + +# Step 5: Start nginx +echo -e "\n${YELLOW}5. Starting nginx...${NC}" +if [ ! -f "$NGINX_CONFIG" ]; then + echo -e "${RED}Error: nginx config not found at $NGINX_CONFIG${NC}" + exit 1 +fi + +# Test nginx configuration first +nginx -p . -c "$NGINX_CONFIG" -t +if [ $? -ne 0 ]; then + echo -e "${RED}nginx configuration test failed!${NC}" + exit 1 +fi + +# Start nginx +nginx -p . -c "$NGINX_CONFIG" +if [ $? -eq 0 ]; then + echo -e "${GREEN}nginx started successfully${NC}" + + # Verify nginx is running + sleep 1 + if pgrep -f "nginx.*${NGINX_CONFIG}" > /dev/null; then + echo -e "${GREEN}nginx confirmed running${NC}" + else + echo -e "${RED}Warning: nginx may have crashed${NC}" + exit 1 + fi +else + echo -e "${RED}Failed to start nginx${NC}" + exit 1 +fi + +# Step 6: Final status check +echo -e "\n${YELLOW}6. Final status check...${NC}" + +# Check FastCGI +if [ -f "$PID_FILE" ]; then + PID=$(cat "$PID_FILE") + if check_process "$PID"; then + echo -e "${GREEN}✓ FastCGI running (PID: $PID)${NC}" + else + echo -e "${RED}✗ FastCGI not running${NC}" + fi +else + echo -e "${RED}✗ FastCGI PID file missing${NC}" +fi + +# Check nginx +if pgrep -f "nginx.*${NGINX_CONFIG}" > /dev/null; then + NGINX_PIDS=$(pgrep -f "nginx.*${NGINX_CONFIG}" | tr '\n' ' ') + echo -e "${GREEN}✓ nginx running (PIDs: $NGINX_PIDS)${NC}" +else + echo -e "${RED}✗ nginx not running${NC}" +fi + +# Check socket +if [ -S "$SOCKET_PATH" ]; then + echo -e "${GREEN}✓ FastCGI socket exists: $SOCKET_PATH${NC}" +else + echo -e "${RED}✗ FastCGI socket missing: $SOCKET_PATH${NC}" +fi + +echo -e "\n${GREEN}=== Restart sequence complete ===${NC}" +echo -e "${YELLOW}Server should be available at: http://localhost:9001${NC}" +echo -e "${YELLOW}To stop all processes, run: nginx -p . -c $NGINX_CONFIG -s stop && kill \$(cat $PID_FILE 2>/dev/null)${NC}" +echo -e "${YELLOW}To monitor logs, check: logs/error.log and logs/access.log${NC}" \ No newline at end of file diff --git a/src/main.c b/src/main.c index ee6d3b7..0ee416b 100644 --- a/src/main.c +++ b/src/main.c @@ -328,33 +328,39 @@ const char* extract_sha256_from_uri(const char* uri) { // Parse Authorization header and extract JSON event int parse_authorization_header(const char* auth_header, char* event_json, size_t json_size) { if (!auth_header || !event_json) { + printf("DEBUG: parse_authorization_header - invalid parameters: auth_header=%p, event_json=%p\r\n", + (void*)auth_header, (void*)event_json); return NOSTR_ERROR_INVALID_INPUT; } + printf("DEBUG: parse_authorization_header called with header: %.50s...\r\n", auth_header); + // Check for "Nostr " prefix (case-insensitive) const char* prefix = "nostr "; size_t prefix_len = strlen(prefix); if (strncasecmp(auth_header, prefix, prefix_len) != 0) { - printf("DEBUG: Authorization header missing 'Nostr ' prefix\r\n"); + printf("DEBUG: Authorization header missing 'Nostr ' prefix (found: %.10s)\r\n", auth_header); return NOSTR_ERROR_INVALID_INPUT; } // Extract base64 encoded event after "Nostr " const char* base64_event = auth_header + prefix_len; - printf("DEBUG: Base64 event from header: %.100s...\r\n", base64_event); + printf("DEBUG: Extracted base64 event (length=%zu): %.100s...\r\n", strlen(base64_event), base64_event); // Decode base64 to JSON using nostr_core_lib base64 decode unsigned char decoded_buffer[4096]; size_t decoded_len = base64_decode(base64_event, decoded_buffer); + printf("DEBUG: Base64 decode result - decoded_len=%zu\r\n", decoded_len); + if (decoded_len == 0) { - printf("DEBUG: Failed to decode base64 event\r\n"); + printf("DEBUG: Failed to decode base64 event - base64_decode returned 0\r\n"); return NOSTR_ERROR_INVALID_INPUT; } if (decoded_len >= json_size) { - printf("DEBUG: Decoded JSON too large for buffer\r\n"); + printf("DEBUG: Decoded JSON too large for buffer (decoded_len=%zu, json_size=%zu)\r\n", decoded_len, json_size); return NOSTR_ERROR_INVALID_INPUT; } @@ -362,7 +368,7 @@ int parse_authorization_header(const char* auth_header, char* event_json, size_t memcpy(event_json, decoded_buffer, decoded_len); event_json[decoded_len] = '\0'; - printf("DEBUG: Parsed authorization header, extracted JSON: %.100s...\r\n", event_json); + printf("DEBUG: Successfully decoded JSON (length=%zu): %s\r\n", decoded_len, event_json); return NOSTR_SUCCESS; } @@ -471,47 +477,791 @@ int validate_blossom_event(cJSON* event, const char* expected_hash, const char* // Main authentication function int authenticate_request(const char* auth_header, const char* method, const char* file_hash) { if (!auth_header) { - printf("DEBUG: No authorization header provided\r\n"); + printf("DEBUG: authenticate_request - No authorization header provided\r\n"); return NOSTR_ERROR_INVALID_INPUT; } - printf("DEBUG: Authenticating request - method: %s, hash: %s\r\n", + printf("DEBUG: authenticate_request ENTRY - method: %s, hash: %s\r\n", method ? method : "null", file_hash ? file_hash : "null"); // Parse authorization header char event_json[4096]; + printf("DEBUG: authenticate_request - calling parse_authorization_header\r\n"); int parse_result = parse_authorization_header(auth_header, event_json, sizeof(event_json)); if (parse_result != NOSTR_SUCCESS) { - printf("DEBUG: Authorization header parsing failed: %d\r\n", parse_result); + printf("DEBUG: authenticate_request - Authorization header parsing failed: %d\r\n", parse_result); return parse_result; } + printf("DEBUG: authenticate_request - parse_authorization_header succeeded\r\n"); // Parse JSON event + printf("DEBUG: authenticate_request - calling cJSON_Parse on: %s\r\n", event_json); cJSON* event = cJSON_Parse(event_json); if (!event) { - printf("DEBUG: Failed to parse JSON event\r\n"); + printf("DEBUG: authenticate_request - Failed to parse JSON event with cJSON_Parse\r\n"); return NOSTR_ERROR_EVENT_INVALID_CONTENT; } + printf("DEBUG: authenticate_request - cJSON_Parse succeeded, event parsed\r\n"); + + // Debug: Print event fields before validation + cJSON* id_json = cJSON_GetObjectItem(event, "id"); + cJSON* pubkey_json = cJSON_GetObjectItem(event, "pubkey"); + cJSON* sig_json = cJSON_GetObjectItem(event, "sig"); + cJSON* kind_json = cJSON_GetObjectItem(event, "kind"); + cJSON* created_at_json = cJSON_GetObjectItem(event, "created_at"); + + printf("DEBUG: authenticate_request - Event fields before validation:\r\n"); + printf("DEBUG: id: %s\r\n", id_json && cJSON_IsString(id_json) ? cJSON_GetStringValue(id_json) : "MISSING/INVALID"); + printf("DEBUG: pubkey: %s\r\n", pubkey_json && cJSON_IsString(pubkey_json) ? cJSON_GetStringValue(pubkey_json) : "MISSING/INVALID"); + printf("DEBUG: sig: %s\r\n", sig_json && cJSON_IsString(sig_json) ? cJSON_GetStringValue(sig_json) : "MISSING/INVALID"); + printf("DEBUG: kind: %d\r\n", kind_json && cJSON_IsNumber(kind_json) ? (int)cJSON_GetNumberValue(kind_json) : -999); + printf("DEBUG: created_at: %ld\r\n", created_at_json && cJSON_IsNumber(created_at_json) ? (long)cJSON_GetNumberValue(created_at_json) : -999); // Validate event structure and signature using nostr_core_lib + printf("DEBUG: authenticate_request - calling nostr_validate_event\r\n"); + + // Additional debug: Check pubkey characters before validation + if (pubkey_json && cJSON_IsString(pubkey_json)) { + const char* pubkey_str = cJSON_GetStringValue(pubkey_json); + printf("DEBUG: authenticate_request - Pre-validation pubkey analysis:\r\n"); + printf("DEBUG: Pubkey: %s\r\n", pubkey_str ? pubkey_str : "NULL"); + printf("DEBUG: Length: %zu\r\n", pubkey_str ? strlen(pubkey_str) : 0); + if (pubkey_str && strlen(pubkey_str) == 64) { + printf("DEBUG: Character analysis (first 10): "); + for (int i = 0; i < 10; i++) { + char c = pubkey_str[i]; + printf("%c(%d) ", c, (int)c); + } + printf("\r\n"); + printf("DEBUG: Character validation test: "); + int valid_chars = 1; + for (int i = 0; i < 64; i++) { + char c = pubkey_str[i]; + if (!((c >= '0' && c <= '9') || (c >= 'a' && c <= 'f'))) { + printf("INVALID at pos %d: %c(%d) ", i, c, (int)c); + valid_chars = 0; + } + } + if (valid_chars) { + printf("ALL VALID (lowercase hex)\r\n"); + } else { + printf("\r\n"); + } + } + } + int validation_result = nostr_validate_event(event); + printf("DEBUG: authenticate_request - nostr_validate_event returned: %d\r\n", validation_result); if (validation_result != NOSTR_SUCCESS) { - printf("DEBUG: Nostr event validation failed: %d (%s)\r\n", + printf("DEBUG: authenticate_request - Nostr event validation FAILED: %d (%s)\r\n", validation_result, nostr_strerror(validation_result)); + + // Additional debug: Check specific validation issues + if (pubkey_json && cJSON_IsString(pubkey_json)) { + const char* pubkey_str = cJSON_GetStringValue(pubkey_json); + printf("DEBUG: authenticate_request - Pubkey length: %zu, value: %s\r\n", + pubkey_str ? strlen(pubkey_str) : 0, pubkey_str ? pubkey_str : "NULL"); + } + cJSON_Delete(event); return validation_result; } + printf("DEBUG: authenticate_request - nostr_validate_event PASSED\r\n"); // Validate Blossom-specific requirements + printf("DEBUG: authenticate_request - calling validate_blossom_event\r\n"); int blossom_result = validate_blossom_event(event, file_hash, method); if (blossom_result != NOSTR_SUCCESS) { - printf("DEBUG: Blossom event validation failed: %d\r\n", blossom_result); + printf("DEBUG: authenticate_request - Blossom event validation failed: %d\r\n", blossom_result); cJSON_Delete(event); return blossom_result; } + printf("DEBUG: authenticate_request - validate_blossom_event PASSED\r\n"); cJSON_Delete(event); - printf("DEBUG: Authentication successful\r\n"); + printf("DEBUG: authenticate_request - Authentication successful, returning NOSTR_SUCCESS\r\n"); + return NOSTR_SUCCESS; +} + +///////////////////////////////////////////////////////////////////////////////////////// +///////////////////////////////////////////////////////////////////////////////////////// +// AUTHENTICATION RULES SYSTEM (4.1.2) +///////////////////////////////////////////////////////////////////////////////////////// +///////////////////////////////////////////////////////////////////////////////////////// + +// Authentication rule result structure +typedef struct { + int allowed; // 0 = denied, 1 = allowed + char reason[256]; // Human-readable reason + int rule_id; // Rule ID that made the decision (0 if no rule) + int priority; // Priority of the rule that matched +} auth_rule_result_t; + +// Check if authentication rules system is enabled +int auth_rules_enabled(void) { + sqlite3* db; + sqlite3_stmt* stmt; + int rc, enabled = 0; + + rc = sqlite3_open_v2(DB_PATH, &db, SQLITE_OPEN_READONLY, NULL); + if (rc) { + printf("DEBUG: Database open failed in auth_rules_enabled: %s\r\n", sqlite3_errmsg(db)); + return 0; // Disable rules if can't check database + } + + const char* sql = "SELECT value FROM server_config WHERE key = 'auth_rules_enabled'"; + rc = sqlite3_prepare_v2(db, sql, -1, &stmt, NULL); + if (rc == SQLITE_OK) { + rc = sqlite3_step(stmt); + if (rc == SQLITE_ROW) { + const char* value = (const char*)sqlite3_column_text(stmt, 0); + enabled = (value && strcmp(value, "true") == 0) ? 1 : 0; + } + sqlite3_finalize(stmt); + } + sqlite3_close(db); + + return enabled; +} + +// Check pubkey whitelist rule +int check_pubkey_whitelist(const char* pubkey, const char* operation, auth_rule_result_t* result) { + if (!pubkey || !operation || !result) { + return 0; + } + + sqlite3* db; + sqlite3_stmt* stmt; + int rc; + + rc = sqlite3_open_v2(DB_PATH, &db, SQLITE_OPEN_READONLY, NULL); + if (rc) { + return 0; + } + + const char* sql = "SELECT id, priority, description FROM auth_rules " + "WHERE rule_type = 'pubkey_whitelist' AND rule_target = ? " + "AND (operation = ? OR operation = '*') AND enabled = 1 " + "AND (expires_at IS NULL OR expires_at > strftime('%s', 'now')) " + "ORDER BY priority ASC, created_at ASC LIMIT 1"; + + rc = sqlite3_prepare_v2(db, sql, -1, &stmt, NULL); + if (rc != SQLITE_OK) { + sqlite3_close(db); + return 0; + } + + sqlite3_bind_text(stmt, 1, pubkey, -1, SQLITE_STATIC); + sqlite3_bind_text(stmt, 2, operation, -1, SQLITE_STATIC); + + rc = sqlite3_step(stmt); + if (rc == SQLITE_ROW) { + result->allowed = 1; + result->rule_id = sqlite3_column_int(stmt, 0); + result->priority = sqlite3_column_int(stmt, 1); + const char* description = (const char*)sqlite3_column_text(stmt, 2); + snprintf(result->reason, sizeof(result->reason), + "Allowed by whitelist rule: %s", description ? description : "pubkey whitelisted"); + + sqlite3_finalize(stmt); + sqlite3_close(db); + return 1; + } + + sqlite3_finalize(stmt); + sqlite3_close(db); + return 0; +} + +// Check pubkey blacklist rule +int check_pubkey_blacklist(const char* pubkey, const char* operation, auth_rule_result_t* result) { + if (!pubkey || !operation || !result) { + return 0; + } + + sqlite3* db; + sqlite3_stmt* stmt; + int rc; + + rc = sqlite3_open_v2(DB_PATH, &db, SQLITE_OPEN_READONLY, NULL); + if (rc) { + return 0; + } + + const char* sql = "SELECT id, priority, description FROM auth_rules " + "WHERE rule_type = 'pubkey_blacklist' AND rule_target = ? " + "AND (operation = ? OR operation = '*') AND enabled = 1 " + "AND (expires_at IS NULL OR expires_at > strftime('%s', 'now')) " + "ORDER BY priority ASC, created_at ASC LIMIT 1"; + + rc = sqlite3_prepare_v2(db, sql, -1, &stmt, NULL); + if (rc != SQLITE_OK) { + sqlite3_close(db); + return 0; + } + + sqlite3_bind_text(stmt, 1, pubkey, -1, SQLITE_STATIC); + sqlite3_bind_text(stmt, 2, operation, -1, SQLITE_STATIC); + + rc = sqlite3_step(stmt); + if (rc == SQLITE_ROW) { + result->allowed = 0; + result->rule_id = sqlite3_column_int(stmt, 0); + result->priority = sqlite3_column_int(stmt, 1); + const char* description = (const char*)sqlite3_column_text(stmt, 2); + snprintf(result->reason, sizeof(result->reason), + "Denied by blacklist rule: %s", description ? description : "pubkey blacklisted"); + + sqlite3_finalize(stmt); + sqlite3_close(db); + return 1; + } + + sqlite3_finalize(stmt); + sqlite3_close(db); + return 0; +} + +// Check hash blacklist rule +int check_hash_blacklist(const char* hash, const char* operation, auth_rule_result_t* result) { + if (!hash || !operation || !result) { + return 0; + } + + sqlite3* db; + sqlite3_stmt* stmt; + int rc; + + rc = sqlite3_open_v2(DB_PATH, &db, SQLITE_OPEN_READONLY, NULL); + if (rc) { + return 0; + } + + const char* sql = "SELECT id, priority, description FROM auth_rules " + "WHERE rule_type = 'hash_blacklist' AND rule_target = ? " + "AND (operation = ? OR operation = '*') AND enabled = 1 " + "AND (expires_at IS NULL OR expires_at > strftime('%s', 'now')) " + "ORDER BY priority ASC, created_at ASC LIMIT 1"; + + rc = sqlite3_prepare_v2(db, sql, -1, &stmt, NULL); + if (rc != SQLITE_OK) { + sqlite3_close(db); + return 0; + } + + sqlite3_bind_text(stmt, 1, hash, -1, SQLITE_STATIC); + sqlite3_bind_text(stmt, 2, operation, -1, SQLITE_STATIC); + + rc = sqlite3_step(stmt); + if (rc == SQLITE_ROW) { + result->allowed = 0; + result->rule_id = sqlite3_column_int(stmt, 0); + result->priority = sqlite3_column_int(stmt, 1); + const char* description = (const char*)sqlite3_column_text(stmt, 2); + snprintf(result->reason, sizeof(result->reason), + "Denied by hash blacklist rule: %s", description ? description : "hash blacklisted"); + + sqlite3_finalize(stmt); + sqlite3_close(db); + return 1; + } + + sqlite3_finalize(stmt); + sqlite3_close(db); + return 0; +} + +// Check MIME type whitelist rule +int check_mime_type_whitelist(const char* mime_type, const char* operation, auth_rule_result_t* result) { + if (!mime_type || !operation || !result) { + return 0; + } + + sqlite3* db; + sqlite3_stmt* stmt; + int rc; + + rc = sqlite3_open_v2(DB_PATH, &db, SQLITE_OPEN_READONLY, NULL); + if (rc) { + return 0; + } + + // Check for exact match or wildcard patterns (e.g., "image/*") + const char* sql = "SELECT id, priority, description FROM auth_rules " + "WHERE rule_type = 'mime_type_whitelist' " + "AND (rule_target = ? OR (rule_target LIKE '%/*' AND ? LIKE REPLACE(rule_target, '*', '%'))) " + "AND (operation = ? OR operation = '*') AND enabled = 1 " + "AND (expires_at IS NULL OR expires_at > strftime('%s', 'now')) " + "ORDER BY priority ASC, created_at ASC LIMIT 1"; + + rc = sqlite3_prepare_v2(db, sql, -1, &stmt, NULL); + if (rc != SQLITE_OK) { + sqlite3_close(db); + return 0; + } + + sqlite3_bind_text(stmt, 1, mime_type, -1, SQLITE_STATIC); + sqlite3_bind_text(stmt, 2, mime_type, -1, SQLITE_STATIC); + sqlite3_bind_text(stmt, 3, operation, -1, SQLITE_STATIC); + + rc = sqlite3_step(stmt); + if (rc == SQLITE_ROW) { + result->allowed = 1; + result->rule_id = sqlite3_column_int(stmt, 0); + result->priority = sqlite3_column_int(stmt, 1); + const char* description = (const char*)sqlite3_column_text(stmt, 2); + snprintf(result->reason, sizeof(result->reason), + "Allowed by MIME type whitelist: %s", description ? description : "MIME type whitelisted"); + + sqlite3_finalize(stmt); + sqlite3_close(db); + return 1; + } + + sqlite3_finalize(stmt); + sqlite3_close(db); + return 0; +} + +// Check MIME type blacklist rule +int check_mime_type_blacklist(const char* mime_type, const char* operation, auth_rule_result_t* result) { + if (!mime_type || !operation || !result) { + return 0; + } + + sqlite3* db; + sqlite3_stmt* stmt; + int rc; + + rc = sqlite3_open_v2(DB_PATH, &db, SQLITE_OPEN_READONLY, NULL); + if (rc) { + return 0; + } + + // Check for exact match or wildcard patterns (e.g., "application/*") + const char* sql = "SELECT id, priority, description FROM auth_rules " + "WHERE rule_type = 'mime_type_blacklist' " + "AND (rule_target = ? OR (rule_target LIKE '%/*' AND ? LIKE REPLACE(rule_target, '*', '%'))) " + "AND (operation = ? OR operation = '*') AND enabled = 1 " + "AND (expires_at IS NULL OR expires_at > strftime('%s', 'now')) " + "ORDER BY priority ASC, created_at ASC LIMIT 1"; + + rc = sqlite3_prepare_v2(db, sql, -1, &stmt, NULL); + if (rc != SQLITE_OK) { + sqlite3_close(db); + return 0; + } + + sqlite3_bind_text(stmt, 1, mime_type, -1, SQLITE_STATIC); + sqlite3_bind_text(stmt, 2, mime_type, -1, SQLITE_STATIC); + sqlite3_bind_text(stmt, 3, operation, -1, SQLITE_STATIC); + + rc = sqlite3_step(stmt); + if (rc == SQLITE_ROW) { + result->allowed = 0; + result->rule_id = sqlite3_column_int(stmt, 0); + result->priority = sqlite3_column_int(stmt, 1); + const char* description = (const char*)sqlite3_column_text(stmt, 2); + snprintf(result->reason, sizeof(result->reason), + "Denied by MIME type blacklist: %s", description ? description : "MIME type blacklisted"); + + sqlite3_finalize(stmt); + sqlite3_close(db); + return 1; + } + + sqlite3_finalize(stmt); + sqlite3_close(db); + return 0; +} + +// Check file size limit rule +int check_size_limit(long file_size, const char* pubkey, const char* operation, auth_rule_result_t* result) { + if (!result || file_size < 0) { + return 0; + } + + sqlite3* db; + sqlite3_stmt* stmt; + int rc; + + rc = sqlite3_open_v2(DB_PATH, &db, SQLITE_OPEN_READONLY, NULL); + if (rc) { + return 0; + } + + // Check for pubkey-specific or global size limits + const char* sql = "SELECT id, priority, rule_value, description FROM auth_rules " + "WHERE rule_type = 'size_limit' " + "AND (rule_target = ? OR rule_target = '*') " + "AND (operation = ? OR operation = '*') AND enabled = 1 " + "AND (expires_at IS NULL OR expires_at > strftime('%s', 'now')) " + "ORDER BY CASE WHEN rule_target = ? THEN 0 ELSE 1 END, priority ASC, created_at ASC LIMIT 1"; + + rc = sqlite3_prepare_v2(db, sql, -1, &stmt, NULL); + if (rc != SQLITE_OK) { + sqlite3_close(db); + return 0; + } + + sqlite3_bind_text(stmt, 1, pubkey ? pubkey : "*", -1, SQLITE_STATIC); + sqlite3_bind_text(stmt, 2, operation, -1, SQLITE_STATIC); + sqlite3_bind_text(stmt, 3, pubkey ? pubkey : "*", -1, SQLITE_STATIC); + + rc = sqlite3_step(stmt); + if (rc == SQLITE_ROW) { + const char* size_limit_str = (const char*)sqlite3_column_text(stmt, 2); + long size_limit = size_limit_str ? atol(size_limit_str) : 0; + + if (size_limit > 0 && file_size > size_limit) { + result->allowed = 0; + result->rule_id = sqlite3_column_int(stmt, 0); + result->priority = sqlite3_column_int(stmt, 1); + const char* description = (const char*)sqlite3_column_text(stmt, 3); + snprintf(result->reason, sizeof(result->reason), + "File size %ld exceeds limit %ld: %s", + file_size, size_limit, description ? description : "size limit exceeded"); + + sqlite3_finalize(stmt); + sqlite3_close(db); + return 1; + } + } + + sqlite3_finalize(stmt); + sqlite3_close(db); + return 0; +} + +///////////////////////////////////////////////////////////////////////////////////////// +///////////////////////////////////////////////////////////////////////////////////////// +// RULE EVALUATION ENGINE (4.1.3) +///////////////////////////////////////////////////////////////////////////////////////// +///////////////////////////////////////////////////////////////////////////////////////// + +// Cache key generation for authentication decisions +void generate_auth_cache_key(const char* pubkey, const char* operation, const char* hash, + const char* mime_type, long file_size, char* cache_key, size_t key_size) { + char temp_buffer[1024]; + snprintf(temp_buffer, sizeof(temp_buffer), "%s|%s|%s|%s|%ld", + pubkey ? pubkey : "", operation ? operation : "", + hash ? hash : "", mime_type ? mime_type : "", file_size); + + // Generate SHA-256 hash of the key components for consistent cache keys + unsigned char hash_bytes[32]; + if (nostr_sha256((unsigned char*)temp_buffer, strlen(temp_buffer), hash_bytes) == NOSTR_SUCCESS) { + nostr_bytes_to_hex(hash_bytes, 32, cache_key); + cache_key[64] = '\0'; // Ensure null termination + } else { + // Fallback if hashing fails + strncpy(cache_key, temp_buffer, key_size - 1); + cache_key[key_size - 1] = '\0'; + } +} + +// Check authentication cache for previous decisions +int check_auth_cache(const char* cache_key, auth_rule_result_t* result) { + if (!cache_key || !result) { + return 0; + } + + sqlite3* db; + sqlite3_stmt* stmt; + int rc; + + rc = sqlite3_open_v2(DB_PATH, &db, SQLITE_OPEN_READONLY, NULL); + if (rc) { + return 0; + } + + const char* sql = "SELECT allowed, rule_id, rule_reason FROM auth_cache " + "WHERE cache_key = ? AND expires_at > strftime('%s', 'now')"; + + rc = sqlite3_prepare_v2(db, sql, -1, &stmt, NULL); + if (rc != SQLITE_OK) { + sqlite3_close(db); + return 0; + } + + sqlite3_bind_text(stmt, 1, cache_key, -1, SQLITE_STATIC); + + rc = sqlite3_step(stmt); + if (rc == SQLITE_ROW) { + result->allowed = sqlite3_column_int(stmt, 0); + result->rule_id = sqlite3_column_int(stmt, 1); + result->priority = 0; // Not stored in cache + const char* reason = (const char*)sqlite3_column_text(stmt, 2); + if (reason) { + strncpy(result->reason, reason, sizeof(result->reason) - 1); + result->reason[sizeof(result->reason) - 1] = '\0'; + } + + sqlite3_finalize(stmt); + sqlite3_close(db); + printf("DEBUG: Cache hit for key: %.16s... (allowed=%d)\r\n", cache_key, result->allowed); + return 1; + } + + sqlite3_finalize(stmt); + sqlite3_close(db); + return 0; +} + +// Store authentication decision in cache +void store_auth_cache(const char* cache_key, const auth_rule_result_t* result) { + if (!cache_key || !result) { + return; + } + + sqlite3* db; + sqlite3_stmt* stmt; + int rc; + + rc = sqlite3_open_v2(DB_PATH, &db, SQLITE_OPEN_READWRITE, NULL); + if (rc) { + printf("DEBUG: Failed to open database for caching: %s\r\n", sqlite3_errmsg(db)); + return; + } + + // Get cache TTL from server config (default 5 minutes) + int cache_ttl = 300; + const char* ttl_sql = "SELECT value FROM server_config WHERE key = 'auth_cache_ttl'"; + rc = sqlite3_prepare_v2(db, ttl_sql, -1, &stmt, NULL); + if (rc == SQLITE_OK) { + rc = sqlite3_step(stmt); + if (rc == SQLITE_ROW) { + const char* ttl_value = (const char*)sqlite3_column_text(stmt, 0); + if (ttl_value) { + cache_ttl = atoi(ttl_value); + } + } + sqlite3_finalize(stmt); + } + + // Insert or replace cache entry + const char* insert_sql = "INSERT OR REPLACE INTO auth_cache " + "(cache_key, allowed, rule_id, rule_reason, expires_at) " + "VALUES (?, ?, ?, ?, strftime('%s', 'now') + ?)"; + + rc = sqlite3_prepare_v2(db, insert_sql, -1, &stmt, NULL); + if (rc == SQLITE_OK) { + sqlite3_bind_text(stmt, 1, cache_key, -1, SQLITE_STATIC); + sqlite3_bind_int(stmt, 2, result->allowed); + sqlite3_bind_int(stmt, 3, result->rule_id); + sqlite3_bind_text(stmt, 4, result->reason, -1, SQLITE_STATIC); + sqlite3_bind_int(stmt, 5, cache_ttl); + + rc = sqlite3_step(stmt); + if (rc == SQLITE_DONE) { + printf("DEBUG: Cached auth decision for key: %.16s... (TTL=%d)\r\n", cache_key, cache_ttl); + } else { + printf("DEBUG: Failed to cache auth decision: %s\r\n", sqlite3_errmsg(db)); + } + sqlite3_finalize(stmt); + } + + sqlite3_close(db); +} + +// Main rule evaluation function +int evaluate_auth_rules(const char* pubkey, const char* operation, const char* hash, + const char* mime_type, long file_size, auth_rule_result_t* result) { + if (!result) { + return 0; + } + + // Initialize result structure + memset(result, 0, sizeof(auth_rule_result_t)); + result->allowed = 1; // Default allow if no rules apply + strcpy(result->reason, "No rules matched - default allow"); + + printf("DEBUG: evaluate_auth_rules called - pubkey=%s, op=%s, hash=%s, mime=%s, size=%ld\r\n", + pubkey ? pubkey : "NULL", operation ? operation : "NULL", + hash ? hash : "NULL", mime_type ? mime_type : "NULL", file_size); + + // Check if authentication rules system is enabled + if (!auth_rules_enabled()) { + printf("DEBUG: Authentication rules system is disabled\r\n"); + strcpy(result->reason, "Authentication rules system disabled - default allow"); + return 1; + } + + // Generate cache key for this request + char cache_key[128]; + generate_auth_cache_key(pubkey, operation, hash, mime_type, file_size, cache_key, sizeof(cache_key)); + + // Check cache first for performance + if (check_auth_cache(cache_key, result)) { + printf("DEBUG: Using cached authentication decision\r\n"); + return 1; + } + + printf("DEBUG: No cache hit - evaluating rules in priority order\r\n"); + + // Evaluate rules in priority order (lower priority number = higher precedence) + auth_rule_result_t rule_result; + int highest_priority = 9999; + int rule_matched = 0; + + // 1. Check pubkey blacklist first (highest security priority) + if (pubkey && check_pubkey_blacklist(pubkey, operation, &rule_result)) { + if (rule_result.priority < highest_priority) { + *result = rule_result; + highest_priority = rule_result.priority; + rule_matched = 1; + printf("DEBUG: Pubkey blacklist rule matched (priority %d)\r\n", rule_result.priority); + } + } + + // 2. Check hash blacklist + if (hash && check_hash_blacklist(hash, operation, &rule_result)) { + if (rule_result.priority < highest_priority) { + *result = rule_result; + highest_priority = rule_result.priority; + rule_matched = 1; + printf("DEBUG: Hash blacklist rule matched (priority %d)\r\n", rule_result.priority); + } + } + + // 3. Check MIME type blacklist + if (mime_type && check_mime_type_blacklist(mime_type, operation, &rule_result)) { + if (rule_result.priority < highest_priority) { + *result = rule_result; + highest_priority = rule_result.priority; + rule_matched = 1; + printf("DEBUG: MIME type blacklist rule matched (priority %d)\r\n", rule_result.priority); + } + } + + // 4. Check file size limits + if (file_size > 0 && check_size_limit(file_size, pubkey, operation, &rule_result)) { + if (rule_result.priority < highest_priority) { + *result = rule_result; + highest_priority = rule_result.priority; + rule_matched = 1; + printf("DEBUG: Size limit rule matched (priority %d)\r\n", rule_result.priority); + } + } + + // 5. Check pubkey whitelist (only matters if not already denied) + if (pubkey && result->allowed && check_pubkey_whitelist(pubkey, operation, &rule_result)) { + if (rule_result.priority < highest_priority) { + *result = rule_result; + highest_priority = rule_result.priority; + rule_matched = 1; + printf("DEBUG: Pubkey whitelist rule matched (priority %d)\r\n", rule_result.priority); + } + } + + // 6. Check MIME type whitelist (only if not already denied) + if (mime_type && result->allowed && check_mime_type_whitelist(mime_type, operation, &rule_result)) { + if (rule_result.priority < highest_priority) { + *result = rule_result; + highest_priority = rule_result.priority; + rule_matched = 1; + printf("DEBUG: MIME type whitelist rule matched (priority %d)\r\n", rule_result.priority); + } + } + + // Special case: If we have whitelist rules but no whitelist matched, deny by default + if (result->allowed && pubkey) { + sqlite3* db; + sqlite3_stmt* stmt; + int rc; + + rc = sqlite3_open_v2(DB_PATH, &db, SQLITE_OPEN_READONLY, NULL); + if (rc == SQLITE_OK) { + // Check if any pubkey whitelist rules exist for this operation + const char* sql = "SELECT COUNT(*) FROM auth_rules " + "WHERE rule_type = 'pubkey_whitelist' AND enabled = 1 " + "AND (operation = ? OR operation = '*') " + "AND (expires_at IS NULL OR expires_at > strftime('%s', 'now'))"; + + rc = sqlite3_prepare_v2(db, sql, -1, &stmt, NULL); + if (rc == SQLITE_OK) { + sqlite3_bind_text(stmt, 1, operation, -1, SQLITE_STATIC); + rc = sqlite3_step(stmt); + if (rc == SQLITE_ROW) { + int whitelist_count = sqlite3_column_int(stmt, 0); + if (whitelist_count > 0) { + // Whitelist exists but didn't match - deny + result->allowed = 0; + result->rule_id = 0; + result->priority = 0; + snprintf(result->reason, sizeof(result->reason), + "Denied - pubkey not in whitelist (found %d whitelist rules)", whitelist_count); + rule_matched = 1; + printf("DEBUG: Denied due to whitelist policy - pubkey not whitelisted\r\n"); + } + } + sqlite3_finalize(stmt); + } + sqlite3_close(db); + } + } + + // Cache the decision for future requests + store_auth_cache(cache_key, result); + + printf("DEBUG: Rule evaluation complete - allowed=%d, rule_id=%d, reason=%s\r\n", + result->allowed, result->rule_id, result->reason); + + return rule_matched; +} + +// Enhanced authentication function that integrates rule evaluation +int authenticate_request_with_rules(const char* auth_header, const char* method, const char* file_hash, + const char* mime_type, long file_size) { + printf("DEBUG: authenticate_request_with_rules called - method: %s, file_hash: %s, mime_type: %s, file_size: %ld\r\n", + method ? method : "NULL", file_hash ? file_hash : "NULL", mime_type ? mime_type : "NULL", file_size); + + // Step 1: Basic nostr authentication (if header provided) + const char* pubkey = NULL; + static char pubkey_buffer[256]; + + if (auth_header) { + printf("DEBUG: Authorization header provided, starting basic nostr authentication\r\n"); + // Parse and validate nostr event first + int auth_result = authenticate_request(auth_header, method, file_hash); + if (auth_result != NOSTR_SUCCESS) { + printf("DEBUG: Basic nostr authentication failed: %d (%s)\r\n", auth_result, nostr_strerror(auth_result)); + return auth_result; + } + printf("DEBUG: Basic nostr authentication PASSED\r\n"); + + // Extract pubkey from validated event + char event_json[4096]; + int parse_result = parse_authorization_header(auth_header, event_json, sizeof(event_json)); + if (parse_result == NOSTR_SUCCESS) { + cJSON* event = cJSON_Parse(event_json); + if (event) { + cJSON* pubkey_json = cJSON_GetObjectItem(event, "pubkey"); + if (pubkey_json && cJSON_IsString(pubkey_json)) { + const char* temp_pubkey = cJSON_GetStringValue(pubkey_json); + if (temp_pubkey) { + strncpy(pubkey_buffer, temp_pubkey, sizeof(pubkey_buffer)-1); + pubkey_buffer[sizeof(pubkey_buffer)-1] = '\0'; + pubkey = pubkey_buffer; + } + } + cJSON_Delete(event); + } + } + printf("DEBUG: Extracted pubkey from auth: %s\r\n", pubkey ? pubkey : "NULL"); + } else { + printf("DEBUG: No authorization header - evaluating rules for anonymous request\r\n"); + } + + // Step 2: Evaluate authentication rules + auth_rule_result_t rule_result; + int rule_evaluated = evaluate_auth_rules(pubkey, method, file_hash, mime_type, file_size, &rule_result); + + if (rule_evaluated && !rule_result.allowed) { + printf("DEBUG: Request denied by authentication rules: %s\r\n", rule_result.reason); + return NOSTR_ERROR_INVALID_INPUT; // Authentication denied by rules + } + + printf("DEBUG: Request allowed - nostr auth + rules passed\r\n"); return NOSTR_SUCCESS; } @@ -603,7 +1353,7 @@ void handle_list_request(const char* pubkey) { if (auth_header) { printf("DEBUG: Authorization header provided for list request\r\n"); - int auth_result = authenticate_request(auth_header, "list", NULL); + int auth_result = authenticate_request_with_rules(auth_header, "list", NULL, NULL, 0); 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"); @@ -731,6 +1481,216 @@ void handle_list_request(const char* pubkey) { log_request("GET", "/list", auth_status, 200); } +// Handle DELETE / requests +void handle_delete_request(const char* sha256) { + printf("DEBUG: handle_delete_request called with sha256=%s\r\n", sha256 ? sha256 : "NULL"); + + // Log the incoming request + log_request("DELETE", "/delete", "pending", 0); + + // Validate SHA-256 format (64 hex characters) + if (!sha256 || strlen(sha256) != 64) { + send_error_response(400, "invalid_hash", "Invalid SHA-256 hash format", "Hash must be 64 hex characters"); + log_request("DELETE", "/delete", "none", 400); + return; + } + + // Validate hex characters + for (int i = 0; i < 64; i++) { + char c = sha256[i]; + if (!((c >= '0' && c <= '9') || (c >= 'a' && c <= 'f') || (c >= 'A' && c <= 'F'))) { + send_error_response(400, "invalid_hash", "Invalid SHA-256 hash format", "Hash must contain only hex characters"); + log_request("DELETE", "/delete", "none", 400); + return; + } + } + + // Require authorization for delete operations + const char* auth_header = getenv("HTTP_AUTHORIZATION"); + if (!auth_header) { + send_error_response(401, "authorization_required", "Authorization required for delete operations", + "Delete operations require a valid Nostr authorization event"); + log_request("DELETE", "/delete", "missing_auth", 401); + return; + } + + // Authenticate the request with enhanced rules system + int auth_result = authenticate_request_with_rules(auth_header, "delete", sha256, NULL, 0); + 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("DELETE", "/delete", "failed", 401); + return; + } + + // Extract pubkey from authorization for ownership check + char event_json[4096]; + int parse_result = parse_authorization_header(auth_header, event_json, sizeof(event_json)); + if (parse_result != NOSTR_SUCCESS) { + send_error_response(401, "authentication_failed", "Failed to parse authorization", + "The provided authorization could not be parsed"); + log_request("DELETE", "/delete", "parse_failed", 401); + return; + } + + cJSON* event = cJSON_Parse(event_json); + if (!event) { + send_error_response(401, "authentication_failed", "Invalid JSON in authorization", + "The provided authorization contains invalid JSON"); + log_request("DELETE", "/delete", "invalid_json", 401); + return; + } + + cJSON* pubkey_json = cJSON_GetObjectItem(event, "pubkey"); + if (!pubkey_json || !cJSON_IsString(pubkey_json)) { + cJSON_Delete(event); + send_error_response(401, "authentication_failed", "Missing pubkey in authorization", + "The provided authorization does not contain a valid pubkey"); + log_request("DELETE", "/delete", "missing_pubkey", 401); + return; + } + + const char* auth_pubkey = cJSON_GetStringValue(pubkey_json); + cJSON_Delete(event); + + // Check if blob exists in database + sqlite3* db; + sqlite3_stmt* stmt; + int rc; + + rc = sqlite3_open_v2(DB_PATH, &db, SQLITE_OPEN_READWRITE, 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("DELETE", "/delete", "authenticated", 500); + return; + } + + // Query blob metadata and check ownership + const char* sql = "SELECT uploader_pubkey, type FROM blobs WHERE sha256 = ?"; + 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("DELETE", "/delete", "authenticated", 500); + return; + } + + sqlite3_bind_text(stmt, 1, sha256, -1, SQLITE_STATIC); + + rc = sqlite3_step(stmt); + if (rc != SQLITE_ROW) { + sqlite3_finalize(stmt); + sqlite3_close(db); + send_error_response(404, "blob_not_found", "Blob not found", "The specified blob does not exist"); + log_request("DELETE", "/delete", "authenticated", 404); + return; + } + + // Get blob metadata + const char* uploader_pubkey = (const char*)sqlite3_column_text(stmt, 0); + const char* blob_type = (const char*)sqlite3_column_text(stmt, 1); + + // Create copies of the strings since they may be invalidated after finalize + char uploader_pubkey_copy[256] = {0}; + char blob_type_copy[128] = {0}; + + if (uploader_pubkey) { + strncpy(uploader_pubkey_copy, uploader_pubkey, sizeof(uploader_pubkey_copy) - 1); + } + if (blob_type) { + strncpy(blob_type_copy, blob_type, sizeof(blob_type_copy) - 1); + } + + sqlite3_finalize(stmt); + + // Check ownership - only the uploader can delete + if (!uploader_pubkey_copy[0] || strcmp(uploader_pubkey_copy, auth_pubkey) != 0) { + sqlite3_close(db); + send_error_response(403, "access_denied", "Access denied", "You can only delete blobs that you uploaded"); + log_request("DELETE", "/delete", "ownership_denied", 403); + return; + } + + printf("DEBUG: Ownership check passed, proceeding with deletion\r\n"); + + // Delete from database first + const char* delete_sql = "DELETE FROM blobs WHERE sha256 = ?"; + rc = sqlite3_prepare_v2(db, delete_sql, -1, &stmt, NULL); + if (rc != SQLITE_OK) { + printf("DEBUG: Delete SQL prepare failed: %s\r\n", sqlite3_errmsg(db)); + sqlite3_close(db); + send_error_response(500, "database_error", "Failed to prepare delete", "Internal server error"); + log_request("DELETE", "/delete", "authenticated", 500); + return; + } + + sqlite3_bind_text(stmt, 1, sha256, -1, SQLITE_STATIC); + + rc = sqlite3_step(stmt); + sqlite3_finalize(stmt); + sqlite3_close(db); + + if (rc != SQLITE_DONE) { + printf("DEBUG: Database delete failed: %d\r\n", rc); + send_error_response(500, "database_error", "Failed to delete blob metadata", "Internal server error"); + log_request("DELETE", "/delete", "authenticated", 500); + return; + } + + printf("DEBUG: Blob metadata deleted from database\r\n"); + + // Determine file extension from MIME type and delete physical file + const char* extension = ""; + if (strstr(blob_type_copy, "image/jpeg")) { + extension = ".jpg"; + } else if (strstr(blob_type_copy, "image/webp")) { + extension = ".webp"; + } else if (strstr(blob_type_copy, "image/png")) { + extension = ".png"; + } else if (strstr(blob_type_copy, "image/gif")) { + extension = ".gif"; + } else if (strstr(blob_type_copy, "video/mp4")) { + extension = ".mp4"; + } else if (strstr(blob_type_copy, "video/webm")) { + extension = ".webm"; + } else if (strstr(blob_type_copy, "audio/mpeg")) { + extension = ".mp3"; + } else if (strstr(blob_type_copy, "audio/ogg")) { + extension = ".ogg"; + } else if (strstr(blob_type_copy, "text/plain")) { + extension = ".txt"; + } else { + extension = ".bin"; + } + + char filepath[MAX_PATH_LEN]; + snprintf(filepath, sizeof(filepath), "blobs/%s%s", sha256, extension); + + printf("DEBUG: Attempting to delete file: %s\r\n", filepath); + + if (unlink(filepath) != 0) { + printf("DEBUG: Failed to delete physical file: %s\r\n", filepath); + // File deletion failed, but database is already updated + // Log warning but don't fail the request + printf("WARNING: Physical file deletion failed, but metadata was removed\r\n"); + } else { + printf("DEBUG: Physical file deleted successfully\r\n"); + } + + // Return success response + printf("Status: 200 OK\r\n"); + printf("Content-Type: application/json\r\n\r\n"); + printf("{\n"); + printf(" \"message\": \"Blob deleted successfully\",\n"); + printf(" \"sha256\": \"%s\"\n", sha256); + printf("}\n"); + + printf("DEBUG: Delete operation completed successfully\r\n"); + log_request("DELETE", "/delete", "authenticated", 200); +} + // Handle PUT /upload requests void handle_upload_request(void) { printf("DEBUG: handle_upload_request called\r\n"); @@ -769,40 +1729,11 @@ 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"); - // For authenticated uploads, validate the authorization + // Store uploader pubkey for metadata (will be extracted during auth if provided) const char* uploader_pubkey = NULL; if (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; - } - - // Extract pubkey for metadata storage - char event_json[4096]; - int parse_result = parse_authorization_header(auth_header, event_json, sizeof(event_json)); - if (parse_result == NOSTR_SUCCESS) { - cJSON* event = cJSON_Parse(event_json); - if (event) { - cJSON* pubkey_json = cJSON_GetObjectItem(event, "pubkey"); - if (pubkey_json && cJSON_IsString(pubkey_json)) { - const char* temp_pubkey = cJSON_GetStringValue(pubkey_json); - 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; - } - } - cJSON_Delete(event); - } - } - log_request("PUT", "/upload", "authenticated", 0); + log_request("PUT", "/upload", "auth_provided", 0); } else { - // No authentication provided - allow anonymous uploads log_request("PUT", "/upload", "anonymous", 0); } @@ -842,18 +1773,43 @@ 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 + // TEMPORARY FIX: Bypass rules system and use simple authentication + int auth_result = NOSTR_SUCCESS; if (auth_header) { - int auth_result = authenticate_request(auth_header, "PUT", sha256_hex); + auth_result = authenticate_request(auth_header, "upload", 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); + send_error_response(401, "authentication_failed", "Authentication failed", + "The request failed basic nostr authentication"); + log_request("PUT", "/upload", "auth_failed", 401); return; } } + // Extract uploader pubkey from authorization if provided + if (auth_header) { + char event_json[4096]; + int parse_result = parse_authorization_header(auth_header, event_json, sizeof(event_json)); + if (parse_result == NOSTR_SUCCESS) { + cJSON* event = cJSON_Parse(event_json); + if (event) { + cJSON* pubkey_json = cJSON_GetObjectItem(event, "pubkey"); + if (pubkey_json && cJSON_IsString(pubkey_json)) { + static char pubkey_buffer[256]; + const char* temp_pubkey = cJSON_GetStringValue(pubkey_json); + if (temp_pubkey) { + strncpy(pubkey_buffer, temp_pubkey, sizeof(pubkey_buffer)-1); + pubkey_buffer[sizeof(pubkey_buffer)-1] = '\0'; + uploader_pubkey = pubkey_buffer; + } + } + cJSON_Delete(event); + } + } + } + + printf("DEBUG: Authentication passed, uploader_pubkey: %s\r\n", uploader_pubkey ? uploader_pubkey : "anonymous"); + // Determine file extension from Content-Type const char* extension = ""; if (strstr(content_type, "image/jpeg")) { @@ -1060,6 +2016,16 @@ int main(void) { send_error_response(400, "invalid_pubkey", "Invalid pubkey format", "Pubkey must be 64 hex characters"); log_request("GET", request_uri, "none", 400); } + } else if (strcmp(request_method, "DELETE") == 0) { + // Handle DELETE / requests + const char* sha256 = extract_sha256_from_uri(request_uri); + printf("DEBUG: DELETE request - extracted SHA256=%s\r\n", sha256 ? sha256 : "NULL"); + if (sha256) { + handle_delete_request(sha256); + } else { + send_error_response(400, "invalid_hash", "Invalid SHA-256 hash in URI", "URI must contain a valid 64-character hex hash"); + log_request("DELETE", request_uri, "none", 400); + } } else { // Other methods not implemented yet printf("Status: 501 Not Implemented\r\n");