Im receiving this error when try to deploy to digital ocean as production(Please don’t ask to use gigalixir / fly as this is client requirement). However I got error and websocket isnt working. Im using apache on ubuntu 22 LTS. I already made a search online, however no luck with my issue. Any response is highly appreciated. Thanks
Here is the error
15:14:14.623 [error] Could not check origin for Phoenix.Socket transport.
Origin of the request: http://beta.website.com.my:4000
This happens when you are attempting a socket connection to
a different host than the one configured in your config/
files. For example, in development the host is configured
to "localhost" but you may be trying to access it from
"127.0.0.1". To fix this issue, you may either:
1. update [url: [host: ...]] to your actual host in the
config file for your current environment (recommended)
2. pass the :check_origin option when configuring your
endpoint or when configuring the transport in your
UserSocket module, explicitly outlining which origins
are allowed:
check_origin: ["https://example.com",
"//another.com:888", "//other.com"]
Here is my configuration file for prod.secret.exs
use Config
config :th, Th.Repo,
username: "user",
password: "password",
hostname: "localhost",
database: "th",
pool_size: 10
config :th, ThWeb.Endpoint,
server: true,
http: [port: 4000, transport_options: [socket_opts: [:inet6]]],
check_origin: [
"http://beta.website.com.my",
"http://beta.website.com.my:4000",
"https://beta.website.com.my",
"https://beta.website.com.my:4000",
"http://app.website.com.my",
"http://app.website.com.my:4000",
"https://app.website.com.my",
"https://app.website.com.my:4000"
],
secret_key_base: "SECRET",
Here is my apache configuration
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ServerName beta.website.com.my
ServerAlias beta.website.com.my
# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
LoadModule proxy_module modules/mod_proxy.so
ProxyRequests Off
ProxyPreserveHost On
#ProxyPass "/" "ws://localhost:4000/" retry=0 timeout=5
#ProxyPassReverse "/" "ws://localhost:4000/" my_app.tld
ProxyPass "/" "http://beta.website.com.my:4000/" timeout=10
ProxyPassReverse "/" "http://beta.website.com.my:4000/" http://beta.website.com.my
Anything I missing here?