我正在使用版本6.7 (圣地亚哥)操作系统访问我的应用程序,部署在8443端口。请建议我如何在本地和全球范围内访问我的应用程序,如https://localhost/AppName和NAME/AppName。
请建议在Linux框中进行哪些更改。我已经完成了对server.xml文件的以下更改
< Connector
port="8443"
protocol="HTTP/1.1"
SSLEnabled="true"
maxThreads="150"
scheme="https"
secure="true"
clientAuth="false"
sslProtocol="TLS"
keystoreFile="conf/Certificate/keystore.jks"
keystorePass="<PASSWORD>"
/>发布于 2015-11-04 18:07:54
NAME:8443/AppName,其中HOST_NAME是已发布的服务器/IP地址的DNS名称。AppName将是您访问应用程序的路径(通常是servlet映射),如web.xml中为您的应用程序定义的那样。
发布于 2015-11-04 18:01:31
您只需将tomcat侦听端口更改为443,这是标准https端口。
< Connector
port="443"
protocol="HTTP/1.1"
SSLEnabled="true"
maxThreads="150"
scheme="https"
secure="true"
clientAuth="false"
sslProtocol="TLS"
keystoreFile="conf/Certificate/keystore.jks"
keystorePass="<PASSWORD>"
/>发布于 2015-11-06 06:44:09
您可以使用nginx作为反向代理。由于您已经拥有Tomcat,所以您所要做的就是安装Nginx并配置SSL和非SSL vhost。为此,您可以删除默认的vhost文件,并在nginx的config目录中的两个不同文件中创建以下内容:
server {
listen 80 default_server;
server_name example.com www.example.com;
location /{
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8080
}
}和
server{
listen 443;
server_name example.com;
ssl_certificate /etc/nginx/cert.crt;
ssl_certificate_key /etc/nginx/cert.key;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8443;
}
}Nginx现在将代理所有请求到Tomcat。有了Nginx,您还可以利用它的缓存能力。它非常适合缓存/服务静态内容。
不要忘记将您的键添加到上述配置中指定的位置。
https://stackoverflow.com/questions/33528791
复制相似问题