Niraj Niraj - 11 months ago 80
Node.js Question

nodejs domain without port number

I have deployed my nodejs app on a VPS(ubuntu 10.04). I have hosted it on a subdomain ( and I just have one IP address

By default port 80 is been used by apache as default. I just want that my app should run on port 3000 but URL should be (

Is this possible in nodejs or do I have to tweak my virtual host or apache's files.

Answer Source

Yes it is possible

In your apache virtual host file configure with the following

<VirtualHost *:80>

    ProxyRequests off

    <Proxy *>
            Order allow,deny
            Allow from all

    ProxyPass / http://localhost:3000/
    ProxyPassReverse / http://localhost:3000/
    ProxyPreserveHost on

You should have

NameVirtualHost *:80

on top of your file and also Proxy module installed for apache ( I think it is a default configuration for ubuntu )

LoadModule proxy_module lib/httpd/modules/

it must be in your httpd.conf file

then you should restart apache and it must be fine!