ウェブサイトのnginxを設定しています。私はいくつかのサブリンクのためだけにSSIリンクユーザーのログインに設定したいと思っています.iを作成すると、sslを暗号化でき、証明書がうまくいきます。私はssl買い物客をチェックしました。私はすべてのsite.so私は80から443に店舗をリダイレクトし、ストアだけがsslを動作させたいストアのためのsslを設定したいと思います。しかし、私は をnginxに設定した後、いくつかのボタン(javascriptvoid)は動作しません。その内容が混在しているので、ビューのソースを確認すると、ボタンのURLがまだストアページのhttpであることが示されます(httpsにする必要があります)。SSLがnginx 443の設定で動作しない
私はすべてをチェックし、nginxを再設定して、tomcat側を確認してください。すべて問題ありません。
私のnginxの構成がためにここにいるあなた
nginxの構成
upstream backend_front {
ip_hash;
server tomcat_serverip:8080;
}
server {
listen 80;
server_name www.domianname.com;
charset utf-8;
access_log /var/log/nginx/80access.log main;
location/{
proxy_pass http://backend_front;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /sub/ {
if ($http_x_forwarded_proto != 'https') {
return 301 https://$server_name$request_uri;
}
proxy_pass http://backend_front;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
server {
listen 443 ssl;
server_name www.domainname.my;
ssl on;
ssl_certificate /etc/letsencrypt/live/fullch.pem;
ssl_certificate_key /etc/letsencrypt/live/privkey.pem;
ssl_session_cache shared:SSL:20m;
ssl_session_timeout 15m;
ssl_prefer_server_ciphers on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS;
charset utf-8;
access_log /var/log/nginx/443access.log main;
add_header Strict-Transport-Security "max-age=31536000";
root /data/resources/;
location /sub/ {
proxy_pass http://backend_front;
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;
}
location/{
proxy_pass http://backend_front;
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;
}
# for static files caching
location ~ .*\.(html|jsp)?$ {
proxy_pass http://backend_front;
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;
}
location ~ .*\.(gif|jpg|jpeg|bmp|png|ico|txt|js|css)$ {
root /data/resources/;
expires 20m;
} # for static files caching -- end
location ~ /favicon\.ico {
root html;
}
location ~ /\. {
deny all;
}
}
ソース表示結果((/サブ)サブの場所は、私がhttpsを仕事をしたいものです)ボタンの場合
<a href="javascript:void(0)" url="http://www.example.com/store/account.htm" onclick="tiaozhuan(this)" style="padding:0px">Manage Account</a>
<a href="javascript:void(0)" url="http://www.example.com/store/order.htm" onclick="tiaozhuan(this)" style="padding:0px">My Orders</a>
このエラーメッセージをクリックするとGEは(しかし、HTTPその作業罰金のため。)
jquery-1.8.3.min.js:2 Mixed Content: The page at 'https://www.example.com/store/account.htm' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://www.example.com/isLogin.htm'. This request has been blocked; the content must be served over HTTPS.
send @ jquery-1.8.3.min.js:2
ajax @ jquery-1.8.3.min.js:2
tiaozhuan @ account.htm:155
onclick @ account.htm:77
this.iは、私はプログラマではないよ修正するthis.iの男は最後の1週間THIに貼り付けています私を助けてくださいGoogle Chromeの要素のコンソール上に表示しますシステム管理者これについてのnginx.pleaseヘルプの新機能です。
あなたのnginx設定はどこですか? –
こんにちは、序列のオーバーフローを歓迎します。[welcome tour](https://stackoverflow.com/tour)を訪れて、ここで(あなたの最初のバッジを獲得する)あなたのやり方を知り、方法を読んでください[Minimal、Complete、Verifiable example](https://stackoverflow.com/help/mcve)を作成し、[How to Ask Good Questions](https://stackoverflow.com/help/how-to-ask)もチェックしてください。 )あなたはフィードバックと有用な答えを得る機会を増やします。 – DarkCygnus
@RobertMoskalここでは、nginxの設定コード – fatha