Webhook "Stop Listening" not responding

I installed n8n on my VPS using Docker Manager in Cyberpanel.

n8n is installed and I can access n8n without any problem.

But when I add “webhook” node, it has weird behavior, I try to test the webhook by clicking “Listen for test event”, I use Postman to send the event, it has no problem for the first time, but subsequently all failed.

On n8n editor, I try to click on “Stop listening”, it just not responding, the UI is stuck there.

I think there’s something to do with the virtual host configuration. Can someone assist? Since my server is using CyperPanel, hence it’s powered by OpenLiteSpeed. The OS is Ubuntu 22.04, hosted on Google Cloud Platform.

It looks like your topic is missing some important information. Could you provide the following if applicable.

  • n8n version:
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app):
  • Operating system:

Here you go.

n8n version: 1.42.1
Database: MariaDB 10.6.16
Running n8n via: Docker
Operating system: Ubuntu 22.04

Anyone? I tried many different ways like configuration in OpenLiteSpeed via web admin UI, still cannot make it work.

Hi @KC_Shoo, thanks for reaching out! What does your payload to the webhook endpoint look like? Can you listen for the test event and run the following command from your command line?

curl -G workflow.peoplex.ai/webhook-test/b76e7d47-ec67-4d0d-b78a-51947630985d

Hi Lugwig,

Thank for your reply, I tried using curl, I’ve got the response:

{"message":"Workflow was started"}

But on on the n8n, there’s nothing happen, it just stay/stuck at “Listening for test event” screen as you can see from the screenshot below:

When I curl the second time, I got the following response, but again on n8n editor nothing has changed:

{"code":404,"message":"The requested webhook \"31c75305-1aa7-4238-af96-b42b2b6a07f4\" is not registered.","hint":"Click the 'Test workflow' button on the canvas, then try again. (In test mode, the webhook only works for one call after you click this button)"}

The webhook is reacheable from the outside of the network, it seems when the webhook is being triggered, the “backend” is the one that does not receive anything.

Just to give you some context about how I configure the OpenLiteSpeed virtual host, below is the screenshots for your reference:

Here’s my docker environment variable settings:

N8N_BASIC_AUTH_ACTIVE = TRUE
N8N_BASIC_AUTH_USER = ********** (masked)
N8N_BASIC_AUTH_PASSWORD = ************** (masked)
WEBHOOK_URL = https://workflow.peoplex.ai/
VUE_APP_URL_BASE_API = https://workflow.peoplex.ai/

Volume mapping:

/home/node/.n8n = /home/workflow.peoplex.ai/public_html/files

Hope the additional information can help. Thanks.

Thanks for that info @KC_Shoo. I will share this with my engineering team and get their thoughts on why the UI isn’t updating.

This sounds like an issue with the Websocket connection going over the reverse-proxy.
Can you please try changing the Web Socket Proxy config (the last screenshot) to use /rest/push for the URI fields (instead of /) ?

Hi Netroy,

Thanks for your reply. I have tried changing the URI for websocket, restart litespeed and try it out. Unfortunately, the problem still persist.

Clearly there’s something wrong with the reverse proxy, but I have no clue where exactly the problem is.

My current situation is, there’s no problem for outside world to communicate with my server, outside the network can receive the response from my webhook…

e.g.

{
  "message": "Workflow was started"
}

But internally, there’s no output, so I suspect there’s some problem with the setting of listening port.

Can you please try executing a workflow, while looking at the Websocket connection (url is /rest/push) in your browser devtools?
When everything is setup correctly, this is what it looks like

When I add the webhook node and start listening for the test event, I look at the devtool in my browser, this is what it shows:

On the left hand side, the websocket connection keeps adding more and more after every 2 - 3 seconds, there’s nothing in the “message” tab.

I attach the header below for your reference, did you get 101 status code too?:


Yeah. That sounds like your reverse-proxy is not proxying websocket messages, and instead regularly closing the connection instead, making n8n retry opening the connection, leading to so many requests.

Would it be possible for you to use something else like nginx or traefik, something that is more widely supported?

1 Like