Why is my link not working

Hi

I wrote a simple app to help our choir members learn their lines. It works fine on every device I’ve tried it on from home and in my office, but none of the members can open it.

https://obatics.ie:51001/?soprano

It launches the browser for them, but goes no where. They have Mac, android, iphones and iPads.

I must be doing something simple wrong. Does anyone have any ideas?

Thanks for any help

When I try it, I’m getting a timeout, as if the server is not even acknowledging the connection attempt.

curl -vvvv https://obatics.ie:51001/?soprano
* Trying 46.22.139.144:51001...
* connect to 46.22.139.144 port 51001 failed: Operation timed out
* Failed to connect to obatics.ie port 51001 after 75010 ms: Couldn't connect to server
* Closing connection 0
curl: (28) Failed to connect to obatics.ie port 51001 after 75010 ms: Couldn't connect to server

Are your home and office connected by a VPN? If so, then you probably have port 51001 available inside your LAN, but your router is not exposing it to the WAN. Set up port forwarding on the router and it should work.

I would recommend setting up a reverse proxy and using the standard web ports of 80 and 443 to maximize availability.

My app Lifeboat can make setting up a server to host your regular website and Xojo Web apps very easy.

1 Like

A few more ideas:

  • remember that Xojo Web uses different port #s for debug vs. release builds
  • if you are running HTTPS, you need to use a certificate for the Xojo app. Are you?
  • double-check the protocol (HTTP vs. HTTPS) and port number - could it be a simple typo?
  • from your cellphone, turn off WiFi and test again - this will use the cellular network and ensure that you are connecting from outside your home/office network, which should be more like what the other people are seeing.
2 Likes

port scan show port 80,443,3306 (MySQL) is open

be sure the app runs
it is accessible local
i really use secure protocol
your port of choice is open/forward from outside to the pc where your app run.

i never had a issue to access a xojo web app direct from outside via my avm fritz.box router.
i run this xojo web apps as service in windows enviroment.

Thanks very much lads for the quick replies.

Mike D, I’m home / office WITHOUT VPN, the https is correct (as I’ve sent it as a link in an email, which works for me) and I have the certs set up for the Xojo app.

I just tried with WIFI off and it doesn’t work, so good suggestion for me to at least fault find.

Tim, I’d much prefer to run from a port other than 80 and 443, otherwise I would need to have a different server for every web utility I want to run. Do you think that is the only safest way? If I was to use Lifeboat would that help me run from other ports?

Thanks again

That doesn’t mean anything. On your local network, your router resolves computer names for you but external users don’t have that available to them. Without VPN access or an external dns service pointing at your router’s public address and then the router forwarding those requests to the app, your users are going nowhere.

Perhaps I misunderstand - are “home” and “office” the same network, e.g. “Home Office” or are these different locations? If it’s the same network, then the problem is most likely your router / firewall is not set up for port fowarding.

If home and office are separate networks, that’s more of a mystery (but a connecting VPN would explain it)

Re: ports, since this seems like more of a hobby app, running it from a non-standard port is probably fine.

When running a more professional app, SSL (HTTPS) over non-standard ports can cause trouble, as some overly-cautious firewalls / antivirus apps may block it, but this usually happens when the user is behind a very strict corporate firewall.

This is what a reverse proxy is for, you can host all of your web apps and websites on the same server.

Yes. There are also a number of benefits to having another piece of software handle the SSL.

Lifeboat makes the setup of a Linux server easy. You don’t have to worry about the ports, Lifeboat will handle assigning the internal ones. Visitors access your websites and apps like any other site.

You can of course set up a reverse proxy without Lifeboat. You could also choose to use Xojo Cloud. You could also open up port 51001 on your home network. For a publicly facing website and web app, I would use a server in the cloud though.

Thanks again lads. The office and home are different networks and the server where the app resides is with my internet provider (centos 7)

Tim, i need to do a course on networking I think! I don’t understand proxies, let alone reverse proxies. I would need to run lifeboat on the centos server I presume?

Lifeboat is a Desktop application that runs on Mac and Windows. Lifeboat runs on your local machine, connects to a remote Linux server, and does the configuration magic.

Lifeboat supports CentOS 7, but I don’t recommend trying to use Lifeboat with a VPS that’s already been configured to do anything. Pre-configured stacks (one-click install type things) can cause conflicts.

The demo of Lifeboat will let you configure one normal website and one web app without a license, so you should be able to get the configuration in this thread working even with the demo.

There’s a quick-start video on the website and I’m here to answer any questions. Hopefully we can get a solution working for you :slight_smile:

you mean you hired a virtual private server in cloud.
usually they provide a web tool to customize opening ports.

Yes, I’m the cloud you may be right about the port and I think I’ve just twigged what my problem is, thanks MarcusR! My work and home networks have full access to my server but everything else is firewalled.

That’s should sort it

Thanks everyone for helping me figure it out :slight_smile:

wiki mention also a port range

System Ports
0 - 1023

User Ports
1024 - 49151

Dynamic Ports
49152 - 65535

Thanks Markus - I use the Dynamic Ports 49152 - 65535.

All sorted now - It ended up bring my firewall alright