micwallace / wallacepos

WallacePOS uses the power of the modern web to provide an easy to use & extensible POS system.
GNU Lesser General Public License v3.0
373 stars 378 forks source link

Update feed could not be connected #16

Closed akhilchandra closed 8 years ago

akhilchandra commented 8 years ago

Hi micwallace,

Installation went fine. Read through all issues and was able to get it working. All good, thanks...

However, when I login on POS or admin/#!realtime, the browser throws an error "Could not connect to update feed"

IN the logs, I see this request being sent

https:// www.domainname.com /socket.io/1/?t=1452453610089

Browser Console Log: Shows a status of "400: Bad Request" as response. I think its a JSON parse error( as shown in firefox browser console.

If I open the link directly in browser, in return I get "{"code":0,"message":"Transport unknown"}"

Any help appreciated ..

Regards, Akhil

micwallace commented 8 years ago

Hi Akhil,

Looks like you need to configure a domain for your app instance. Seems like you are accessing it via IP address?

Cheers, Michael

On 11 January 2016 6:32:08 am AEDT, akhilchandra notifications@github.com wrote:

Hi micwallace,

Installation went fine Read through all issues and was able to get it working All good, thanks

However, when I login on POS or admin/#!realtime, the browser throws an error "Could not connect to update feed"

IN the logs, I see this request being sent

https:///socketio/1/?t=1452453610089

Browser Console Log: Shows a status of "400: Bad Request" as response I think its a JSON parse error( as shown in firefox browser console

If I open the link directly in browser, in return I get "{"code":0,"message":"Transport unknown"}"

Any help appreciated

Regards, Akhil


Reply to this email directly or view it on GitHub: https://github.com/micwallace/wallacepos/issues/16

Sent from my Android device with K-9 Mail. Please excuse my brevity.

akhilchandra commented 8 years ago

Hi Michael,

I am accessing it via domain name, not via IP address. Is there any place to configure a domain within the POS?

Regards, Akhil

micwallace commented 8 years ago

No it's all done via apache virtual host "server name" value.

On 11 January 2016 6:46:46 pm AEDT, akhilchandra notifications@github.com wrote:

Hi Michael,

I am accessing it via domain name, not via IP address. Is there any place to configure a domain within the POS?

Regards, Akhil


Reply to this email directly or view it on GitHub: https://github.com/micwallace/wallacepos/issues/16#issuecomment-170455010

Sent from my Android device with K-9 Mail. Please excuse my brevity.

akhilchandra commented 8 years ago

Yes, the apache virtual host setting has "ServerName" set to < domain name > .. No IP's used ... Still the issue exists.

I am using nodejs version v4.2.4 and installed socket.io using " npm install socket.io "

micwallace commented 8 years ago

https:///socketio/ is a strange request. Where is the domain? Did you remove it?

Make sure the node.js feed server is running.

Can you provide your apache virtual host config and error log?

On 11 January 2016 8:23:54 pm AEDT, akhilchandra notifications@github.com wrote:

Yes, the apache virtual host setting has "ServerName" set to < domain name > .. No IP's used ... Still the issue exists.

I am using nodejs version v4.2.4 and installed socket.io using " npm install socket.io "


Reply to this email directly or view it on GitHub: https://github.com/micwallace/wallacepos/issues/16#issuecomment-170482008

Sent from my Android device with K-9 Mail. Please excuse my brevity.

akhilchandra commented 8 years ago

May be the domainname got deleted when I posted or hidden due to security. The domain name is there in the URL

Node.js feed server is running. Here is an extract from netstat tcp 0 0 127.0.0.1:8080 0.0.0.0:* LISTEN 6119/node

Apache virtual host config( I am replacing domain name with <domain name here> )

<VirtualHost *:443>
         DocumentRoot /var/www/html
         ServerName <**domain name here**>

         ErrorLog ${APACHE_LOG_DIR}/error.log
         CustomLog ${APACHE_LOG_DIR}/access.log combined

         SSLEngine on
             SSLCipherSuite !ADH:!DSS:!RC4:HIGH:+3DES:+RC4
             SSLProtocol all -SSLv2 -SSLv3
             SSLCertificateFile /etc/apache2/ssl/apache.crt
             SSLCertificateKeyFile /etc/apache2/ssl/apache.key
         #    SSLCertificateChainFile %cert_chain_location%

         <Directory /var/www/html>
            AllowOverride all
         </Directory>

         # WSPROXY CONF
         ProxyRequests Off
         ProxyPreserveHost On
         <Proxy *>
                 Order deny,allow
                 Allow from all
         </Proxy>
         ProxyPass /socket.io/1/websocket/ ws://localhost:8080/socket.io/1/websocket/
         ProxyPassReverse /socket.io/1/websocket/ ws://localhost:8080/socket.io/1/websocket
         ProxyPass /socket.io/ http://localhost:8080/socket.io/
         ProxyPassReverse /socket.io/ http://localhost:8080/socket.io/
         <Location /socket.io>
                 Order allow,deny
                 Allow from all
         </Location>
    </VirtualHost>

There is no error with the request. I see the 400 Bad Request on the access.log file, when I log in either at pos or at admin level. Again, I am replacing domain name with <domain name here>

 "GET /socket.io/1/?t=1452676377492 HTTP/1.1" 400 375 "https://<**domain name here**>/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36"
103.248.246.156 - - [13/Jan/2016:01:13:04 -0800] "GET /assets/js/jquery.scannerdetection.js HTTP/1.1" 200 1940 "https://<**domain name here**>/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36"
micwallace commented 8 years ago

What versions of apache and socket.io are you using?

Looks like the endpoint may have changed in newer versions: https://github.com/socketio/socket.io/issues/1696

Make sure you have version 0.9.17

On 13/01/16 20:21, akhilchandra wrote:

May be the domainname got deleted when I posted or hidden due to security. The domain name is there in the URL

Node.js feed server is running. Here is an extract from netstat tcp 0 0 127.0.0.1:8080 0.0.0.0:* LISTEN 6119/node

Apache virtual host config( I am replacing domain name with <domain name here> )

|<VirtualHost :443> DocumentRoot /var/www/html ServerName <domain name here> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined SSLEngine on SSLCipherSuite !ADH:!DSS:!RC4:HIGH:+3DES:+RC4 SSLProtocol all -SSLv2 -SSLv3 SSLCertificateFile /etc/apache2/ssl/apache.crt SSLCertificateKeyFile /etc/apache2/ssl/apache.key # SSLCertificateChainFile %cert_chain_location% <Directory /var/www/html> AllowOverride all # WSPROXY CONF ProxyRequests Off ProxyPreserveHost On <Proxy > Order deny,allow Allow from all ProxyPass /socket.io/1/websocket/ ws://localhost:8080/socket.io/1/websocket/ ProxyPassReverse /socket.io/1/websocket/ ws://localhost:8080/socket.io/1/websocket ProxyPass /socket.io/ http://localhost:8080/socket.io/ ProxyPassReverse /socket.io/ http://localhost:8080/socket.io/ <Location /socket.io> Order allow,deny Allow from all |

There is no error with the request. I see the 400 Bad Request on the access.log file, when I log in either at pos or at admin level. Again, I am replacing domain name with <_domain name here_>

|"GET /socket.io/1/?t=1452676377492 HTTP/1.1" 400 375 "https://<domain name here>/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36" 103.248.246.156 - - [13/Jan/2016:01:13:04 -0800] "GET /assets/js/jquery.scannerdetection.js HTTP/1.1" 200 1940 "https://<domain name here>/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36" |

— Reply to this email directly or view it on GitHub https://github.com/micwallace/wallacepos/issues/16#issuecomment-171226379.