Changes

Jump to navigation Jump to search
60 bytes added ,  16:37, 29 January 2019
Line 65: Line 65:  
  yum --enablerepo=epel update nodejs c-ares19 http-parser libuv v8
 
  yum --enablerepo=epel update nodejs c-ares19 http-parser libuv v8
 
* NodeJS updates are released every 3 - 12 weeks; check for updates regularly.
 
* NodeJS updates are released every 3 - 12 weeks; check for updates regularly.
<headertabs/>
+
<headertabs />
      Line 100: Line 100:  
==Test==
 
==Test==
 
  node -v
 
  node -v
 +
    
== Port Redirect for each application==
 
== Port Redirect for each application==
Each application you build must run on a different port. Configure that way in app.js file.
+
 
If you don't want to put that port each time but redirect an external URL (if the app is a website hosted on your SME server) you need to:
+
{{Note box|| This is still work in progress and may not work correctly}}
 +
 
 +
Each Node application you build must run on a different port. This can be configured in app.js
 +
 
 +
If you want to redirect an external URL to the app port using a reverse proxy you can do the following
 +
 
 
a) create that external domain on SME web interface for domain as '''www.your.externaldomain.tld'''  
 
a) create that external domain on SME web interface for domain as '''www.your.externaldomain.tld'''  
    
b) create a new variable (NodePort) to specify that port  
 
b) create a new variable (NodePort) to specify that port  
  db domains setprop www.your.externadomain.tld NodePort 3003
+
  db domains setprop '''www.your.externadomain.tld''' NodePort 3003
 
  −
c) use a custom fragment template file [b]/etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts/27ProxyNodeJS[/b] with:
     −
  {
+
c) use a custom fragment template file '''/etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts/27ProxyNodeJS''' with:
 +
  <nowiki>
 +
{
 
     use esmith::DomainsDB;
 
     use esmith::DomainsDB;
 
     my $domains = esmith::DomainsDB->open_ro;
 
     my $domains = esmith::DomainsDB->open_ro;
Line 123: Line 129:  
     $OUT .= "    ProxyPass / http://localhost:$nodeport/\n" unless $nodeport eq 'disabled';
 
     $OUT .= "    ProxyPass / http://localhost:$nodeport/\n" unless $nodeport eq 'disabled';
 
     $OUT .= "    ProxyPassReverse / http://localhost:$nodeport/\n" unless $nodeport eq 'disabled';
 
     $OUT .= "    ProxyPassReverse / http://localhost:$nodeport/\n" unless $nodeport eq 'disabled';
   
  }
 
  }
 +
</nowiki>
    
Now just expand templates and restart
 
Now just expand templates and restart
Line 130: Line 136:  
  /etc/init.d/httpd-e-smith restart
 
  /etc/init.d/httpd-e-smith restart
   −
That's all. It's working. ou can access you app extrnally using '''http://www.your.externaldomain.tld'''
+
You should be able to access your app externally using '''http://www.your.externaldomain.tld'''
 +
 
 
It's possible to access using SME with one LetsEncrypt certificate by directory/port
 
It's possible to access using SME with one LetsEncrypt certificate by directory/port
    
----
 
----
 
[[Category:Howto]]
 
[[Category:Howto]]

Navigation menu