-
Notifications
You must be signed in to change notification settings - Fork 381
XAMPP Windows server support
Note: XAMPP support is a work in progress and is not officially supported.
I got it to work on xampp (v5.6.19 - Windows 32-bit). This comment will be edited as and when problems are found. My path to the application is C:\xampp\htdocs\wpos. Later versions of XAMPP not tested yet, there may be an issue with MySQL 5.7 due to changes in GROUP BY as identified by https://github.com/micwallace/wallacepos/issues/40
NOTE THIS FOR LATER: Feed Server Cannot Start, a lot of linux commands will not work, but so far it is NOT a showstopper. Can still detect POS and run feeds.
a) MUST use https://localhost/ instead of https://127.0.0.1/
b) start feed server manually, open shell using xampp control panel and run the following commands:
cd htdocs\wpos\api
run command node server.js
###A. Start With Xampp Configuration (assume fresh install)...
enable mod_proxy_http & mod_proxy_wstunnel in C:\xampp\apache\conf\httpd.conf (uncomment their entries in the config file)
mod_rewrite already enabled - no action needed on this, FYI only
curl and gd modules seem to also have been enabled - no action needed on this, FYI only
extension=php_curl.dll
extension=php_gd2.dll
edit C:\xampp\apache\conf\extra\httpd-vhosts.conf, adding the text in the block below:
<VirtualHost *:443>
DocumentRoot /xampp/htdocs/wpos
ServerName 127.0.0.1
#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 /xampp/apache/conf/ssl.crt/server.crt
SSLCertificateKeyFile /xampp/apache/conf/ssl.key/server.key
<Directory /xampp/htdocs/wpos >
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>
###B. Next nodejs, yucks...
add C:\xampp to the PATH environment variable on the machine, stop apache, reboot XAMPP control program, start apache.
download node,exe and npm (and npm's node_modules folder) and place it in the folder C:\xampp\
run npm install socket.io as per instructions (the node_modules\socket.io folder created should be in C:\xampp\htdocs\wpos\api\ folder), So you should get:
C:\xampp\htdocs\wpos\api\node_modules\socket.io\
FINALLY...
###C. Run https://localhost/installer
There are a few errors, nodejs related ones are important. To check if installed properly
Find the line in the file C:\xampp\htdocs\wpos\installer\index.php
`if (!`which nodejs` && !`which node`) {`
Change it to below to ignore this check, because it is node.exe (in windows XAMPP) instead of nodejs (in linux)
`if (0 && !`which nodejs` && !`which node`) {`
Ignore write-permission errors (the other statuses must be green though) and proceed to configure the database. I forgot to note down what it was but there were 2 errors regarding read/write permissions.
rename C:\xampp\htdocs\wpos\docs-template to C:\xampp\htdocs\wpos\docs (it was not renamed as it was caused by one of the errors above)
And I manage to get it working well on XAMPP (Windows 32-bit) so far... until someone else runs into problem.