417 expectation failed on existing client that was moved

Asked by andyb2000

I setup the Xibo server originally remote to the client, so the clients url was along the lines of:
http://myhost.webhop.org/xibo
So it connected over the public internet, that worked great, registered, screens updated, etc.
So I moved the screen to the internal network, initially I forgot to change the url on it, but it was using cached data so I didn't notice. Now I need to do updates, so went onto the client, changed the settings to
http://192.168.1.2/xibo
Saved then went to register display, it fails with "417 expectation failed"
Yet I can see it POST'ing back to the server according to Apache:
1272967703.307 367 127.0.0.1 TCP_MISS/417 1990 POST http://192.168.1.2/xibo/xmds.php - NONE/- text/html

But its not updating and it keeps giving the 417 error when I try to register it. I've checked the keys, etc. Tried to delete the display (can't) so I revoked then re-applied the license and still the same error.
How can I get this machine to re-register and start to update again please? Is there an entry in the MySQL db I can remove and re-add as though it was a new display to force it back to life?

Thanks!

Andy

xibo-server-1.0.6.tar.gz
xibo-client-1.0.7-win32-x86.msi
Server version: Apache/2.2.12 (Ubuntu)
Server built: Mar 9 2010 21:20:44
PHP Version 5.2.10-2ubuntu6.4

Question information

Language:
English Edit question
Status:
Solved
For:
Xibo Edit question
Assignee:
No assignee Edit question
Solved by:
Alex Harrington
Solved:
Last query:
Last reply:
Revision history for this message
Alex Harrington (alexharrington) said :
#1

Is there a proxy server in the mix?

Revision history for this message
andyb2000 (andy-thebmwz3) said :
#2

Ah interesting, there is a transparent proxy running which is doing a 'hidden' divert to push things through a squid proxy.
Should I try forcing the proxy settings into the xibo client?

(That hadn't occurred to me!)

Revision history for this message
Alex Harrington (alexharrington) said :
#3

You can certainly try that. Ideally you wouldn't proxy at all given it's on the local LAN.

http://social.msdn.microsoft.com/Forums/en-US/devdocs/thread/60cd6e6a-4157-4811-8ed3-1e46f9022ea8

Says there is a workaround for the error with proxies - Dan, which .config file would that need to go in to?

Alex

Revision history for this message
andyb2000 (andy-thebmwz3) said :
#4

Thanks Alex,
That sheds a bit more light on it. Unfortunately I can't get around the proxy as the screen is in a highly public area with children/special needs involved so all web connections go through a transparent proxy for safety/filtering. So I tried putting the proxy into IE but still the same error, reading the msdn article this seems to be expected though so advice on how to twiddle xibo would be appreciated.

Revision history for this message
andyb2000 (andy-thebmwz3) said :
#5

Oops, tried putting that section into both the .config files I found in the Xibo client folder on the client and both the main app and the config app crashed upon loading.

Revision history for this message
Alex Harrington (alexharrington) said :
#6

It's likely one of the ones in your profile - but I'm not sure which.

It may not even be possible. If not, I think you might have to look at other options as I can't see how we can work around it otherwise.

Alex

Revision history for this message
Best Alex Harrington (alexharrington) said :
#7

Actually one quick brainwave.

You could change the port (or add an extra one) that Apache runs on, then configure the client like http://site.com:54321/xibo which will likely bypass the proxy.

Alex

Revision history for this message
andyb2000 (andy-thebmwz3) said :
#8

Great catch Alex, that works perfectly, I added in an additional port to Apache, removed the proxy config from IE and its working fine, registered and accepted straight away.

For anyone else looking, to sort Apache to listen on a different port, you edit (I'm basing this on Ubuntu/Debian so paths/locations may be slightly different):
/etc/apache2/ports.conf
Add in:
NameVirtualHost *:8090
Listen 8090

Then in your /etc/apache2/sites-enabled/000-default (or its symlink) add in a copy of the existing virtualhost but replacing the *:80 with *:8090
Restart apache and then do as Alex mentions, point to the server with :8090 as the port.

Revision history for this message
andyb2000 (andy-thebmwz3) said :
#9

Thanks Alex Harrington, that solved my question.