Warning: funnel=on for homepi.tailyyyyy.ts.net:443, but no serve config

I cannot get Funnel to work. I followed the docs to serve a static Hello World text on port 8080 from my raspberry Pi. I have enabled https, modified the Access Policy to allow funnel and source and dest ports are *. But when I check funnel status it shows the below warning message and I cant access the funnel from public internet.

Warning: funnel=on for homepi.tailyyyyy.ts.net:443, but no serve config

tailscale serve status

# Funnel on:
#     - https://homepi.tailyyyyy.ts.net

https://homepi.tailyyyyy.ts.net:8080 (tailnet only)
|-- / text  "Hello, world!"

Access Control Policy

// Example/default ACLs for unrestricted connections.
{
	

	// Define access control lists for users, groups, autogroups, tags,
	// Tailscale IP addresses, and subnet ranges.
	"acls": [
		// Allow all connections.
		// Comment this section out if you want to define specific restrictions.
		{"action": "accept", "src": ["*"], "dst": ["*:*"]},
	],
	"nodeAttrs": [
		{
			// Funnel policy, which lets tailnet members control Funnel
			// for their own devices.
			// Lear more at https://tailscale.com/kb/1223/tailscale-funnel/
			"target": ["autogroup:members"],
			"attr":   ["funnel"],
		},
	],
}

What is the exact tailscale serve command you used to enable the serving of text?

The same as in the documentation.

tailscale serve https:8080 / text:"Hello, world!"

And was your subsequent funnel command then this one?
tailscale funnel 8080 on ?

EDIT:
Usually, HTTPS is served on port 443 and browsers assume exactly that, which is why if you enter an HTTPS URL in the browser, you don’t have to explicitly add :443 to it.
You were trying to serve HTTPS under a non-default port for it, in this case 8080 (which is usually used for HTTP).
You can do that of course, but then you will have to tell funnel to serve from that port as well, and you have to exlicitly add :8080 at the end of the URL in the browser.

So funnel with 8080 goes like this:

  1. tailscale serve https:8080 / text:"It works!"
  2. tailscale funnel 8080 on
  3. In Browser: https://yourhost.your-tailnet.ts.net:8080

With funnel with 443 it goes like this:

  1. tailscale serve https / text:"It works!"
  2. tailscale funnel 443 on
  3. In Browser: https://yourhost.your-tailnet.ts.net

I did not turn the serve on the same port that funnel was turned on (didnt know that !!) Yes with serving https on non standard ports is not ideal.

After the below commands, I could access this in browser from public internet. Thank you for your fast response and help.

tailscale serve https / text:"It works!"
tailscale funnel 443 on
tailscale serve status

# Funnel on:
#     - https://yyyy.ts.net

https://yyyy.ts.net (Funnel on)
|-- / text  "It works!"

Works on browser: https://host.yyyy.ts.net

My pleasure, glad you got it working! :saluting_face::beers: