我有一家网上商店,商店使用3Dsecure进行信用卡付款。
当3D安全使用url example.com/confirmPage/token
导航回到我的站点时,我从Nginx获得了405 not allowed
。
如果我直接从浏览器访问该页面,则当我刷新完全相同的页面并出现405错误时,也没有问题,它加载得很好。
这似乎与从3DSecure重定向到我的网站的程序有关。
详细信息: 该站点托管在AWS ECS集群中,该集群重定向到https,因此Nginx不必这么做。 网站在带有Nginx的Docker容器中运行
我的Nginx网站配置如下:
events {
}
http {
include /etc/nginx/mime.types;
server {
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
server_name example.com *.example.com;
access_log /var/log/example/access/example.access.log;
error_log /var/log/example/error/example.error.log;
ssl_certificate /etc/ssl/certs/example.com.crt;
ssl_certificate_key /etc/ssl/private/example.com.pem;
root /usr/share/nginx/html;
index index.html;
location / {
try_files $uri $uri/ /index.html?/$request_uri;
}
}
}
这是使用docker文件复制过来的。
任何帮助将不胜感激。
答案 0 :(得分:0)
我的队友设法找到了解决办法。
location / {
error_page 405 = 200 $uri;
try_files $uri $uri/ /index.html?/$request_uri;
}