בעיות בכתובת ה-URL של אפליקציית מובייל

סיכום מבוסס בינה מלאכותית

In a support thread titled “Mobile app URL issues,” user nanohits reports that their Discourse forum (https://forum.penangexpats.com) fails to load in the iOS Discourse Hub app, despite working in browsers. They use BunnyCDN for the entire site. After initial troubleshooting, Falco identifies the issue: BunnyCDN is blocking HEAD requests, returning HTTP 403. Further investigation by BunnyCDN support reveals the origin server (Discourse) blocks requests without a specific browser User-Agent header — confirmed via curl -A chrome. Canapin shares a similar past experience with BunnyCDN and unicyclist.com, suggesting CDN configuration may be the culprit. nanohits confirms BunnyCDN’s findings and asks to compare Discourse User-Agent settings, but Canapin clarifies they’ve made no custom User-Agent configurations. pfaffman suggests the issue may stem from not properly configuring Discourse to use a CDN per official docs. Despite verifying the URL and absence of proxies, nanohits remains stuck, suspecting BunnyCDN as the root cause. The thread highlights that mobile app connectivity can break if the origin server blocks non-browser User-Agent requests — a common pitfall when using CDNs without proper origin configuration.

Hi All,

I have an issue with the iOS Mobile app for Discourse. When I enter my forum, it says not found. It works on any browser but not on the app.

The URL is https://forum.penangexpats.com.
P.S: I am running a CDN on it but the URL is already pointing and working correctly.

Any ideas?

Take a look at existing similar issues (and their potential solutions) via search. I assume you mean the “Hub” app (there is also the “whitelisted app”)

Eg this one: Cannot add certain discourse forums in DiscourseHub on Android - #13 by pmusaraj

Thanks, I have taken a look at most of that. My CDN is with Bunny and I have message them about it to see if there something been stripped at header. The only thing I can think of as I have 2 forums and the other connects just fine which is not on a CDN. And yes it is the Hub app

The CDN guys werent able to help as they said they dont strip anything in the header.

Anyone with any other ideas?

Now you mention this… I previously couldn’t add unicyclist.com to the app with the same error.

When I tried again after a few weeks, I could add the forum to the app.

I didn’t understand why it was repaired, but reading your message I remember I changed my CDN from Stackpath to Bunny.

Note that I use Bunny’s default settings. Nothing special.

So, this issue may come from a CDN configuration, I guess. Not saying this is the case for you, of course.

Your CDN is blocking head requests and that breaks lots of things:

curl -I https://forum.penangexpats.com/                                      
HTTP/2 403 
date: Mon, 22 May 2023 16:56:12 GMT
server: BunnyCDN-SG1-868

And

And that is the real problem in our world.

Thanks for that, Now I can go back to them and tell them the issue.

Are you using custom Bunny settings?

I’m curious, as I use the same CDN without any issues.

Curl
curl -I https:/unicyclist.com
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 23 May 2023 09:10:03 GMT
Content-Type: text/html; charset=utf-8
Connection: keep-alive
Vary: Accept-Encoding
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 0
X-Content-Type-Options: nosniff
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none
Referrer-Policy: strict-origin-when-cross-origin
X-Discourse-Route: categories/index
Vary: Accept
Cache-Control: no-cache, no-store
Content-Security-Policy: upgrade-insecure-requests; base-uri 'self'; object-src 'none'; script-src https://unicyclist.com/logs/ https://unicyclist.com/sidekiq/ https://unicyclist.com/mini-profiler-resources/ https://cdn.unicyclist.com/assets/ https://cdn.unicyclist.com/brotli_asset/ https://unicyclist.com/extra-locales/ https://cdn.unicyclist.com/highlight-js/ https://cdn.unicyclist.com/javascripts/ https://cdn.unicyclist.com/plugins/ https://cdn.unicyclist.com/theme-javascripts/ https://cdn.unicyclist.com/svg-sprite/ 'sha256-Gty3/aPWFfSvz7pdT39HY97/+2opLup9V0L19ZF0IwY='; worker-src 'self' https://cdn.unicyclist.com/assets/ https://cdn.unicyclist.com/brotli_asset/ https://cdn.unicyclist.com/javascripts/ https://cdn.unicyclist.com/plugins/; frame-ancestors 'self'; manifest-src 'self'
X-Request-Id: 40286528-e3e2-433d-9bf0-be971202b973
X-Runtime: 0.070801
Strict-Transport-Security: max-age=31536000

Yes I am, maybe we can compare and see what the issue is? By custom I mean I have mainly done Custom domain.

So Bunny CDN got back to me and said.

have diagnosed this further, and my original guess was correct. Your origin seems to be blocking requests that do not contain a specific browser user agent, see here:

X:~$ curl -I https://forum.penangexpats.com/ -A chrome
HTTP/2 200
date: Tue, 23 May 2023 11:36:08 GMT
content-type: text/html; charset=utf-8
vary: Accept-Encoding
server: BunnyCDN-SG1-868
cdn-pullzone: 1408974
cdn-uid: 7e2b52ab-b488-4ff1-b538-1bc4b7004d60
cdn-requestcountrycode: NL
cache-control: no-cache
x-frame-options: SAMEORIGIN
x-xss-protection: 0
x-content-type-options: nosniff
x-download-options: noopen
x-permitted-cross-domain-policies: none
referrer-policy: strict-origin-when-cross-origin
x-discourse-route: categories/index
content-security-policy-report-only: upgrade-insecure-requests; base-uri 'self'; object-src 'none'; script-src https://forum.penangexpats.com/logs/ https://forum.penangexpats.com/sidekiq/ https://forum.penangexpats.com/mini-profiler-resources/ https://forum.penangexpats.com/assets/ https://forum.penangexpats.com/brotli_asset/ https://forum.penangexpats.com/extra-locales/ https://forum.penangexpats.com/highlight-js/ https://forum.penangexpats.com/javascripts/ https://forum.penangexpats.com/plugins/ https://forum.penangexpats.com/theme-javascripts/ https://forum.penangexpats.com/svg-sprite/ https://www.googletagmanager.com/gtm.js 'nonce-af9b14e48a03b0e8bb7d66bf8be1368c' 'sha256-Gty3/aPWFfSvz7pdT39HY97/+2opLup9V0L19ZF0IwY='; worker-src 'self' https://forum.penangexpats.com/assets/ https://forum.penangexpats.com/brotli_asset/ https://forum.penangexpats.com/javascripts/ https://forum.penangexpats.com/plugins/; frame-ancestors 'self'; manifest-src 'self'
x-discourse-cached: true
x-request-id: a0b16517-ee98-43f3-a703-913f5e3850a1
x-runtime: 0.004948
x-discourse-trackview: 1
strict-transport-security: max-age=31536000
cdn-proxyver: 1.03
cdn-requestpullsuccess: True
cdn-requestpullcode: 200
cdn-cachedat: 05/23/2023 11:36:08
cdn-edgestorageid: 868
cdn-status: 200
cdn-requestid: 985151325f02414670eb77798e8e5e27
cdn-cache: MISS

X:~$ curl -I https://forum.penangexpats.com/
HTTP/2 403
date: Tue, 23 May 2023 11:36:43 GMT
server: BunnyCDN-SG1-868
cdn-pullzone: 1408974
cdn-uid: 7e2b52ab-b488-4ff1-b538-1bc4b7004d60
cdn-requestcountrycode: SI
cache-control: no-cache
x-request-id: d8519537-194f-41c0-b8a4-e5f9ba56f612
x-runtime: 0.002454
cdn-proxyver: 1.03
cdn-requestpullsuccess: True
cdn-requestpullcode: 403
cdn-cachedat: 05/23/2023 11:36:43
cdn-edgestorageid: 868
cdn-status: 403
cdn-requestid: c55661436d71de7db2b28ac5123093f7
cdn-cache: MISS

The top one succeeds when I specify a Chrome user-agent, the bottom one 403’s when there is none. This is not a configuration from Bunny, and must certainly be coming from the origin. I’d recommend checking this further on your end.

In this case, then I think answering

isn’t very valuable? :thinking:

Still, I just added another hostname and forced SSL:

Thats exactly what I did. However, from Bunny they say its the user agent issue.

Can we compare what you have set under user agents in Discourse?

Hi Nano,
Can you clarify what you mean by this?

What I mean is what do you have set under user agents in your Discourse setup?

Are you trying to use bunny to proxy your entire site, or just serve assets?

I have used Bunny for the entire site not just the images.

I’m sorry as I can’t answer you as I still don’t understand the question :slight_smile:
I know what a user agent is, and I only have very basic knowledge about CDN, and know pretty much nothing about proxying or stuff like this.

Are you referring to Discourse or Bunny’s configuration? In either case, I didn’t do anything with settings related to some user agents. My forum is a standard install with no fancy stuff, and my Bunny configuration is very standard as well.

I can show you my general configuration in Bunny:

Summary

I didn’t set any other service or configuration on Bunny.

Thanks for that. In your Discourse setup for User agents, it is it blank?
Cause Bunny’s support says the user agent is the issue in Discourse after checking.

And for some reason blocking the website from loading in the mobile app. So wierd.