我正在托管一个网络应用程序亚马逊,使用ec2 实例。
在那个例子中我将运行仅一个应用程序。使用glassfish v3.0.1
我不想使用以下方式运行该应用程序:
www.mydomain.com:8080 or www.mydomain.com:8181
我只想使用:
www.mydomain.com or https://www.mydomain.com
所以我改变了http-侦听器-1和http-侦听器-2在glassfish上运行端口(分别)80和443。
这被认为是不好的做法吗?我是一名软件工程师,通常不处理服务器管理事务,因此对这些事情没有太多经验。
谢谢您的指导。
答案1
你可以这样做,但你首先会遇到性能问题,其次会遇到安全问题。
通常的做法是让“普通”高性能 Web 服务器在端口 80/443 上应答并将请求代理到您的应用服务器。与 GlassFish 相比,“普通”服务器可以更轻松地处理静态图像、JavaScript 和 CSS 等内容,从而提高性能。它还将提供多种访问控制、缓存等选项。
互联网上有很多示例配置,用于在 GlassFish、Jetty、Tomcat 或您想要使用的任何应用服务器之前设置 Web 服务器(例如 nginx 或 Apache)。根据您使用的 EC2 AMI,其中一个 Web 服务器可能已经预先配置并准备就绪。