WappPMS API
npm install
npm run dev
user: apivikos
pass: @p!v!k0123
Setup steps
1. Cpanel Add NodeJS app
2. Add "export PATH=/opt/cpanel/ea-nodejs10/bin/:$PATH" to .bashrc
3. Install app, pm2 etc
4. PM2 startup script
Μετά από καθοδήγηση της LiteSpeed έχω εγκαταστήσει την debug build η οποία περιέχει υποστήριξη σε ProxyPass directives, καθώς και έκανα στα:
/etc/apache2/conf.d/userdata/std/2_4/vikoswat/api.vikoswater.gr/nodejsproxy.conf
/etc/apache2/conf.d/userdata/ssl/2_4/vikoswat/api.vikoswater.gr/nodejsproxy.conf
το εξής:
ProxyPass / ws://127.0.0.1:8081/
Μετά έκανα rebuild το apache conf file και επανεκκίνηση. Παρακαλώ ελέγξτε.
Αυτό τό οποίο κάναμε είναι να βάλουμε ένα custom include στο virtualhost του api.vikoswater.gr. Οι γενικές οδηγίες αναφέρονται στο https://documentation.cpanel.net/display/EA4/Modify+Apache+Virtual+Hosts+with+Include+Files .
Βάσει των οδηγιών, πήγα στον φάκελο /usr/local/apache/conf/userdata/ssl/2_4/ . Εκεί δημιούργησα τον φάκελο vikoswat (τον χρήστη) και μέσα σε αυτόν δημιούργησα τον φάκελο api.vikoswater.gr (το domain). Εκεί έφτιαξα ένα αρχείο με όνομα nodejsproxy.conf (δεν έχει σημασία το όνομα, δεν το δίνουμε πουθενά, στην περίπτωση μας το ονόμασα έτσι ώστε να ξεχωρίζει τι είναι το αρχείο, αρκεί να έχει την κατάληξη .conf)
Μέσα στο αρχείο έβαλα τα εξής (μπείτε στο helpdesk για να πάρετε τον πλήρη κώδικα, καθώς ενδέχεται ο mail client να τον κόβει)
---ΑΡΧΗ -- ΔΕΝ ΠΕΡΙΛΑΜΒΑΝΕΤΑΙ ΣΤΟ ΑΡΧΕΙΟ -- ΤΟ ΑΦΑΙΡΕΙΤΕ ---
ProxyRequests Off
Order deny,allow
Allow from all
RewriteEngine On
RewriteCond %{HTTP:Upgrade} =websocket [NC]
RewriteRule /(.*) ws://127.0.0.1:8081/$1 [P,L]
RewriteCond %{HTTP:Upgrade} !=websocket [NC]
RewriteRule /(.*) http://127.0.0.1:8081/$1 [P,L]
# Ignore .well-known for SSL cert validation
ProxyPassMatch ^/.well-known !
# Proxy everything else to port 8081
ProxyPass / http://127.0.0.1:8081/
ProxyPassReverse / http://127.0.0.1:8081/
Order allow,deny
Allow from all
---ΤΕΛΟΣ -- ΔΕΝ ΠΕΡΙΛΑΜΒΑΝΕΤΑΙ ΣΤΟ ΑΡΧΕΙΟ -- ΤΟ ΑΦΑΙΡΕΙΤΕ ---
Μετά σύμφωνα με το wiki της cPanel έκανα rebuild το configuration file του Apache:
/usr/local/cpanel/scripts/rebuildhttpdconf
...και στο τέλος επανεκκίνηση του Apache:
/usr/local/cpanel/scripts/restartsrv_httpd
Σε περίπτωση επανεκκίνησης δεν χρειάζεται να κάνετε κάτι, καθώς οι αλλαγές είναι στο configuration του Apache και ενεργοποιούνται αυτόματα.
Ελέγξτε τις οδηγίες και ενημερώστε μας αν υπάρχει κάτι που δεν καταλάβατε. Προτείνω αν έχετε χρόνο να κάνετε και μία δοκιμή με ένα άλλο domain. Σημειώστε πως εφόσον χρησιμοποιείτε την ίδια IP θα πρέπει να βάλετε άλλη πόρτα (πχ 8082) για το επόμενο application.