Avoid the conflict on port 80 between nodejs and apache Avoid the conflict on port 80 between nodejs and apache express express

Avoid the conflict on port 80 between nodejs and apache


you need to create a virtual host in apache for your node app and proxy over the requests.

here is what mine looks like in /etc/apache/sites-available/dogself.com

<VirtualHost 69.164.218.75:80>    ServerName dogself.com    ServerAlias www.dogself.com    DocumentRoot /srv/www/dogself.com/public_html/    ErrorLog /srv/www/dogself.com/logs/error.log    CustomLog /srv/www/dogself.com/logs/access.log combined    ProxyRequests off    <Proxy *>        Order deny,allow        Allow from all    </Proxy>    <Location />        ProxyPass http://localhost:3000/        ProxyPassReverse http://localhost:3000/    </Location></VirtualHost>

It sounds like you have a lot to research before you can get this working though. start reading docs


Alternative approach for a virtual host would be the following

<VirtualHost *:80>    ServerAdmin info@DOMAIN.com    ServerName DOMAIN.com    ServerAlias www.DOMAIN.com    ProxyRequests off    <Proxy *>            Order deny,allow            Allow from all    </Proxy>    <Location />            ProxyPass http://localhost:3000/            ProxyPassReverse http://localhost:3000/    </Location></VirtualHost>

To fix the Internal Server ERROR just enable the right apache extension.

sudo a2enmod proxy_httpsudo service apache2 restart