如何configurationtomcat在同一个应用程序中同时使用http和https?

我明白,可以使用URL模式在HTTPS下使用某些HTTP模式处理URL。

让我们设想一个具有两个servlet的Web应用程序,每个servlet都使用不同的URL模式访问(例如… / myapp / servlet1和… / myapp / servlet2),如何才能使用HTTP处理第一个servlet,使用HTTPS ?

你能提供一个configuration例子吗?

谢谢!

这里的主要想法是,你要指定哪些页面正在使用SSL

在Tomcat中使用SSL需要3个主要步骤:

  1. 您首先需要创build一个SSL证书。 例如,您可以使用JDK提供的工具:keytool。 例如: keytool -genkey -alias tomcat -keyalg RSA -keystore keystore.ssl 。 您将被要求input密码,一旦您填写了所有需要的信息,请按回车键使用相同的密码。 移动在CATALINA_HOME下创build的文件。
  2. 然后您需要在tomcat中启用SSL连接器。 为此,在conf/server.xml ,例如: http : //fpaste.org/w3yu/ (第一部分)
  3. 您需要在应用程序中指定哪个URL需要使用SSL。 作为一个例子,让我们拿经理应用程序。 在</security-constraint>之前的WEB-INF / web.xml中添加以下内容:与上面相同的链接,但请参阅第2节。

我知道这是非常简短的,但应该给你带来什么:)

我build议你将Apache设置为反向代理,并让它处理前端。 您可以configuration两个连接到各自Tomcat后端servlet的虚拟主机(一个用于http,一个用于https)。

你可以看看这个问题的configuration示例。 你想做几乎完全一样的事情。