看了帖子,怎么都配不成功。
使用JFinal自身的ssl,http和https都能启动显示:
如果端口改成80和443,80端口使用域名http可以访问。443使用https打不开。
如果使用nginx,代理不管是8080还是7443,nginx的http都可以访问,nginx443的https不能访问。
server { listen 80; listen 443 ssl http2; keepalive_timeout 70; server_name abc.com; root /www/wwwroot/abc.com/abc-blog/webapp; ssl_certificate /www/wwwroot/abc.com/abc-blog/webapp/1_abc.com_bundle.crt; ssl_certificate_key /www/wwwroot/abc.com/abc-blog/webapp/2_abc.com.key; ssl_session_cache shared:SSL:10m; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; location / { proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-Nginx-Proxy true; proxy_set_header Connection ""; proxy_pass http://0.0.0.0:8080; } }
nginx的配置是根据帖子里能搜到综合的。
不知道啥原因,配置成功的大佬能不能把nginx的配置给参考参考啊。
--------------------
只用JFinal自身的,没有开启nginx,http可以,https还是打不开。
端口应该没问题,而且我特意把所有端口都打开了,还重启服务器了,
就是不知道我哪步出错了,有个提示,说jdk15.0.1下org.xnio.nio.NioXnio$2,搜到说是反射警告,是不是这里的问题?看看换成Java8行不行。
----------------------
神奇!!
我用的宝塔,之前只使用了xxx.com域名,然后申请宝塔的ssl不成功,然后申请的腾讯云的ssl,部署不成功。今天开启了www二级域名,然后申请宝塔的ssl证书,然后,然后,直接可以使用https了。
使用的方式就是nginx,JFinal只用http,nginx配置如上。宝塔自动部署不知道证书配置放在什么地方。
结贴。
-----------------
好像使用的还是腾讯云申请的证书,不过倒是https正常了,猜测是宝塔的原因吧。使用nginx配置,强制no-ww跳转到www,http强制跳转到https:
server { listen *:80; listen *:443 ssl; listen [::]:80; listen [::]:443 ssl; server_name abc.com; ssl_certificate /www/wwwroot/abc.com/abc-blog/webapp/1_abc.com_bundle.crt; ssl_certificate_key /www/wwwroot/abc.com/abc-blog/webapp/2_abc.com.key; return 301 https://www.abc.com$request_uri; } server { listen *:80; listen [::]:80; server_name www.abc.com; return 301 https://www.abc.com$request_uri; } server { listen *:443 ssl; listen [::]:443 ssl; server_name www.abc.com; ssl_certificate /www/wwwroot/abc.com/abc-blog/webapp/1_abc.com_bundle.crt; ssl_certificate_key /www/wwwroot/abc.com/abc-blog/webapp/2_abc.com.key; location / { proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-Nginx-Proxy true; proxy_set_header Connection ""; proxy_pass http://0.0.0.0:8080; } }
至此,终于配好了ssl了。