{"action":"created","issue":{"url":"https://api.github.com/repos/ipfs/go-ipfs/issues/3209","repository_url":"https://api.github.com/repos/ipfs/go-ipfs","labels_url":"https://api.github.com/repos/ipfs/go-ipfs/issues/3209/labels{/name}","comments_url":"https://api.github.com/repos/ipfs/go-ipfs/issues/3209/comments","events_url":"https://api.github.com/repos/ipfs/go-ipfs/issues/3209/events","html_url":"https://github.com/ipfs/go-ipfs/issues/3209","id":176361180,"number":3209,"title":"Suborigin header must be lowercase","user":{"login":"hobofan","id":601283,"avatar_url":"https://avatars.githubusercontent.com/u/601283?v=3","gravatar_id":"","url":"https://api.github.com/users/hobofan","html_url":"https://github.com/hobofan","followers_url":"https://api.github.com/users/hobofan/followers","following_url":"https://api.github.com/users/hobofan/following{/other_user}","gists_url":"https://api.github.com/users/hobofan/gists{/gist_id}","starred_url":"https://api.github.com/users/hobofan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hobofan/subscriptions","organizations_url":"https://api.github.com/users/hobofan/orgs","repos_url":"https://api.github.com/users/hobofan/repos","events_url":"https://api.github.com/users/hobofan/events{/privacy}","received_events_url":"https://api.github.com/users/hobofan/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ipfs/go-ipfs/labels/backlog","name":"backlog","color":"ededed"},{"url":"https://api.github.com/repos/ipfs/go-ipfs/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/ipfs/go-ipfs/labels/gateway","name":"gateway","color":"207de5"},{"url":"https://api.github.com/repos/ipfs/go-ipfs/labels/help%20wanted","name":"help wanted","color":"159818"},{"url":"https://api.github.com/repos/ipfs/go-ipfs/labels/security","name":"security","color":"f7c6c7"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":9,"created_at":"2016-09-12T12:17:33Z","updated_at":"2016-10-27T16:40:23Z","closed_at":null,"body":"Version/Platform/Processor information (from `ipfs version --all`):\r\n\r\n```\r\ngo-ipfs version: 0.4.4-dev-0e2b4eb\r\nRepo version: 4\r\nSystem version: amd64/linux\r\nGolang version: go1.7.1\r\n```\r\n\r\nType (bug, feature, meta, test failure, question): **feature**/**bug**\r\nArea (api, commands, daemon, fuse, etc): **gateway**\r\nPriority (from P0: operations on fire, to P4: functioning): **P2**\r\n\r\nDescription:\r\n\r\nUsing Chromium (`Version 53.0.2785.101 (64-bit)`) and the current Chrome for Android version I get the error `Error with Suborigin header: Invalid character 'Q' in suborigin.` when opening any path on the gateway. It appears that this error stops any JS on the site from executing. I am testing it with a single page web app that works fine when the assets are served from a static webserver (e.g. `python -m SimpleHTTPServer`).\r\n\r\nThe request as made with curl:\r\n```\r\ncurl https://ipfs.io/ipfs/QmSA76DiRmaBGDvW2J3CQtS94tC7UdLouKV11b4QWnTG9f/ --verbose\r\n*   Trying 104.236.179.241...\r\n* TCP_NODELAY set\r\n* Connected to ipfs.io (104.236.179.241) port 443 (#0)\r\n* ALPN, offering http/1.1\r\n* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH\r\n* successfully set certificate verify locations:\r\n*   CAfile: /etc/ssl/certs/ca-certificates.crt\r\n  CApath: none\r\n* TLSv1.2 (OUT), TLS header, Certificate Status (22):\r\n* TLSv1.2 (OUT), TLS handshake, Client hello (1):\r\n* TLSv1.2 (IN), TLS handshake, Server hello (2):\r\n* NPN, negotiated HTTP1.1\r\n* TLSv1.2 (IN), TLS handshake, Certificate (11):\r\n* TLSv1.2 (IN), TLS handshake, Server key exchange (12):\r\n* TLSv1.2 (IN), TLS handshake, Server finished (14):\r\n* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):\r\n* TLSv1.2 (OUT), TLS change cipher, Client hello (1):\r\n* TLSv1.2 (OUT), TLS handshake, Unknown (67):\r\n* TLSv1.2 (OUT), TLS handshake, Finished (20):\r\n* TLSv1.2 (IN), TLS change cipher, Client hello (1):\r\n* TLSv1.2 (IN), TLS handshake, Finished (20):\r\n* SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256\r\n* ALPN, server did not agree to a protocol\r\n* Server certificate:\r\n*  subject: C=US; ST=California; L=San Francisco; O=Protocol Labs, Inc.; CN=ipfs.io\r\n*  start date: May  2 23:18:54 2016 GMT\r\n*  expire date: May  2 23:18:54 2019 GMT\r\n*  subjectAltName: host \"ipfs.io\" matched cert's \"ipfs.io\"\r\n*  issuer: C=IL; O=StartCom Ltd.; OU=StartCom Certification Authority; CN=StartCom Class 3 OV Server CA\r\n*  SSL certificate verify ok.\r\n> GET /ipfs/QmSA76DiRmaBGDvW2J3CQtS94tC7UdLouKV11b4QWnTG9f/ HTTP/1.1\r\n> Host: ipfs.io\r\n> User-Agent: curl/7.50.2\r\n> Accept: */*\r\n> \r\n< HTTP/1.1 200 OK\r\n< Date: Mon, 12 Sep 2016 12:11:21 GMT\r\n< Content-Type: text/html; charset=utf-8\r\n< Content-Length: 609\r\n< Connection: keep-alive\r\n< Accept-Ranges: bytes\r\n< Access-Control-Allow-Headers: X-Stream-Output, X-Chunked-Output\r\n< Access-Control-Allow-Methods: GET\r\n< Access-Control-Allow-Origin: *\r\n< Access-Control-Expose-Headers: X-Stream-Output, X-Chunked-Output\r\n< Cache-Control: public, max-age=29030400, immutable\r\n< Etag: QmSA76DiRmaBGDvW2J3CQtS94tC7UdLouKV11b4QWnTG9f\r\n< Last-Modified: Thu, 01 Jan 1970 00:00:01 GMT\r\n< Suborigin: QmSA76DiRmaBGDvW2J3CQtS94tC7UdLouKV11b4QWnTG9f\r\n< X-Ipfs-Path: /ipfs/QmSA76DiRmaBGDvW2J3CQtS94tC7UdLouKV11b4QWnTG9f/\r\n< Strict-Transport-Security: max-age=15768000; includeSubDomains; preload\r\n< \r\n* Curl_http_done: called premature == 0\r\n* Connection #0 to host ipfs.io left intact\r\n<!doctype html><html lang=\"en\"><head><title>React Redux Starter Kit</title><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width,initial-scale=1\"><!-- <link rel=\"stylesheet\" href=\"https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css\"> --><link rel=\"shortcut icon\" href=\"favicon.ico\"><link href=\"app.fe38df8410d0f61eaeed7f6efb62db7b.css\" rel=\"stylesheet\"></head><body><div id=\"root\" style=\"height: 100%\"></div><script type=\"text/javascript\" src=\"vendor.a61f8c39b69bacbfc7e3.js\"></script><script type=\"text/javascript\" src=\"app.459e2a80c10fe5a96640.js\"></script></body></html>%                                                                      \r\n```\r\n\r\nFrom what I can gather from https://github.com/ipfs/go-ipfs/issues/651 the suborigin header is still in a very experimental stage on both the IPFS and the browser side. Thus I would propose a config flag that disables the `Suborigin` header being sent from the gateway, so it can be turned off until it is more stabilized.\r\n\r\n---------------------------------------------------\r\nThis is for you! Please read, and then delete this text before posting it.\r\nThe go-ipfs issues are only for bug reports and directly actionable features.\r\nCheck https://github.com/ipfs/community/blob/master/contributing.md#reporting-issues if that doesn't fit.\r\nCheck https://github.com/ipfs/go-ipfs/blob/master/docs/github-issue-guide.md if you are not sure how to fill this issue.\r\n"},"comment":{"url":"https://api.github.com/repos/ipfs/go-ipfs/issues/comments/256700406","html_url":"https://github.com/ipfs/go-ipfs/issues/3209#issuecomment-256700406","issue_url":"https://api.github.com/repos/ipfs/go-ipfs/issues/3209","id":256700406,"user":{"login":"Kubuxu","id":2259282,"avatar_url":"https://avatars.githubusercontent.com/u/2259282?v=3","gravatar_id":"","url":"https://api.github.com/users/Kubuxu","html_url":"https://github.com/Kubuxu","followers_url":"https://api.github.com/users/Kubuxu/followers","following_url":"https://api.github.com/users/Kubuxu/following{/other_user}","gists_url":"https://api.github.com/users/Kubuxu/gists{/gist_id}","starred_url":"https://api.github.com/users/Kubuxu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Kubuxu/subscriptions","organizations_url":"https://api.github.com/users/Kubuxu/orgs","repos_url":"https://api.github.com/users/Kubuxu/repos","events_url":"https://api.github.com/users/Kubuxu/events{/privacy}","received_events_url":"https://api.github.com/users/Kubuxu/received_events","type":"User","site_admin":false},"created_at":"2016-10-27T16:40:23Z","updated_at":"2016-10-27T16:40:23Z","body":"The standard also allows some special values (`null`).\r\n\r\nThis means that we probably should have constant prefix so special values can't be hit by encoded hash."}}
{"actor":{"display_login":"Kubuxu"}}