How to run glassfish 4 on port 80 instead of 8080? root access is not an issue

anandaravindan picture anandaravindan · Aug 4, 2013 · Viewed 69.4k times · Source

Did some google on it and the solution was to redirect using iptables or mod in apache? Since my application uses websockets the above solution breaks my websocket connectivity and I again have to connect to my websockets using port 8080. Is there any way that I can run the glassfish itself on port 80 so that my websockets also run on port 80 making easier for users behind corporate firewall to access the app since corparates may block 8080.

I have root access as well.

Answer

Alexandre Jacob picture Alexandre Jacob · Aug 4, 2013

To run GlassFish on port 80 you need to :

  1. Connect to the administration interface (by default on port :4848)

  2. In the left menu go to Configurations

  3. Then select the appropriate configuration you need to change eg server-config

  4. Then go to Network Config

  5. Then go to Network Listeners

  6. Select the appropriate listener, probably http-listener-1

  7. Change the Port value to 80

  8. Save and reboot your GlassFish server/instance/cluster according to your needs

Using the command line utility

asadmin set configs.config.server-config.network-config.network-listeners.network-listener.http-listener-1.port=80 

you may need to replace server-config and/or http-listener-1